From a5461ad67c54c6b7ec7b3f0d91e626b0043aec1b Mon Sep 17 00:00:00 2001 From: Goblin911 Date: Mon, 26 Aug 2013 08:56:41 +0800 Subject: test --- client/README.rst | 1 + 1 file changed, 1 insertion(+) create mode 100644 client/README.rst diff --git a/client/README.rst b/client/README.rst new file mode 100644 index 0000000..0527e6b --- /dev/null +++ b/client/README.rst @@ -0,0 +1 @@ +This is a test -- cgit v1.2.3-70-g09d2 From 6400b18210587cb25b475bc2d3979b9a6da5eda4 Mon Sep 17 00:00:00 2001 From: Goblin911 Date: Mon, 26 Aug 2013 09:15:50 +0800 Subject: init --- client/Piztor/.classpath | 9 + client/Piztor/.project | 33 +++ client/Piztor/.settings/org.eclipse.jdt.core.prefs | 4 + client/Piztor/AndroidManifest.xml | 42 ++++ client/Piztor/ic_launcher-web.png | Bin 0 -> 130248 bytes client/Piztor/proguard-project.txt | 20 ++ client/Piztor/project.properties | 14 ++ client/Piztor/res/drawable-hdpi/ic_launcher.png | Bin 0 -> 6165 bytes client/Piztor/res/drawable-mdpi/ic_launcher.png | Bin 0 -> 3245 bytes client/Piztor/res/drawable-xhdpi/ic_launcher.png | Bin 0 -> 9545 bytes client/Piztor/res/drawable-xxhdpi/ic_launcher.png | Bin 0 -> 17793 bytes client/Piztor/res/drawable/bottom_img.png | Bin 0 -> 525331 bytes client/Piztor/res/drawable/footbar_background.png | Bin 0 -> 23943 bytes .../res/drawable/footbar_btn_checkin_style.xml | 7 + .../res/drawable/footbar_btn_fetch_style.xml | 6 + .../res/drawable/footbar_btn_focus_style.xml | 6 + .../res/drawable/footbar_btn_search_style.xml | 6 + .../res/drawable/footbar_btn_settings_style.xml | 6 + client/Piztor/res/drawable/footbar_checkin.png | Bin 0 -> 468 bytes client/Piztor/res/drawable/footbar_checkin_1.png | Bin 0 -> 3371 bytes client/Piztor/res/drawable/footbar_fetch.png | Bin 0 -> 2541 bytes client/Piztor/res/drawable/footbar_fetch_1.png | Bin 0 -> 3093 bytes client/Piztor/res/drawable/footbar_marker.png | Bin 0 -> 1866 bytes client/Piztor/res/drawable/footbar_marker_1.png | Bin 0 -> 3288 bytes client/Piztor/res/drawable/footbar_search.png | Bin 0 -> 2127 bytes client/Piztor/res/drawable/footbar_search_1.png | Bin 0 -> 3589 bytes client/Piztor/res/drawable/footbar_select_bg.png | Bin 0 -> 8919 bytes client/Piztor/res/drawable/footbar_settings.png | Bin 0 -> 1372 bytes client/Piztor/res/drawable/footbar_settings_1.png | Bin 0 -> 3442 bytes client/Piztor/res/drawable/footbar_unselect_bg.png | Bin 0 -> 165 bytes client/Piztor/res/drawable/horizontal_line.png | Bin 0 -> 796 bytes client/Piztor/res/drawable/navigation_back.png | Bin 0 -> 1324 bytes client/Piztor/res/drawable/navigation_back_1.png | Bin 0 -> 401 bytes client/Piztor/res/drawable/title_logo.png | Bin 0 -> 1031640 bytes client/Piztor/res/drawable/topbar_background.png | Bin 0 -> 23763 bytes client/Piztor/res/layout/activity_gather.xml | 23 ++ client/Piztor/res/layout/activity_init.xml | 16 ++ client/Piztor/res/layout/activity_login.xml | 92 ++++++++ client/Piztor/res/layout/activity_main.xml | 23 ++ client/Piztor/res/layout/activity_settings.xml | 149 +++++++++++++ client/Piztor/res/layout/gather_footbar.xml | 133 ++++++++++++ client/Piztor/res/layout/gather_timer.xml | 16 ++ client/Piztor/res/layout/login_bottom.xml | 13 ++ client/Piztor/res/layout/main_footbar.xml | 107 +++++++++ client/Piztor/res/layout/main_headbar.xml | 29 +++ client/Piztor/res/layout/settings_headbar.xml | 29 +++ client/Piztor/res/menu/init.xml | 9 + client/Piztor/res/menu/login.xml | 9 + client/Piztor/res/menu/main.xml | 9 + client/Piztor/res/menu/setting.xml | 9 + client/Piztor/res/values-sw600dp/dimens.xml | 8 + client/Piztor/res/values-sw720dp-land/dimens.xml | 9 + client/Piztor/res/values-v11/styles.xml | 11 + client/Piztor/res/values-v14/styles.xml | 12 + client/Piztor/res/values/dimens.xml | 7 + client/Piztor/res/values/strings.xml | 21 ++ client/Piztor/res/values/styles.xml | 20 ++ client/Piztor/src/com/macaroon/piztor/ActMgr.java | 67 ++++++ client/Piztor/src/com/macaroon/piztor/AppMgr.java | 89 ++++++++ .../Piztor/src/com/macaroon/piztor/GPSTracker.java | 241 +++++++++++++++++++++ client/Piztor/src/com/macaroon/piztor/InitAct.java | 34 +++ client/Piztor/src/com/macaroon/piztor/Login.java | 104 +++++++++ client/Piztor/src/com/macaroon/piztor/Main.java | 205 ++++++++++++++++++ .../Piztor/src/com/macaroon/piztor/PiztorAct.java | 60 +++++ .../src/com/macaroon/piztor/PiztorExcepiton.java | 10 + client/Piztor/src/com/macaroon/piztor/Req.java | 14 ++ .../src/com/macaroon/piztor/ReqLocation.java | 14 ++ .../Piztor/src/com/macaroon/piztor/ReqLogin.java | 16 ++ .../Piztor/src/com/macaroon/piztor/ReqUpdate.java | 16 ++ client/Piztor/src/com/macaroon/piztor/Res.java | 11 + .../src/com/macaroon/piztor/ResLocation.java | 18 ++ .../Piztor/src/com/macaroon/piztor/ResLogin.java | 15 ++ .../Piztor/src/com/macaroon/piztor/ResUpdate.java | 13 ++ .../Piztor/src/com/macaroon/piztor/Rlocation.java | 13 ++ .../Piztor/src/com/macaroon/piztor/Settings.java | 22 ++ .../src/com/macaroon/piztor/SocketClient.java | 107 +++++++++ client/Piztor/src/com/macaroon/piztor/Tracker.java | 68 ++++++ client/Piztor/src/com/macaroon/piztor/Transam.java | 139 ++++++++++++ .../Piztor/src/com/macaroon/piztor/UserInfo.java | 7 + 79 files changed, 2190 insertions(+) create mode 100644 client/Piztor/.classpath create mode 100644 client/Piztor/.project create mode 100644 client/Piztor/.settings/org.eclipse.jdt.core.prefs create mode 100644 client/Piztor/AndroidManifest.xml create mode 100644 client/Piztor/ic_launcher-web.png create mode 100644 client/Piztor/proguard-project.txt create mode 100644 client/Piztor/project.properties create mode 100644 client/Piztor/res/drawable-hdpi/ic_launcher.png create mode 100644 client/Piztor/res/drawable-mdpi/ic_launcher.png create mode 100644 client/Piztor/res/drawable-xhdpi/ic_launcher.png create mode 100644 client/Piztor/res/drawable-xxhdpi/ic_launcher.png create mode 100644 client/Piztor/res/drawable/bottom_img.png create mode 100644 client/Piztor/res/drawable/footbar_background.png create mode 100644 client/Piztor/res/drawable/footbar_btn_checkin_style.xml create mode 100644 client/Piztor/res/drawable/footbar_btn_fetch_style.xml create mode 100644 client/Piztor/res/drawable/footbar_btn_focus_style.xml create mode 100644 client/Piztor/res/drawable/footbar_btn_search_style.xml create mode 100644 client/Piztor/res/drawable/footbar_btn_settings_style.xml create mode 100644 client/Piztor/res/drawable/footbar_checkin.png create mode 100644 client/Piztor/res/drawable/footbar_checkin_1.png create mode 100644 client/Piztor/res/drawable/footbar_fetch.png create mode 100644 client/Piztor/res/drawable/footbar_fetch_1.png create mode 100644 client/Piztor/res/drawable/footbar_marker.png create mode 100644 client/Piztor/res/drawable/footbar_marker_1.png create mode 100644 client/Piztor/res/drawable/footbar_search.png create mode 100644 client/Piztor/res/drawable/footbar_search_1.png create mode 100644 client/Piztor/res/drawable/footbar_select_bg.png create mode 100644 client/Piztor/res/drawable/footbar_settings.png create mode 100644 client/Piztor/res/drawable/footbar_settings_1.png create mode 100644 client/Piztor/res/drawable/footbar_unselect_bg.png create mode 100644 client/Piztor/res/drawable/horizontal_line.png create mode 100644 client/Piztor/res/drawable/navigation_back.png create mode 100644 client/Piztor/res/drawable/navigation_back_1.png create mode 100644 client/Piztor/res/drawable/title_logo.png create mode 100644 client/Piztor/res/drawable/topbar_background.png create mode 100644 client/Piztor/res/layout/activity_gather.xml create mode 100644 client/Piztor/res/layout/activity_init.xml create mode 100644 client/Piztor/res/layout/activity_login.xml create mode 100644 client/Piztor/res/layout/activity_main.xml create mode 100644 client/Piztor/res/layout/activity_settings.xml create mode 100644 client/Piztor/res/layout/gather_footbar.xml create mode 100644 client/Piztor/res/layout/gather_timer.xml create mode 100644 client/Piztor/res/layout/login_bottom.xml create mode 100644 client/Piztor/res/layout/main_footbar.xml create mode 100644 client/Piztor/res/layout/main_headbar.xml create mode 100644 client/Piztor/res/layout/settings_headbar.xml create mode 100644 client/Piztor/res/menu/init.xml create mode 100644 client/Piztor/res/menu/login.xml create mode 100644 client/Piztor/res/menu/main.xml create mode 100644 client/Piztor/res/menu/setting.xml create mode 100644 client/Piztor/res/values-sw600dp/dimens.xml create mode 100644 client/Piztor/res/values-sw720dp-land/dimens.xml create mode 100644 client/Piztor/res/values-v11/styles.xml create mode 100644 client/Piztor/res/values-v14/styles.xml create mode 100644 client/Piztor/res/values/dimens.xml create mode 100644 client/Piztor/res/values/strings.xml create mode 100644 client/Piztor/res/values/styles.xml create mode 100644 client/Piztor/src/com/macaroon/piztor/ActMgr.java create mode 100644 client/Piztor/src/com/macaroon/piztor/AppMgr.java create mode 100644 client/Piztor/src/com/macaroon/piztor/GPSTracker.java create mode 100644 client/Piztor/src/com/macaroon/piztor/InitAct.java create mode 100644 client/Piztor/src/com/macaroon/piztor/Login.java create mode 100644 client/Piztor/src/com/macaroon/piztor/Main.java create mode 100644 client/Piztor/src/com/macaroon/piztor/PiztorAct.java create mode 100644 client/Piztor/src/com/macaroon/piztor/PiztorExcepiton.java create mode 100644 client/Piztor/src/com/macaroon/piztor/Req.java create mode 100644 client/Piztor/src/com/macaroon/piztor/ReqLocation.java create mode 100644 client/Piztor/src/com/macaroon/piztor/ReqLogin.java create mode 100644 client/Piztor/src/com/macaroon/piztor/ReqUpdate.java create mode 100644 client/Piztor/src/com/macaroon/piztor/Res.java create mode 100644 client/Piztor/src/com/macaroon/piztor/ResLocation.java create mode 100644 client/Piztor/src/com/macaroon/piztor/ResLogin.java create mode 100644 client/Piztor/src/com/macaroon/piztor/ResUpdate.java create mode 100644 client/Piztor/src/com/macaroon/piztor/Rlocation.java create mode 100644 client/Piztor/src/com/macaroon/piztor/Settings.java create mode 100644 client/Piztor/src/com/macaroon/piztor/SocketClient.java create mode 100644 client/Piztor/src/com/macaroon/piztor/Tracker.java create mode 100644 client/Piztor/src/com/macaroon/piztor/Transam.java create mode 100644 client/Piztor/src/com/macaroon/piztor/UserInfo.java diff --git a/client/Piztor/.classpath b/client/Piztor/.classpath new file mode 100644 index 0000000..7bc01d9 --- /dev/null +++ b/client/Piztor/.classpath @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/client/Piztor/.project b/client/Piztor/.project new file mode 100644 index 0000000..97100ec --- /dev/null +++ b/client/Piztor/.project @@ -0,0 +1,33 @@ + + + Piztor + + + + + + com.android.ide.eclipse.adt.ResourceManagerBuilder + + + + + com.android.ide.eclipse.adt.PreCompilerBuilder + + + + + org.eclipse.jdt.core.javabuilder + + + + + com.android.ide.eclipse.adt.ApkBuilder + + + + + + com.android.ide.eclipse.adt.AndroidNature + org.eclipse.jdt.core.javanature + + diff --git a/client/Piztor/.settings/org.eclipse.jdt.core.prefs b/client/Piztor/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000..b080d2d --- /dev/null +++ b/client/Piztor/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,4 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 +org.eclipse.jdt.core.compiler.compliance=1.6 +org.eclipse.jdt.core.compiler.source=1.6 diff --git a/client/Piztor/AndroidManifest.xml b/client/Piztor/AndroidManifest.xml new file mode 100644 index 0000000..b18d8e2 --- /dev/null +++ b/client/Piztor/AndroidManifest.xml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/client/Piztor/ic_launcher-web.png b/client/Piztor/ic_launcher-web.png new file mode 100644 index 0000000..3cd0ac2 Binary files /dev/null and b/client/Piztor/ic_launcher-web.png differ diff --git a/client/Piztor/proguard-project.txt b/client/Piztor/proguard-project.txt new file mode 100644 index 0000000..f2fe155 --- /dev/null +++ b/client/Piztor/proguard-project.txt @@ -0,0 +1,20 @@ +# To enable ProGuard in your project, edit project.properties +# to define the proguard.config property as described in that file. +# +# Add project specific ProGuard rules here. +# By default, the flags in this file are appended to flags specified +# in ${sdk.dir}/tools/proguard/proguard-android.txt +# You can edit the include path and order by changing the ProGuard +# include property in project.properties. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# Add any project specific keep options here: + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} diff --git a/client/Piztor/project.properties b/client/Piztor/project.properties new file mode 100644 index 0000000..ce39f2d --- /dev/null +++ b/client/Piztor/project.properties @@ -0,0 +1,14 @@ +# This file is automatically generated by Android Tools. +# Do not modify this file -- YOUR CHANGES WILL BE ERASED! +# +# This file must be checked in Version Control Systems. +# +# To customize properties used by the Ant build system edit +# "ant.properties", and override values to adapt the script to your +# project structure. +# +# To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home): +#proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt + +# Project target. +target=android-18 diff --git a/client/Piztor/res/drawable-hdpi/ic_launcher.png b/client/Piztor/res/drawable-hdpi/ic_launcher.png new file mode 100644 index 0000000..ddc6c13 Binary files /dev/null and b/client/Piztor/res/drawable-hdpi/ic_launcher.png differ diff --git a/client/Piztor/res/drawable-mdpi/ic_launcher.png b/client/Piztor/res/drawable-mdpi/ic_launcher.png new file mode 100644 index 0000000..7b6698a Binary files /dev/null and b/client/Piztor/res/drawable-mdpi/ic_launcher.png differ diff --git a/client/Piztor/res/drawable-xhdpi/ic_launcher.png b/client/Piztor/res/drawable-xhdpi/ic_launcher.png new file mode 100644 index 0000000..20ea43a Binary files /dev/null and b/client/Piztor/res/drawable-xhdpi/ic_launcher.png differ diff --git a/client/Piztor/res/drawable-xxhdpi/ic_launcher.png b/client/Piztor/res/drawable-xxhdpi/ic_launcher.png new file mode 100644 index 0000000..e1ca5c2 Binary files /dev/null and b/client/Piztor/res/drawable-xxhdpi/ic_launcher.png differ diff --git a/client/Piztor/res/drawable/bottom_img.png b/client/Piztor/res/drawable/bottom_img.png new file mode 100644 index 0000000..2725ea8 Binary files /dev/null and b/client/Piztor/res/drawable/bottom_img.png differ diff --git a/client/Piztor/res/drawable/footbar_background.png b/client/Piztor/res/drawable/footbar_background.png new file mode 100644 index 0000000..488e8f2 Binary files /dev/null and b/client/Piztor/res/drawable/footbar_background.png differ diff --git a/client/Piztor/res/drawable/footbar_btn_checkin_style.xml b/client/Piztor/res/drawable/footbar_btn_checkin_style.xml new file mode 100644 index 0000000..6dbeb21 --- /dev/null +++ b/client/Piztor/res/drawable/footbar_btn_checkin_style.xml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/client/Piztor/res/drawable/footbar_btn_fetch_style.xml b/client/Piztor/res/drawable/footbar_btn_fetch_style.xml new file mode 100644 index 0000000..379d526 --- /dev/null +++ b/client/Piztor/res/drawable/footbar_btn_fetch_style.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/client/Piztor/res/drawable/footbar_btn_focus_style.xml b/client/Piztor/res/drawable/footbar_btn_focus_style.xml new file mode 100644 index 0000000..5932f2f --- /dev/null +++ b/client/Piztor/res/drawable/footbar_btn_focus_style.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/client/Piztor/res/drawable/footbar_btn_search_style.xml b/client/Piztor/res/drawable/footbar_btn_search_style.xml new file mode 100644 index 0000000..ac786ef --- /dev/null +++ b/client/Piztor/res/drawable/footbar_btn_search_style.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/client/Piztor/res/drawable/footbar_btn_settings_style.xml b/client/Piztor/res/drawable/footbar_btn_settings_style.xml new file mode 100644 index 0000000..fca6230 --- /dev/null +++ b/client/Piztor/res/drawable/footbar_btn_settings_style.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/client/Piztor/res/drawable/footbar_checkin.png b/client/Piztor/res/drawable/footbar_checkin.png new file mode 100644 index 0000000..90afba7 Binary files /dev/null and b/client/Piztor/res/drawable/footbar_checkin.png differ diff --git a/client/Piztor/res/drawable/footbar_checkin_1.png b/client/Piztor/res/drawable/footbar_checkin_1.png new file mode 100644 index 0000000..a478d36 Binary files /dev/null and b/client/Piztor/res/drawable/footbar_checkin_1.png differ diff --git a/client/Piztor/res/drawable/footbar_fetch.png b/client/Piztor/res/drawable/footbar_fetch.png new file mode 100644 index 0000000..32d24d2 Binary files /dev/null and b/client/Piztor/res/drawable/footbar_fetch.png differ diff --git a/client/Piztor/res/drawable/footbar_fetch_1.png b/client/Piztor/res/drawable/footbar_fetch_1.png new file mode 100644 index 0000000..208094f Binary files /dev/null and b/client/Piztor/res/drawable/footbar_fetch_1.png differ diff --git a/client/Piztor/res/drawable/footbar_marker.png b/client/Piztor/res/drawable/footbar_marker.png new file mode 100644 index 0000000..3de909f Binary files /dev/null and b/client/Piztor/res/drawable/footbar_marker.png differ diff --git a/client/Piztor/res/drawable/footbar_marker_1.png b/client/Piztor/res/drawable/footbar_marker_1.png new file mode 100644 index 0000000..08c8715 Binary files /dev/null and b/client/Piztor/res/drawable/footbar_marker_1.png differ diff --git a/client/Piztor/res/drawable/footbar_search.png b/client/Piztor/res/drawable/footbar_search.png new file mode 100644 index 0000000..3549f84 Binary files /dev/null and b/client/Piztor/res/drawable/footbar_search.png differ diff --git a/client/Piztor/res/drawable/footbar_search_1.png b/client/Piztor/res/drawable/footbar_search_1.png new file mode 100644 index 0000000..1e6ac28 Binary files /dev/null and b/client/Piztor/res/drawable/footbar_search_1.png differ diff --git a/client/Piztor/res/drawable/footbar_select_bg.png b/client/Piztor/res/drawable/footbar_select_bg.png new file mode 100644 index 0000000..9d7e5af Binary files /dev/null and b/client/Piztor/res/drawable/footbar_select_bg.png differ diff --git a/client/Piztor/res/drawable/footbar_settings.png b/client/Piztor/res/drawable/footbar_settings.png new file mode 100644 index 0000000..455bd0b Binary files /dev/null and b/client/Piztor/res/drawable/footbar_settings.png differ diff --git a/client/Piztor/res/drawable/footbar_settings_1.png b/client/Piztor/res/drawable/footbar_settings_1.png new file mode 100644 index 0000000..6b0a2ab Binary files /dev/null and b/client/Piztor/res/drawable/footbar_settings_1.png differ diff --git a/client/Piztor/res/drawable/footbar_unselect_bg.png b/client/Piztor/res/drawable/footbar_unselect_bg.png new file mode 100644 index 0000000..3e1e65e Binary files /dev/null and b/client/Piztor/res/drawable/footbar_unselect_bg.png differ diff --git a/client/Piztor/res/drawable/horizontal_line.png b/client/Piztor/res/drawable/horizontal_line.png new file mode 100644 index 0000000..ccd6aa2 Binary files /dev/null and b/client/Piztor/res/drawable/horizontal_line.png differ diff --git a/client/Piztor/res/drawable/navigation_back.png b/client/Piztor/res/drawable/navigation_back.png new file mode 100644 index 0000000..3bdda98 Binary files /dev/null and b/client/Piztor/res/drawable/navigation_back.png differ diff --git a/client/Piztor/res/drawable/navigation_back_1.png b/client/Piztor/res/drawable/navigation_back_1.png new file mode 100644 index 0000000..a20b4ef Binary files /dev/null and b/client/Piztor/res/drawable/navigation_back_1.png differ diff --git a/client/Piztor/res/drawable/title_logo.png b/client/Piztor/res/drawable/title_logo.png new file mode 100644 index 0000000..224040c Binary files /dev/null and b/client/Piztor/res/drawable/title_logo.png differ diff --git a/client/Piztor/res/drawable/topbar_background.png b/client/Piztor/res/drawable/topbar_background.png new file mode 100644 index 0000000..9f0291e Binary files /dev/null and b/client/Piztor/res/drawable/topbar_background.png differ diff --git a/client/Piztor/res/layout/activity_gather.xml b/client/Piztor/res/layout/activity_gather.xml new file mode 100644 index 0000000..f887cf0 --- /dev/null +++ b/client/Piztor/res/layout/activity_gather.xml @@ -0,0 +1,23 @@ + + + + + + + + + diff --git a/client/Piztor/res/layout/activity_init.xml b/client/Piztor/res/layout/activity_init.xml new file mode 100644 index 0000000..43e6253 --- /dev/null +++ b/client/Piztor/res/layout/activity_init.xml @@ -0,0 +1,16 @@ + + + + + diff --git a/client/Piztor/res/layout/activity_login.xml b/client/Piztor/res/layout/activity_login.xml new file mode 100644 index 0000000..cd2d34c --- /dev/null +++ b/client/Piztor/res/layout/activity_login.xml @@ -0,0 +1,92 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + +