diff --git a/jni/pjproject-android/.svn/pristine/83/83f4f4cc36296a3cd6de55ca6fad2184a48c4b13.svn-base b/jni/pjproject-android/.svn/pristine/83/83f4f4cc36296a3cd6de55ca6fad2184a48c4b13.svn-base
new file mode 100644
index 0000000..cd2a4b6
--- /dev/null
+++ b/jni/pjproject-android/.svn/pristine/83/83f4f4cc36296a3cd6de55ca6fad2184a48c4b13.svn-base
@@ -0,0 +1,32 @@
+// Default empty project template
+#include <bb/cascades/Application>
+
+#include <QLocale>
+#include <QTranslator>
+#include "applicationui.h"
+
+// include JS Debugger / CS Profiler enabler
+// this feature is enabled by default in the debug build only
+#include <Qt/qdeclarativedebug.h>
+
+using namespace bb::cascades;
+
+Q_DECL_EXPORT int main(int argc, char **argv)
+{
+    // this is where the server is started etc
+    Application app(argc, argv);
+
+    // localization support
+    QTranslator translator;
+    QString locale_string = QLocale().name();
+    QString filename = QString( "PjsuaBB_%1" ).arg( locale_string );
+    if (translator.load(filename, "app/native/qm")) {
+        app.installTranslator( &translator );
+    }
+
+    new ApplicationUI(&app);
+
+    // we complete the transaction started in the app constructor and start the client event loop here
+    return Application::exec();
+    // when loop is exited the Application deletes the scene which deletes all its children (per qt rules for children)
+}
