Compare commits
85 Commits
dd3beea20e
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 6ae141d6f1 | |||
| ec3445bba4 | |||
| 2ad24899de | |||
| 0a128cb8a6 | |||
| f51e8f24de | |||
| beb802e8c2 | |||
| 6ca8ead5ab | |||
| 0e8af36c87 | |||
| a25e4a093d | |||
| 4f77f25be4 | |||
| 815464ef20 | |||
| 5ac14912bb | |||
| ed034f152c | |||
| 21f1c5b13c | |||
| 27b9a6c885 | |||
| cf9d9e8224 | |||
| c82066ca38 | |||
| d4f5a1e0a3 | |||
| bb5bd7adf3 | |||
|
|
f3ccb1f4ec | ||
|
|
c0ab984a83 | ||
|
|
fde637793e | ||
|
|
f26e3545b2 | ||
|
|
462629386e | ||
|
|
63edcb7a5b | ||
|
|
bdff8cc351 | ||
|
|
4dcbc176cb | ||
|
|
ede190d9f3 | ||
|
|
ca554656c5 | ||
|
|
46c0a5b2a4 | ||
|
|
0654ec87bc | ||
|
|
5be446af72 | ||
|
|
587697954d | ||
|
|
8d1a44bf89 | ||
|
|
505a0414b8 | ||
|
|
fa5b707c22 | ||
|
|
4547f844ba | ||
|
|
0dfc082f2b | ||
|
|
bcf03fa149 | ||
|
|
4e46370ec1 | ||
|
|
3b55eaabf4 | ||
|
|
1325892780 | ||
|
|
06bf4687fe | ||
|
|
d8ab8599da | ||
|
|
d002310a0d | ||
|
|
69aa917897 | ||
|
|
20ff76b933 | ||
|
|
862c9c9a06 | ||
|
|
16956f1086 | ||
|
|
a7ed21e08a | ||
|
|
00e4a33e19 | ||
|
|
00ae7df9c1 | ||
|
|
a92b5927fd | ||
|
|
03eaca11e4 | ||
|
|
dde91df569 | ||
|
|
be57432b03 | ||
|
|
d495e0571a | ||
|
|
13035c6037 | ||
|
|
5e5679672f | ||
|
|
1bc92e860f | ||
|
|
f5001f3349 | ||
|
|
8b128e58cb | ||
|
|
1aa6f7a247 | ||
|
|
f0dcad40ea | ||
|
|
dc9c091155 | ||
|
|
5373acaa80 | ||
|
|
7aab33bc12 | ||
|
|
0409b50712 | ||
|
|
d55cb89936 | ||
|
|
8788613dd2 | ||
|
|
9854b7b90d | ||
|
|
75014598ed | ||
|
|
795fcec1a2 | ||
|
|
e14087355f | ||
|
|
b1e0eef1ab | ||
|
|
3ddc5c23f6 | ||
|
|
a9ec548557 | ||
|
|
d6d1ad93f2 | ||
|
|
66160b45e0 | ||
|
|
53feace665 | ||
|
|
6e519da2d4 | ||
|
|
8bb497b548 | ||
|
|
ed0a3e803d | ||
|
|
4021989676 | ||
|
|
5663af6a17 |
4
.idea/deploymentTargetSelector.xml
generated
4
.idea/deploymentTargetSelector.xml
generated
@@ -4,10 +4,10 @@
|
|||||||
<selectionStates>
|
<selectionStates>
|
||||||
<SelectionState runConfigName="app">
|
<SelectionState runConfigName="app">
|
||||||
<option name="selectionMode" value="DROPDOWN" />
|
<option name="selectionMode" value="DROPDOWN" />
|
||||||
<DropdownSelection timestamp="2025-10-09T01:39:35.620630500Z">
|
<DropdownSelection timestamp="2026-07-29T04:01:42.827217400Z">
|
||||||
<Target type="DEFAULT_BOOT">
|
<Target type="DEFAULT_BOOT">
|
||||||
<handle>
|
<handle>
|
||||||
<DeviceId pluginId="LocalEmulator" identifier="path=H:\androidAvd\.android\avd\Pixel_9_Pro.avd" />
|
<DeviceId pluginId="PhysicalDevice" identifier="serial=3A251FDJH000CE" />
|
||||||
</handle>
|
</handle>
|
||||||
</Target>
|
</Target>
|
||||||
</DropdownSelection>
|
</DropdownSelection>
|
||||||
|
|||||||
2
.idea/gradle.xml
generated
2
.idea/gradle.xml
generated
@@ -6,7 +6,7 @@
|
|||||||
<GradleProjectSettings>
|
<GradleProjectSettings>
|
||||||
<option name="testRunner" value="CHOOSE_PER_TEST" />
|
<option name="testRunner" value="CHOOSE_PER_TEST" />
|
||||||
<option name="externalProjectPath" value="$PROJECT_DIR$" />
|
<option name="externalProjectPath" value="$PROJECT_DIR$" />
|
||||||
<option name="gradleJvm" value="jbr-21" />
|
<option name="gradleJvm" value="#GRADLE_LOCAL_JAVA_HOME" />
|
||||||
<option name="modules">
|
<option name="modules">
|
||||||
<set>
|
<set>
|
||||||
<option value="$PROJECT_DIR$" />
|
<option value="$PROJECT_DIR$" />
|
||||||
|
|||||||
10
.idea/migrations.xml
generated
10
.idea/migrations.xml
generated
@@ -1,10 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<project version="4">
|
|
||||||
<component name="ProjectMigrations">
|
|
||||||
<option name="MigrateToGradleLocalJavaHome">
|
|
||||||
<set>
|
|
||||||
<option value="$PROJECT_DIR$" />
|
|
||||||
</set>
|
|
||||||
</option>
|
|
||||||
</component>
|
|
||||||
</project>
|
|
||||||
7
.idea/misc.xml
generated
7
.idea/misc.xml
generated
@@ -1,9 +1,4 @@
|
|||||||
<project version="4">
|
<project version="4">
|
||||||
<component name="ExternalStorageConfigurationManager" enabled="true" />
|
<component name="ExternalStorageConfigurationManager" enabled="true" />
|
||||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_7" project-jdk-name="jbr-21" project-jdk-type="JavaSDK">
|
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_7" project-jdk-name="jbr-21" project-jdk-type="JavaSDK" />
|
||||||
<output url="file://$PROJECT_DIR$/build/classes" />
|
|
||||||
</component>
|
|
||||||
<component name="ProjectType">
|
|
||||||
<option name="id" value="Android" />
|
|
||||||
</component>
|
|
||||||
</project>
|
</project>
|
||||||
@@ -7,9 +7,12 @@ android {
|
|||||||
defaultConfig {
|
defaultConfig {
|
||||||
minSdkVersion 21
|
minSdkVersion 21
|
||||||
targetSdkVersion 31
|
targetSdkVersion 31
|
||||||
|
// 库模块自身不开启混淆(库模块 minifyEnabled 默认就是 false,显式写死更安全)
|
||||||
|
consumerProguardFiles "consumer-rules.pro"
|
||||||
}
|
}
|
||||||
buildTypes {
|
buildTypes {
|
||||||
release {
|
release {
|
||||||
|
// 库模块自身不混淆:产出的 AAR 必须是原始类,否则 App 侧无法直接调用/反射
|
||||||
minifyEnabled false
|
minifyEnabled false
|
||||||
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
|
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1 +0,0 @@
|
|||||||
o/bundleLibRuntimeToDirDebug
|
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1 +0,0 @@
|
|||||||
o/classes
|
|
||||||
Binary file not shown.
@@ -1 +1 @@
|
|||||||
#Fri Dec 26 18:05:45 CST 2025
|
#Fri Jul 31 17:44:57 CST 2026
|
||||||
|
|||||||
@@ -1,2 +1,2 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<merger version="3"><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="main$Generated" generated="true" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\res"/></dataSet><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="main" generated-set="main$Generated" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\res"/></dataSet><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="debug$Generated" generated="true" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\debug\res"/></dataSet><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="debug" generated-set="debug$Generated" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\debug\res"/></dataSet><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="generated$Generated" generated="true" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\build\generated\res\resValues\debug"/></dataSet><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="generated" generated-set="generated$Generated" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\build\generated\res\resValues\debug"/></dataSet><mergedItems/></merger>
|
<merger version="3"><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="main$Generated" generated="true" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\res"/></dataSet><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="main" generated-set="main$Generated" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\res"/></dataSet><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="debug$Generated" generated="true" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\debug\res"/></dataSet><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="debug" generated-set="debug$Generated" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\debug\res"/></dataSet><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="generated$Generated" generated="true" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\build\generated\res\resValues\debug"/></dataSet><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="generated" generated-set="generated$Generated" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\build\generated\res\resValues\debug"/></dataSet><mergedItems/></merger>
|
||||||
@@ -1,2 +1,2 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<merger version="3"><dataSet config="main" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\assets"/></dataSet><dataSet config="debug" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\debug\assets"/></dataSet><dataSet config="generated" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\build\intermediates\shader_assets\debug\compileDebugShaders\out"/></dataSet></merger>
|
<merger version="3"><dataSet config="main" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\assets"/></dataSet><dataSet config="debug" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\debug\assets"/></dataSet><dataSet config="generated" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\build\intermediates\shader_assets\debug\compileDebugShaders\out"/></dataSet></merger>
|
||||||
@@ -1,2 +1,2 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<merger version="3"><dataSet config="main" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\jniLibs"/></dataSet><dataSet config="debug" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\debug\jniLibs"/></dataSet></merger>
|
<merger version="3"><dataSet config="main" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\jniLibs"/></dataSet><dataSet config="debug" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\debug\jniLibs"/></dataSet></merger>
|
||||||
@@ -1,2 +1,2 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<merger version="3"><dataSet config="main" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\shaders"/></dataSet><dataSet config="debug" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\debug\shaders"/></dataSet></merger>
|
<merger version="3"><dataSet config="main" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\shaders"/></dataSet><dataSet config="debug" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\debug\shaders"/></dataSet></merger>
|
||||||
@@ -5,16 +5,16 @@
|
|||||||
5 <uses-sdk android:minSdkVersion="21" />
|
5 <uses-sdk android:minSdkVersion="21" />
|
||||||
6
|
6
|
||||||
7 <uses-permission android:name="android.permission.BLUETOOTH" />
|
7 <uses-permission android:name="android.permission.BLUETOOTH" />
|
||||||
7-->E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:4:5-68
|
7-->F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:4:5-68
|
||||||
7-->E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:4:22-65
|
7-->F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:4:22-65
|
||||||
8 <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
|
8 <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
|
||||||
8-->E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:5:5-74
|
8-->F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:5:5-74
|
||||||
8-->E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:5:22-71
|
8-->F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:5:22-71
|
||||||
9 <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
|
9 <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
|
||||||
9-->E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:6:5-81
|
9-->F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:6:5-81
|
||||||
9-->E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:6:22-78
|
9-->F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:6:22-78
|
||||||
10 <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
|
10 <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
|
||||||
10-->E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:7:5-79
|
10-->F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:7:5-79
|
||||||
10-->E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:7:22-76
|
10-->F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:7:22-76
|
||||||
11
|
11
|
||||||
12</manifest>
|
12</manifest>
|
||||||
|
|||||||
@@ -1,33 +1,33 @@
|
|||||||
-- Merging decision tree log ---
|
-- Merging decision tree log ---
|
||||||
manifest
|
manifest
|
||||||
ADDED from E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:1:1-9:12
|
ADDED from F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:1:1-9:12
|
||||||
INJECTED from E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:1:1-9:12
|
INJECTED from F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:1:1-9:12
|
||||||
package
|
package
|
||||||
ADDED from E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:2:5-30
|
ADDED from F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:2:5-30
|
||||||
INJECTED from E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml
|
INJECTED from F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml
|
||||||
xmlns:android
|
xmlns:android
|
||||||
ADDED from E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:1:11-69
|
ADDED from F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:1:11-69
|
||||||
uses-permission#android.permission.BLUETOOTH
|
uses-permission#android.permission.BLUETOOTH
|
||||||
ADDED from E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:4:5-68
|
ADDED from F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:4:5-68
|
||||||
android:name
|
android:name
|
||||||
ADDED from E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:4:22-65
|
ADDED from F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:4:22-65
|
||||||
uses-permission#android.permission.BLUETOOTH_ADMIN
|
uses-permission#android.permission.BLUETOOTH_ADMIN
|
||||||
ADDED from E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:5:5-74
|
ADDED from F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:5:5-74
|
||||||
android:name
|
android:name
|
||||||
ADDED from E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:5:22-71
|
ADDED from F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:5:22-71
|
||||||
uses-permission#android.permission.ACCESS_COARSE_LOCATION
|
uses-permission#android.permission.ACCESS_COARSE_LOCATION
|
||||||
ADDED from E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:6:5-81
|
ADDED from F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:6:5-81
|
||||||
android:name
|
android:name
|
||||||
ADDED from E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:6:22-78
|
ADDED from F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:6:22-78
|
||||||
uses-permission#android.permission.ACCESS_FINE_LOCATION
|
uses-permission#android.permission.ACCESS_FINE_LOCATION
|
||||||
ADDED from E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:7:5-79
|
ADDED from F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:7:5-79
|
||||||
android:name
|
android:name
|
||||||
ADDED from E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:7:22-76
|
ADDED from F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml:7:22-76
|
||||||
uses-sdk
|
uses-sdk
|
||||||
INJECTED from E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml reason: use-sdk injection requested
|
INJECTED from F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml reason: use-sdk injection requested
|
||||||
INJECTED from E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml
|
INJECTED from F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml
|
||||||
INJECTED from E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml
|
INJECTED from F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml
|
||||||
android:targetSdkVersion
|
android:targetSdkVersion
|
||||||
INJECTED from E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml
|
INJECTED from F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml
|
||||||
android:minSdkVersion
|
android:minSdkVersion
|
||||||
INJECTED from E:\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml
|
INJECTED from F:\Project\AndroidProject\LatestSdkProject\Tracker\FastBleLib\src\main\AndroidManifest.xml
|
||||||
|
|||||||
146
FastBleLib/consumer-rules.pro
Normal file
146
FastBleLib/consumer-rules.pro
Normal file
@@ -0,0 +1,146 @@
|
|||||||
|
# ============================================================
|
||||||
|
# FastBleLib 库模块 consumer-rules.pro(传递给依赖本库的 App 模块)
|
||||||
|
# 库的实际包名:com.clj.fastble(namespace)
|
||||||
|
# 要求:完全不混淆,关键系统回调必须 100% 保留
|
||||||
|
# 问题根因:BleManager.getInstance().isConnected(mac) 执行不正常
|
||||||
|
# → 因为 Parcelable CREATOR / 系统 BluetoothGattCallback 覆写方法
|
||||||
|
# / Handler 内部类 handleMessage / 枚举 / 静态 Holder 单例 被 R8 优化
|
||||||
|
# ============================================================
|
||||||
|
|
||||||
|
# -------------- 核心类 keep(基础包) --------------
|
||||||
|
-keep class com.clj.fastble.** { *; }
|
||||||
|
-keepclassmembers class com.clj.fastble.** {
|
||||||
|
public <init>(...);
|
||||||
|
protected <init>(...);
|
||||||
|
<fields>;
|
||||||
|
<methods>;
|
||||||
|
}
|
||||||
|
|
||||||
|
# -------------- Parcelable 强化规则(核心:BleDevice / BleConnectStateParameter 等) --------------
|
||||||
|
# 解决:跨 Binder 传递 BleDevice 时反序列化失败,getMac() 返回 null,导致 equals(mac) 永远 false
|
||||||
|
-keep class * implements android.os.Parcelable {
|
||||||
|
public static final android.os.Parcelable$Creator *;
|
||||||
|
public static final android.os.Parcelable$ClassLoaderCreator *;
|
||||||
|
public <init>(android.os.Parcel);
|
||||||
|
public <init>(android.os.Parcel, java.lang.ClassLoader);
|
||||||
|
public void writeToParcel(android.os.Parcel, int);
|
||||||
|
public int describeContents();
|
||||||
|
}
|
||||||
|
# 针对 FastBle 自己的 Parcelable 类再单独声明一次,优先匹配
|
||||||
|
# 说明:因为上面已经 -keep class com.clj.fastble.** { *; },所以这些类所有成员已全量保留
|
||||||
|
# 这里只做显式声明(防止 outer keep 失效时的兜底)
|
||||||
|
-keep class com.clj.fastble.data.BleDevice { *; }
|
||||||
|
-keep class com.clj.fastble.data.BleConnectStateParameter { *; }
|
||||||
|
-keep class com.clj.fastble.data.BleScanState { *; }
|
||||||
|
|
||||||
|
# -------------- 系统蓝牙回调覆写方法(最关键!Binder 回调触发必须保留原签名) --------------
|
||||||
|
# 解决:onConnectionStateChange / onServicesDiscovered 等系统回调不触发 → 无法 addBleBluetooth → 列表为空 → isConnected() 永远 false
|
||||||
|
# 所有 extends BluetoothGattCallback(BleBluetooth.coreGattCallback 匿名内部类继承它)
|
||||||
|
-keepclassmembers class * extends android.bluetooth.BluetoothGattCallback {
|
||||||
|
public *;
|
||||||
|
protected *;
|
||||||
|
void onConnectionStateChange(...);
|
||||||
|
void onServicesDiscovered(...);
|
||||||
|
void onCharacteristicRead(...);
|
||||||
|
void onCharacteristicWrite(...);
|
||||||
|
void onCharacteristicChanged(...);
|
||||||
|
void onDescriptorRead(...);
|
||||||
|
void onDescriptorWrite(...);
|
||||||
|
void onReliableWriteCompleted(...);
|
||||||
|
void onReadRemoteRssi(...);
|
||||||
|
void onMtuChanged(...);
|
||||||
|
void onPhyUpdate(...);
|
||||||
|
void onPhyRead(...);
|
||||||
|
void onServiceChanged(...);
|
||||||
|
}
|
||||||
|
# 所有 implements BluetoothAdapter.LeScanCallback(BleScanPresenter 实现它,老版扫描回调)
|
||||||
|
-keepclassmembers class * implements android.bluetooth.BluetoothAdapter$LeScanCallback {
|
||||||
|
void onLeScan(...);
|
||||||
|
}
|
||||||
|
# 所有 extends android.bluetooth.le.ScanCallback(Android 5.0+ 新版扫描 API,万一用到)
|
||||||
|
-keepclassmembers class * extends android.bluetooth.le.ScanCallback {
|
||||||
|
void onScanResult(...);
|
||||||
|
void onBatchScanResults(...);
|
||||||
|
void onScanFailed(...);
|
||||||
|
}
|
||||||
|
|
||||||
|
# -------------- Handler 内部类 handleMessage(系统 Handler.Callback 机制触发) --------------
|
||||||
|
# 解决:MainHandler / ScanHandler 的 handleMessage 被混淆 → 消息不处理 → 连接流程卡死
|
||||||
|
-keepclassmembers class * extends android.os.Handler {
|
||||||
|
public void handleMessage(android.os.Message);
|
||||||
|
protected void handleMessage(android.os.Message);
|
||||||
|
void handleMessage(...);
|
||||||
|
}
|
||||||
|
|
||||||
|
# -------------- 枚举类保留(BleScanState、LastState 内部枚举) --------------
|
||||||
|
# 解决:枚举 values() / valueOf() / ordinal() 被优化 → 状态判断错误
|
||||||
|
-keepclassmembers enum * {
|
||||||
|
public static **[] values();
|
||||||
|
public static ** valueOf(java.lang.String);
|
||||||
|
public static ** valueOf(java.lang.Class, java.lang.String);
|
||||||
|
}
|
||||||
|
-keep enum com.clj.fastble.** { *; }
|
||||||
|
-keepclassmembers enum com.clj.fastble.** { *; }
|
||||||
|
# 显式保留 BleBluetooth.LastState 内部枚举
|
||||||
|
-keep class com.clj.fastble.bluetooth.BleBluetooth$LastState { *; }
|
||||||
|
|
||||||
|
# -------------- 静态 Holder 单例模式(BleManager / BleScanner 单例) --------------
|
||||||
|
# 解决:R8 full mode 对 private static 内部类做特殊优化,导致单例失效,多次 init 覆盖
|
||||||
|
-keep class com.clj.fastble.BleManager$BleManagerHolder { *; }
|
||||||
|
-keepclassmembers class com.clj.fastble.BleManager$BleManagerHolder {
|
||||||
|
static com.clj.fastble.BleManager sBleManager;
|
||||||
|
<init>(...);
|
||||||
|
}
|
||||||
|
-keep class com.clj.fastble.scan.BleScanner$BleScannerHolder { *; }
|
||||||
|
-keepclassmembers class com.clj.fastble.scan.BleScanner$BleScannerHolder {
|
||||||
|
static com.clj.fastble.scan.BleScanner sBleScanner;
|
||||||
|
<init>(...);
|
||||||
|
}
|
||||||
|
|
||||||
|
# -------------- 内部类 + 匿名内部类(禁止类合并,保留外部类引用) --------------
|
||||||
|
# 解决:R8 做 class merging,把 BleBluetooth$1(coreGattCallback 匿名类)合并到外层,导致 Binder 回调找不到
|
||||||
|
-keepattributes InnerClasses,EnclosingMethod,Signature,*Annotation*,RuntimeVisibleAnnotations,RuntimeVisibleParameterAnnotations,Exceptions
|
||||||
|
-keep class com.clj.fastble.**$* { *; }
|
||||||
|
-keepclassmembers class com.clj.fastble.**$* {
|
||||||
|
<init>(...);
|
||||||
|
<fields>;
|
||||||
|
<methods>;
|
||||||
|
}
|
||||||
|
|
||||||
|
# -------------- 反射支持(BleBluetooth.refreshDeviceCache() 反射调用 BluetoothGatt#refresh) --------------
|
||||||
|
# 说明:
|
||||||
|
# - java.lang.reflect.* / android.bluetooth.BluetoothGatt 均为 Android 系统框架类,R8 不会修改/混淆/优化系统类
|
||||||
|
# - BluetoothGatt#refresh() 是 @hide 隐藏 API,编译期 SDK(android.jar)中不存在,故无需也无法 keep
|
||||||
|
# - 运行时反射 Class.getMethod("refresh") 可正常查找系统 ROM 中的真实方法,不受 ProGuard/R8 影响
|
||||||
|
# - 因此这里不需要写任何 -keep 规则,仅保留 -dontwarn 防止反射类的警告
|
||||||
|
-dontwarn java.lang.reflect.**
|
||||||
|
-dontwarn android.bluetooth.BluetoothGatt
|
||||||
|
|
||||||
|
# -------------- 回调接口保留(动态代理/反射查找可能用到) --------------
|
||||||
|
-keep interface com.clj.fastble.callback.** { *; }
|
||||||
|
-keepclassmembers interface com.clj.fastble.callback.** { <methods>; }
|
||||||
|
-keep class * implements com.clj.fastble.callback.BleGattCallback { *; }
|
||||||
|
-keep class * implements com.clj.fastble.callback.BleScanCallback { *; }
|
||||||
|
-keep class * implements com.clj.fastble.callback.BleScanAndConnectCallback { *; }
|
||||||
|
-keep class * implements com.clj.fastble.callback.BleNotifyCallback { *; }
|
||||||
|
-keep class * implements com.clj.fastble.callback.BleWriteCallback { *; }
|
||||||
|
-keep class * implements com.clj.fastble.callback.BleReadCallback { *; }
|
||||||
|
-keep class * implements com.clj.fastble.callback.BleIndicateCallback { *; }
|
||||||
|
-keep class * implements com.clj.fastble.callback.BleRssiCallback { *; }
|
||||||
|
-keep class * implements com.clj.fastble.callback.BleMtuChangedCallback { *; }
|
||||||
|
|
||||||
|
# -------------- 关键核心类额外 keep(单例、控制器) --------------
|
||||||
|
# 说明:BluetoothBLEManager 类不存在于当前 FastBle 代码中,已移除(之前是误加的)
|
||||||
|
-keep class com.clj.fastble.BleManager { *; }
|
||||||
|
-keep class com.clj.fastble.bluetooth.BleBluetooth { *; }
|
||||||
|
-keep class com.clj.fastble.bluetooth.MultipleBluetoothController { *; }
|
||||||
|
-keep class com.clj.fastble.bluetooth.BleConnector { *; }
|
||||||
|
-keep class com.clj.fastble.scan.BleScanner { *; }
|
||||||
|
-keep class com.clj.fastble.scan.BleScanPresenter { *; }
|
||||||
|
-keep class com.clj.fastble.scan.BleScanRuleConfig { *; }
|
||||||
|
-keep class com.clj.fastble.data.BleMsg { *; }
|
||||||
|
-keep class com.clj.fastble.utils.BleLog { *; }
|
||||||
|
|
||||||
|
-dontwarn com.clj.fastble.**
|
||||||
|
-dontwarn android.bluetooth.**
|
||||||
|
-dontwarn java.lang.reflect.**
|
||||||
29
FastBleLib/proguard-rules.pro
vendored
29
FastBleLib/proguard-rules.pro
vendored
@@ -1,17 +1,14 @@
|
|||||||
# Add project specific ProGuard rules here.
|
# ============================================================
|
||||||
# By default, the flags in this file are appended to flags specified
|
# FastBleLib 自身的混淆规则(仅当本模块 minifyEnabled=true 时生效,当前默认 false)
|
||||||
# in D:\development\AppData\sdk/tools/proguard/proguard-android.txt
|
# 实际包名:com.clj.fastble
|
||||||
# You can edit the include path and order by changing the proguardFiles
|
# ============================================================
|
||||||
# directive in build.gradle.
|
|
||||||
#
|
|
||||||
# For more details, see
|
|
||||||
# http://developer.android.com/guide/developing/tools/proguard.html
|
|
||||||
|
|
||||||
# Add any project specific keep options here:
|
# 完全不混淆
|
||||||
|
-keep class com.clj.fastble.** { *; }
|
||||||
# If your project uses WebView with JS, uncomment the following
|
-keepclassmembers class com.clj.fastble.** {
|
||||||
# and specify the fully qualified class name to the JavaScript interface
|
public <init>(...);
|
||||||
# class:
|
<fields>;
|
||||||
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
|
<methods>;
|
||||||
# public *;
|
}
|
||||||
#}
|
-keepattributes Signature,*Annotation*,InnerClasses,EnclosingMethod,RuntimeVisibleAnnotations,SourceFile,LineNumberTable
|
||||||
|
-dontwarn com.clj.fastble.**
|
||||||
|
|||||||
117
app/build.gradle
117
app/build.gradle
@@ -26,17 +26,23 @@ android {
|
|||||||
|
|
||||||
defaultConfig {
|
defaultConfig {
|
||||||
applicationId "com.abbidot.tracker"
|
applicationId "com.abbidot.tracker"
|
||||||
minSdkVersion 23
|
minSdkVersion 24
|
||||||
targetSdkVersion 35
|
targetSdkVersion 35
|
||||||
versionCode 2103
|
versionCode 2400
|
||||||
// versionName "2.1.3"
|
// versionName "2.4.0"
|
||||||
versionName "2.1.3-Beta1"
|
versionName "2.4.0-Beta1"
|
||||||
|
|
||||||
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
||||||
|
|
||||||
ndk {
|
ndk {
|
||||||
//选择要添加的对应 cpu 类型的 .so 库。
|
//选择要添加的对应 cpu 类型的 .so 库。
|
||||||
abiFilters 'armeabi', 'armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64', 'mips', 'mips64'
|
/**
|
||||||
|
* armeabi:Android 4.4 之后基本淘汰,Android7.0 设备几乎不会匹配这个 ABI
|
||||||
|
* mips/mips64:芯片厂商早已停产,市面不存在任何手机使用该架构
|
||||||
|
*/
|
||||||
|
// abiFilters 'armeabi', 'armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64', 'mips', 'mips64'
|
||||||
|
//只保留 64 位架构,解决MMKV2.x,32位进程崩溃问题
|
||||||
|
abiFilters 'arm64-v8a', 'x86_64'
|
||||||
}
|
}
|
||||||
|
|
||||||
manifestPlaceholders = [
|
manifestPlaceholders = [
|
||||||
@@ -47,6 +53,7 @@ android {
|
|||||||
BUGLY_KEY : getKey("BUGLY_KEY"),
|
BUGLY_KEY : getKey("BUGLY_KEY"),
|
||||||
MAPBOX_ACCESS_TOKEN: getKey("MAPBOX_ACCESS_TOKEN"),
|
MAPBOX_ACCESS_TOKEN: getKey("MAPBOX_ACCESS_TOKEN"),
|
||||||
HTTP_REQUEST_KEY : getKey("HTTP_REQUEST_KEY"),
|
HTTP_REQUEST_KEY : getKey("HTTP_REQUEST_KEY"),
|
||||||
|
CARD_RSA_KEY : getKey("CARD_RSA_KEY"),
|
||||||
|
|
||||||
JPUSH_PKGNAME : "${applicationId}",
|
JPUSH_PKGNAME : "${applicationId}",
|
||||||
JPUSH_APPKEY : "c968a96f76fc4f52e0f764ee", //JPush 上注册的包名对应的 Appkey.
|
JPUSH_APPKEY : "c968a96f76fc4f52e0f764ee", //JPush 上注册的包名对应的 Appkey.
|
||||||
@@ -63,6 +70,17 @@ android {
|
|||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//解决mapBox和百度地图libc++_shared.so发生冲突http://www.52im.net/blog-28523-2848.html
|
||||||
|
packagingOptions {
|
||||||
|
pickFirst 'lib/x86_64/libc++_shared.so'
|
||||||
|
pickFirst 'lib/arm64-v8a/libc++_shared.so'
|
||||||
|
pickFirst 'lib/x86/libc++_shared.so'
|
||||||
|
pickFirst 'lib/armeabi-v7a/libc++_shared.so'
|
||||||
|
pickFirst 'lib/armeabi/libc++_shared.so'
|
||||||
|
pickFirst 'lib/mips/libc++_shared.so'
|
||||||
|
pickFirst 'lib/mips64/libc++_shared.so'
|
||||||
|
}
|
||||||
|
|
||||||
// 读取local.properties文件
|
// 读取local.properties文件
|
||||||
Properties properties = new Properties()
|
Properties properties = new Properties()
|
||||||
InputStream inputStream = project.rootProject.file('local.properties').newDataInputStream()
|
InputStream inputStream = project.rootProject.file('local.properties').newDataInputStream()
|
||||||
@@ -111,11 +129,11 @@ android {
|
|||||||
debuggable false
|
debuggable false
|
||||||
jniDebuggable false
|
jniDebuggable false
|
||||||
// 移除无用的资源文件
|
// 移除无用的资源文件
|
||||||
shrinkResources false
|
shrinkResources true
|
||||||
// ZipAlign 优化
|
// ZipAlign 优化
|
||||||
zipAlignEnabled true
|
zipAlignEnabled true
|
||||||
// 设置混淆
|
// 设置混淆
|
||||||
minifyEnabled false
|
minifyEnabled true
|
||||||
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
|
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
|
||||||
signingConfig signingConfigs.release
|
signingConfig signingConfigs.release
|
||||||
}
|
}
|
||||||
@@ -127,6 +145,10 @@ android {
|
|||||||
}
|
}
|
||||||
kotlinOptions {
|
kotlinOptions {
|
||||||
jvmTarget = '17'
|
jvmTarget = '17'
|
||||||
|
freeCompilerArgs += [
|
||||||
|
"-opt-in=kotlin.ExperimentalStdlibApi",
|
||||||
|
"-opt-in=kotlin.RequiresOptIn",
|
||||||
|
]
|
||||||
}
|
}
|
||||||
|
|
||||||
applicationVariants.all { variant ->
|
applicationVariants.all { variant ->
|
||||||
@@ -182,29 +204,32 @@ dependencies {
|
|||||||
// implementation 'com.google.android.material:material:1.10.0'
|
// implementation 'com.google.android.material:material:1.10.0'
|
||||||
// implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
|
// implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
|
||||||
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
|
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
|
||||||
|
implementation 'androidx.appcompat:appcompat:1.6.1'
|
||||||
|
implementation 'com.google.android.material:material:1.10.0'
|
||||||
|
implementation 'androidx.activity:activity:1.8.0'
|
||||||
|
|
||||||
testImplementation 'junit:junit:4.13.2'
|
testImplementation 'junit:junit:4.13.2'
|
||||||
androidTestImplementation 'androidx.test.ext:junit:1.2.1'
|
androidTestImplementation 'androidx.test.ext:junit:1.2.1'
|
||||||
androidTestImplementation 'androidx.test.espresso:espresso-core:3.6.1'
|
androidTestImplementation 'androidx.test.espresso:espresso-core:3.6.1'
|
||||||
|
|
||||||
// Android官方库
|
// Android官方库
|
||||||
implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
|
implementation 'androidx.constraintlayout:constraintlayout:2.2.1'
|
||||||
implementation 'androidx.arch.core:core-common:2.2.0'
|
implementation 'androidx.arch.core:core-common:2.2.0'
|
||||||
implementation 'androidx.arch.core:core-runtime:2.2.0'
|
implementation 'androidx.arch.core:core-runtime:2.2.0'
|
||||||
implementation 'androidx.activity:activity-ktx:1.9.3'
|
implementation 'androidx.activity:activity-ktx:1.10.1'
|
||||||
implementation 'androidx.fragment:fragment-ktx:1.5.6'
|
implementation 'androidx.fragment:fragment-ktx:1.8.9'
|
||||||
implementation 'androidx.annotation:annotation:1.9.1'
|
implementation 'androidx.annotation:annotation:1.10.0'
|
||||||
implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.8.7'
|
implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.10.0'
|
||||||
implementation 'androidx.lifecycle:lifecycle-livedata-ktx:2.8.7'
|
implementation 'androidx.lifecycle:lifecycle-livedata-ktx:2.10.0'
|
||||||
implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.8.7'
|
implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.10.0'
|
||||||
|
|
||||||
implementation 'androidx.room:room-runtime:2.5.2'
|
implementation 'androidx.room:room-runtime:2.8.4'
|
||||||
// implementation 'androidx.room:room-rxjava2:2.3.0'
|
// implementation 'androidx.room:room-rxjava2:2.3.0'
|
||||||
implementation 'androidx.room:room-ktx:2.5.2'
|
implementation 'androidx.room:room-ktx:2.8.4'
|
||||||
kapt 'androidx.room:room-compiler:2.5.2'
|
kapt 'androidx.room:room-compiler:2.8.4'
|
||||||
//hilt依赖注入https://mvnrepository.com/artifact/com.google.dagger/hilt-android-gradle-plugin
|
//hilt依赖注入https://mvnrepository.com/artifact/com.google.dagger/hilt-android-gradle-plugin
|
||||||
implementation "com.google.dagger:hilt-android:2.57"
|
implementation "com.google.dagger:hilt-android:2.57.2"
|
||||||
kapt "com.google.dagger:hilt-android-compiler:2.57"
|
kapt "com.google.dagger:hilt-android-compiler:2.57.2"
|
||||||
|
|
||||||
//Android UI 开发效率的 UI 库https://github.com/Tencent/QMUI_Android
|
//Android UI 开发效率的 UI 库https://github.com/Tencent/QMUI_Android
|
||||||
implementation 'com.qmuiteam:qmui:2.1.0'
|
implementation 'com.qmuiteam:qmui:2.1.0'
|
||||||
@@ -221,14 +246,14 @@ dependencies {
|
|||||||
implementation "io.coil-kt:coil-gif:1.4.0"//支持GIF
|
implementation "io.coil-kt:coil-gif:1.4.0"//支持GIF
|
||||||
|
|
||||||
//lottie动画https://github.com/airbnb/lottie-android
|
//lottie动画https://github.com/airbnb/lottie-android
|
||||||
implementation 'com.airbnb.android:lottie:6.6.7'
|
implementation 'com.airbnb.android:lottie:6.7.1'
|
||||||
//https://github.com/CymChad/BaseRecyclerViewAdapterHelper
|
//https://github.com/CymChad/BaseRecyclerViewAdapterHelper
|
||||||
implementation 'com.github.CymChad:BaseRecyclerViewAdapterHelper:3.0.11'
|
implementation "io.github.cymchad:BaseRecyclerViewAdapterHelper:3.0.14"
|
||||||
//升级recyclerview,因BaseRecyclerViewAdapterHelper item点击事件是使用1.2.0
|
//升级recyclerview,因BaseRecyclerViewAdapterHelper item点击事件是使用1.2.0
|
||||||
implementation 'androidx.recyclerview:recyclerview:1.3.1'
|
implementation 'androidx.recyclerview:recyclerview:1.4.0'
|
||||||
|
|
||||||
//谷歌地图
|
//谷歌地图
|
||||||
implementation 'com.google.android.gms:play-services-maps:19.2.0'
|
implementation 'com.google.android.gms:play-services-maps:20.0.0'
|
||||||
//地图操作工具类,添加标记等https://github.com/googlemaps/android-maps-utils
|
//地图操作工具类,添加标记等https://github.com/googlemaps/android-maps-utils
|
||||||
// implementation 'com.google.maps.android:android-maps-utils:2.3.0'
|
// implementation 'com.google.maps.android:android-maps-utils:2.3.0'
|
||||||
// implementation 'com.google.maps.android:maps-utils-ktx:3.2.1'
|
// implementation 'com.google.maps.android:maps-utils-ktx:3.2.1'
|
||||||
@@ -245,21 +270,24 @@ dependencies {
|
|||||||
//mapbox地图https://github.com/mapbox/mapbox-maps-android
|
//mapbox地图https://github.com/mapbox/mapbox-maps-android
|
||||||
// implementation 'com.mapbox.maps:android:10.2.0'
|
// implementation 'com.mapbox.maps:android:10.2.0'
|
||||||
//https://github.com/mapbox/mapbox-search-android
|
//https://github.com/mapbox/mapbox-search-android
|
||||||
//用mapbox搜索SDK,地理编码 有搜索ui组件,已包括mapbox-search-android架包
|
/**用mapbox搜索SDK,地理编码 有搜索ui组件,已包括mapbox-search-android架包
|
||||||
implementation "com.mapbox.search:mapbox-search-android-ui:2.5.1"
|
* 支持 16 KB 页面大小
|
||||||
|
* https://docs.mapbox.com/android/search/guides/install/#step-2-add-search-sdk-dependencies
|
||||||
|
*/
|
||||||
|
implementation "com.mapbox.search:mapbox-search-android-ui-ndk27:2.22.0"
|
||||||
// mapbox搜索SDK,地理编码 没有搜索ui组件
|
// mapbox搜索SDK,地理编码 没有搜索ui组件
|
||||||
// implementation "com.mapbox.search:mapbox-search-android:1.0.0-beta.25"
|
// implementation "com.mapbox.search:mapbox-search-android:1.0.0-beta.25"
|
||||||
//用于计算距离https://docs.mapbox.com/android/java/guides/turf/#available-methods
|
//用于计算距离https://docs.mapbox.com/android/java/guides/#installation
|
||||||
implementation 'com.mapbox.mapboxsdk:mapbox-sdk-turf:6.15.0'
|
implementation 'com.mapbox.mapboxsdk:mapbox-sdk-turf:7.10.0'
|
||||||
//用于计算路线规划信息https://docs.mapbox.com/android/java/examples/dashed-directions-line/
|
//用于计算路线规划信息、地理编码
|
||||||
implementation 'com.mapbox.mapboxsdk:mapbox-sdk-services:6.3.0'
|
implementation 'com.mapbox.mapboxsdk:mapbox-sdk-services:7.10.0'
|
||||||
|
|
||||||
// 权限请求框架:https://github.com/getActivity/XXPermissions
|
// 权限请求框架:https://github.com/getActivity/XXPermissions
|
||||||
implementation 'com.github.getActivity:XXPermissions:25.2'
|
implementation 'com.github.getActivity:XXPermissions:28.2'
|
||||||
// 吐司框架:https://github.com/getActivity/ToastUtils
|
// 吐司框架:https://github.com/getActivity/ToastUtils
|
||||||
implementation 'com.github.getActivity:Toaster:13.2'
|
implementation 'com.github.getActivity:Toaster:15.0'
|
||||||
// 日志调试框架:https://github.com/getActivity/Logcat ,在debug模式下集成
|
// 日志调试框架:https://github.com/getActivity/Logcat ,在debug模式下集成
|
||||||
debugImplementation 'com.github.getActivity:Logcat:12.3'
|
debugImplementation 'com.github.getActivity:Logcat:13.0'
|
||||||
|
|
||||||
// PictureSelector图片选择器,需要compileSdkVersion=31 https://github.com/LuckSiege/PictureSelector
|
// PictureSelector图片选择器,需要compileSdkVersion=31 https://github.com/LuckSiege/PictureSelector
|
||||||
// implementation 'io.github.lucksiege:pictureselector:v3.0.3'
|
// implementation 'io.github.lucksiege:pictureselector:v3.0.3'
|
||||||
@@ -268,14 +296,14 @@ dependencies {
|
|||||||
//压缩图片 https://github.com/zetbaitsu/Compressor
|
//压缩图片 https://github.com/zetbaitsu/Compressor
|
||||||
implementation 'id.zelory:compressor:3.0.1'
|
implementation 'id.zelory:compressor:3.0.1'
|
||||||
//图片裁剪功能https://github.com/CanHub/Android-Image-Cropper
|
//图片裁剪功能https://github.com/CanHub/Android-Image-Cropper
|
||||||
implementation 'com.vanniktech:android-image-cropper:4.6.0'
|
implementation 'com.vanniktech:android-image-cropper:4.7.0'
|
||||||
|
|
||||||
//******************************************极光推送start*****************************************************
|
//******************************************极光推送start*****************************************************
|
||||||
// https://docs.jiguang.cn/jpush/client/Android/android_guide
|
// https://docs.jiguang.cn/jpush/client/Android/android_guide
|
||||||
// implementation 'cn.jiguang.sdk:jcore:3.1.2' // 此处以JCore 2.7.2 版本为例。
|
// implementation 'cn.jiguang.sdk:jcore:3.1.2' // 此处以JCore 2.7.2 版本为例。
|
||||||
// implementation 'cn.jiguang.sdk:jpush:4.6.0' // 此处以JPush 4.0.0 版本为例
|
// implementation 'cn.jiguang.sdk:jpush:4.6.0' // 此处以JPush 4.0.0 版本为例
|
||||||
implementation 'cn.jiguang.sdk:jcore-google:5.1.0' // 此处以JCore 2.7.2 版本为例。
|
implementation 'cn.jiguang.sdk:jcore-google:5.3.7' // 此处以JCore 2.7.2 版本为例。
|
||||||
implementation 'cn.jiguang.sdk:jpush-google:5.8.0' // 此处以JPush 4.0.0 版本为例
|
implementation 'cn.jiguang.sdk:jpush-google:6.0.7' // 此处以JPush 4.0.0 版本为例
|
||||||
// 接入华为厂商
|
// 接入华为厂商
|
||||||
// implementation 'com.huawei.hms:push:6.1.0.300'
|
// implementation 'com.huawei.hms:push:6.1.0.300'
|
||||||
// implementation 'cn.jiguang.sdk.plugin:huawei:4.0.0'// 极光厂商插件版本与接入 JPush 版本保持一致,下同
|
// implementation 'cn.jiguang.sdk.plugin:huawei:4.0.0'// 极光厂商插件版本与接入 JPush 版本保持一致,下同
|
||||||
@@ -294,7 +322,7 @@ dependencies {
|
|||||||
//******************************************极光推送end*******************************************************
|
//******************************************极光推送end*******************************************************
|
||||||
|
|
||||||
//其中指代最新Bugly SDK版本号,也可以指定明确的版本号,例如4.0.0
|
//其中指代最新Bugly SDK版本号,也可以指定明确的版本号,例如4.0.0
|
||||||
implementation 'com.tencent.bugly:crashreport:4.1.9.3'
|
// implementation 'com.tencent.bugly:crashreport:4.1.9.3'
|
||||||
//其中latest.release指代最新Bugly NDK版本号,也可以指定明确的版本号,例如3.9.2
|
//其中latest.release指代最新Bugly NDK版本号,也可以指定明确的版本号,例如3.9.2
|
||||||
// implementation 'com.tencent.bugly:nativecrashreport:3.9.2'
|
// implementation 'com.tencent.bugly:nativecrashreport:3.9.2'
|
||||||
|
|
||||||
@@ -306,24 +334,27 @@ dependencies {
|
|||||||
implementation 'com.stripe:stripe-android:20.27.0'
|
implementation 'com.stripe:stripe-android:20.27.0'
|
||||||
|
|
||||||
//百度地图基础定位组件
|
//百度地图基础定位组件
|
||||||
implementation 'com.baidu.lbsyun:BaiduMapSDK_Location:9.6.5.1'
|
implementation 'com.baidu.lbsyun:BaiduMapSDK_Location:9.6.7'
|
||||||
//地图组件
|
//地图组件
|
||||||
implementation 'com.baidu.lbsyun:BaiduMapSDK_Map:7.5.2'
|
implementation 'com.baidu.lbsyun:BaiduMapSDK_Map:7.6.7'
|
||||||
//检索组件
|
//检索组件
|
||||||
implementation 'com.baidu.lbsyun:BaiduMapSDK_Search:7.5.2'
|
implementation 'com.baidu.lbsyun:BaiduMapSDK_Search:7.6.7'
|
||||||
//工具组件
|
//工具组件
|
||||||
implementation 'com.baidu.lbsyun:BaiduMapSDK_Util:7.5.2'
|
implementation 'com.baidu.lbsyun:BaiduMapSDK_Util:7.6.7'
|
||||||
|
|
||||||
//微信登录、支付
|
//微信登录、支付
|
||||||
implementation 'com.tencent.mm.opensdk:wechat-sdk-android:+'
|
implementation 'com.tencent.mm.opensdk:wechat-sdk-android:+'
|
||||||
//支付宝支付
|
//支付宝支付
|
||||||
implementation 'com.alipay.sdk:alipaysdk-android:+@aar'
|
implementation 'com.alipay.sdk:alipaysdk-android:+@aar'
|
||||||
|
|
||||||
//dfu升级https://github.com/NordicSemiconductor/Android-DFU-Library
|
//g30 dfu升级https://github.com/NordicSemiconductor/Android-DFU-Library
|
||||||
implementation 'no.nordicsemi.android:dfu:2.9.0'
|
implementation 'no.nordicsemi.android:dfu:2.10.1'
|
||||||
|
//g40 dfu升级https://github.com/nordicsemi/Android-nRF-Connect-Device-Manager?tab=readme-ov-file#migration-from-the-original-repo
|
||||||
|
// implementation 'no.nordicsemi.android:mcumgr-core:2.7.4'
|
||||||
|
implementation 'no.nordicsemi.android:mcumgr-ble:2.7.4'
|
||||||
|
|
||||||
//适配Android 12以下SplashScreen启动动画,闪屏图片
|
//适配Android 12以下SplashScreen启动动画,闪屏图片
|
||||||
implementation 'androidx.core:core-splashscreen:1.0.1'
|
implementation 'androidx.core:core-splashscreen:1.2.0'
|
||||||
//优雅、万能自定义日历https://github.com/huanghaibin-dev/CalendarView
|
//优雅、万能自定义日历https://github.com/huanghaibin-dev/CalendarView
|
||||||
// implementation 'com.haibin:calendarview:3.7.1'
|
// implementation 'com.haibin:calendarview:3.7.1'
|
||||||
//https://github.com/angcyo/CalendarView
|
//https://github.com/angcyo/CalendarView
|
||||||
|
|||||||
665
app/proguard-rules.pro
vendored
665
app/proguard-rules.pro
vendored
@@ -14,21 +14,672 @@
|
|||||||
|
|
||||||
# Uncomment this to preserve the line number information for
|
# Uncomment this to preserve the line number information for
|
||||||
# debugging stack traces.
|
# debugging stack traces.
|
||||||
#-keepattributes SourceFile,LineNumberTable
|
-keepattributes SourceFile,LineNumberTable
|
||||||
|
|
||||||
# If you keep the line number information, uncomment this to
|
# If you keep the line number information, uncomment this to
|
||||||
# hide the original source file name.
|
# hide the original source file name.
|
||||||
#-renamesourcefileattribute SourceFile
|
#-renamesourcefileattribute SourceFile
|
||||||
|
|
||||||
|
# ==============================
|
||||||
|
# 基础混淆配置
|
||||||
|
# ==============================
|
||||||
|
-optimizationpasses 5
|
||||||
|
-dontusemixedcaseclassnames
|
||||||
|
-dontskipnonpubliclibraryclasses
|
||||||
|
-dontskipnonpubliclibraryclassmembers
|
||||||
|
-verbose
|
||||||
|
-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*
|
||||||
|
|
||||||
|
# 保留注解、泛型、异常信息(反射必备)
|
||||||
|
-keepattributes *Annotation*,Signature,Exception
|
||||||
|
-keepattributes InnerClasses,EnclosingMethod
|
||||||
|
# 单独再声明一次,确保泛型签名在 R8 full mode 下不被过度优化(修复 ParameterizedType cast 错误)
|
||||||
|
-keepattributes Signature
|
||||||
|
-keepattributes *Annotation*
|
||||||
|
-keepattributes RuntimeVisibleAnnotations,RuntimeVisibleParameterAnnotations,AnnotationDefault
|
||||||
|
|
||||||
#禁用所有优化规则,查看混淆后 APK是否可以正常工作
|
# ==============================
|
||||||
-dontoptimize
|
# Android 基础组件保护
|
||||||
|
# ==============================
|
||||||
|
-keep public class * extends android.app.Activity
|
||||||
|
-keep public class * extends android.app.Service
|
||||||
|
-keep public class * extends android.content.BroadcastReceiver
|
||||||
|
-keep public class * extends android.content.ContentProvider
|
||||||
|
-keep public class * extends android.app.backup.BackupAgentHelper
|
||||||
|
-keep public class * extends android.preference.Preference
|
||||||
|
|
||||||
# Please add these rules to your existing keep rules in order to suppress warnings.
|
# 保留 Activity 中 onClick 属性引用方法名(xml 里直接引用)
|
||||||
# This is generated automatically by the Android Gradle plugin.
|
-keepclassmembers public class * extends android.app.Activity {
|
||||||
-dontwarn com.baidu.mapsdkplatform.comapi.util.SysOSAPI
|
public void *(android.view.View);
|
||||||
|
}
|
||||||
|
|
||||||
|
# ==============================
|
||||||
|
# R 文件资源 ID 不混淆
|
||||||
|
# ==============================
|
||||||
|
-keep class **.R$* { *; }
|
||||||
|
|
||||||
|
# ==============================
|
||||||
|
# Parcelable 和 Serializable 支持
|
||||||
|
# ==============================
|
||||||
|
-keep class * implements android.os.Parcelable {
|
||||||
|
public static final android.os.Parcelable$Creator *;
|
||||||
|
}
|
||||||
|
-keepclassmembers class * implements java.io.Serializable {
|
||||||
|
static final long serialVersionUID;
|
||||||
|
private static final java.io.ObjectStreamField[] serialPersistentFields;
|
||||||
|
!static !transient <fields>;
|
||||||
|
private void writeObject(java.io.ObjectOutputStream);
|
||||||
|
private void readObject(java.io.ObjectInputStream);
|
||||||
|
java.lang.Object writeReplace();
|
||||||
|
java.lang.Object readResolve();
|
||||||
|
}
|
||||||
|
|
||||||
|
# ==============================
|
||||||
|
# Kotlin 标准库(只保留必要部分,避免全量 keep 造成包体积大)
|
||||||
|
# ==============================
|
||||||
|
-keep class kotlin.Metadata { *; }
|
||||||
|
-dontwarn kotlin.**
|
||||||
|
-keepclassmembers class **$WhenMappings {
|
||||||
|
<fields>;
|
||||||
|
}
|
||||||
|
|
||||||
|
# ==============================
|
||||||
|
# 网络层 Retrofit + Gson(核心反射依赖,必须保留)
|
||||||
|
# 修复:java.lang.Class cannot be cast to java.lang.reflect.ParameterizedType
|
||||||
|
# ==============================
|
||||||
|
# BaseNetworkApi 与 NetworkApi:保留继承关系及泛型参数(INetworkService 实际类型)
|
||||||
|
-keep class com.abbidot.baselibrary.network.base.BaseNetworkApi { *; }
|
||||||
|
-keep class * extends com.abbidot.baselibrary.network.base.BaseNetworkApi { *; }
|
||||||
|
-keep interface com.abbidot.baselibrary.network.base.IService { *; }
|
||||||
|
-keep class com.abbidot.tracker.retrofit2.NetworkApi { *; }
|
||||||
|
# 显式保留 NetworkApi -> BaseNetworkApi<INetworkService> 的泛型签名
|
||||||
|
-keep,allowshrinking class * extends com.abbidot.baselibrary.network.base.BaseNetworkApi
|
||||||
|
# BaseResponse<T> 网络响应泛型基类(Gson 反序列化核心)
|
||||||
|
-keep class com.abbidot.baselibrary.network.base.BaseResponse { *; }
|
||||||
|
-keepclassmembers class * extends com.abbidot.baselibrary.network.base.BaseResponse {
|
||||||
|
<fields>;
|
||||||
|
<init>(...);
|
||||||
|
}
|
||||||
|
# baselibrary 网络拦截器/异常类(Gson TypeAdapter & OkHttp Interceptor)
|
||||||
|
-keep class com.abbidot.baselibrary.network.interceptor.** { *; }
|
||||||
|
-keep class com.abbidot.baselibrary.network.exception.** { *; }
|
||||||
|
-keep class com.abbidot.baselibrary.util.** { *; }
|
||||||
|
# Retrofit 服务接口 INetworkService:所有方法、注解、参数不可混淆(动态代理反射)
|
||||||
|
-keep interface com.abbidot.tracker.retrofit2.INetworkService { *; }
|
||||||
|
-keepclassmembers interface com.abbidot.tracker.retrofit2.INetworkService {
|
||||||
|
public <methods>;
|
||||||
|
@retrofit2.http.* <methods>;
|
||||||
|
}
|
||||||
|
# Retrofit + OkHttp 官方推荐规则
|
||||||
|
-keep,allowobfuscation,allowshrinking interface retrofit2.Call
|
||||||
|
-keep,allowobfuscation,allowshrinking class retrofit2.Response
|
||||||
|
-keep,allowobfuscation,allowshrinking class kotlin.coroutines.Continuation
|
||||||
|
-if interface * { @retrofit2.http.* <methods>; }
|
||||||
|
-keep,allowobfuscation interface * { <methods>; }
|
||||||
|
-dontwarn org.codehaus.mojo.animal_sniffer.*
|
||||||
|
-dontwarn okhttp3.internal.platform.**
|
||||||
|
-dontwarn org.conscrypt.**
|
||||||
|
-dontwarn org.bouncycastle.**
|
||||||
|
-dontwarn org.openjsse.**
|
||||||
|
|
||||||
|
# Gson 官方推荐规则:TypeToken 反射、匿名内部类泛型、字段保留
|
||||||
|
-keep class com.google.gson.** { *; }
|
||||||
|
-dontwarn com.google.gson.**
|
||||||
|
# 保持 Gson TypeToken 及其子类(防止 object : TypeToken<...>() {} 的泛型签名被擦除)
|
||||||
|
-keep class com.google.gson.reflect.TypeToken { *; }
|
||||||
|
-keep class * extends com.google.gson.reflect.TypeToken { *; }
|
||||||
|
-keepclassmembers class * extends com.google.gson.reflect.TypeToken {
|
||||||
|
<init>(...);
|
||||||
|
java.lang.reflect.Type getType();
|
||||||
|
}
|
||||||
|
# 保留 @SerializedName / @Expose 标记的字段
|
||||||
|
-keepclassmembers,allowshrinking,allowobfuscation class * {
|
||||||
|
@com.google.gson.annotations.SerializedName <fields>;
|
||||||
|
@com.google.gson.annotations.Expose <fields>;
|
||||||
|
}
|
||||||
|
-keepnames class com.google.gson.internal.** { *; }
|
||||||
|
-keep class com.google.gson.internal.LinkedTreeMap { *; }
|
||||||
|
|
||||||
|
# ==============================
|
||||||
|
# 项目实体类/数据类 —— 这是核心,开启混淆后必崩的关键!!
|
||||||
|
# ==============================
|
||||||
|
-keep class com.abbidot.tracker.bean.** { *; }
|
||||||
|
-keep class com.abbidot.tracker.data.** { *; }
|
||||||
|
-keep class com.abbidot.tracker.model.** { *; }
|
||||||
|
-keep class com.abbidot.tracker.entity.** { *; }
|
||||||
|
|
||||||
|
# kotlinx-parcelize:@Parcelize 注解在编译期生成 Parcelable 实现
|
||||||
|
# 注意:@Parcelize 是 SOURCE/BINARY 级注解,运行时不存在,因此禁止写 -keep @kotlinx.parcelize.Parcelize
|
||||||
|
# 直接保留所有 Parcelable 实现类 + kotlin-parcelize 生成的 $Creator/$Parceler 内部类即可
|
||||||
|
-keep class * implements android.os.Parcelable { *; }
|
||||||
|
-keepclassmembers class * implements android.os.Parcelable {
|
||||||
|
public static final android.os.Parcelable$Creator *;
|
||||||
|
public static final android.os.Parcelable$ClassLoaderCreator *;
|
||||||
|
<init>(android.os.Parcel);
|
||||||
|
<init>(android.os.Parcel, java.lang.ClassLoader);
|
||||||
|
void writeToParcel(android.os.Parcel, int);
|
||||||
|
int describeContents();
|
||||||
|
}
|
||||||
|
# kotlin-parcelize 运行时生成的内部辅助类($Creator、$Parceler 等)
|
||||||
|
-keep class **$Creator { *; }
|
||||||
|
-keep class **$Parceler { *; }
|
||||||
|
-keepclassmembers class **$Creator { <fields>; <methods>; }
|
||||||
|
-keepclassmembers class **$Parceler { <fields>; <methods>; }
|
||||||
|
-dontwarn kotlinx.parcelize.**
|
||||||
|
|
||||||
|
# BaseDiffBean:列表 DiffUtil 比较基类(PetBean 等继承)
|
||||||
|
-keep class com.abbidot.tracker.base.BaseDiffBean { *; }
|
||||||
|
-keepclassmembers class * extends com.abbidot.tracker.base.BaseDiffBean {
|
||||||
|
<init>(...);
|
||||||
|
<fields>;
|
||||||
|
<methods>;
|
||||||
|
}
|
||||||
|
|
||||||
|
# ==============================
|
||||||
|
# ViewModel:by viewModels() / Hilt / SavedStateHandle 反射创建
|
||||||
|
# ==============================
|
||||||
|
-keep class * extends androidx.lifecycle.ViewModel { *; }
|
||||||
|
-keepclassmembers class * extends androidx.lifecycle.ViewModel {
|
||||||
|
public <init>(...);
|
||||||
|
protected <init>(...);
|
||||||
|
<fields>;
|
||||||
|
<methods>;
|
||||||
|
}
|
||||||
|
# ViewModelProvider.Factory:反射创建 ViewModel 的工厂接口(内部类用 $ 分隔)
|
||||||
|
-keep class * implements androidx.lifecycle.ViewModelProvider$Factory { *; }
|
||||||
|
-keepclassmembers class * implements androidx.lifecycle.ViewModelProvider$Factory {
|
||||||
|
public <init>(...);
|
||||||
|
<fields>;
|
||||||
|
<methods>;
|
||||||
|
}
|
||||||
|
# SavedStateHandle:ViewModel 构造参数 SavedStateHandle 创建器
|
||||||
|
-keep class * implements androidx.lifecycle.SavedStateViewModelFactory$** { *; }
|
||||||
|
-keep class androidx.lifecycle.SavedStateHandle { *; }
|
||||||
|
|
||||||
|
# ==============================
|
||||||
|
# Kotlin 协程 / suspend 函数:防止挂起函数签名被 R8 过度优化
|
||||||
|
# ==============================
|
||||||
|
-keep class kotlin.coroutines.Continuation { *; }
|
||||||
|
-keep class kotlin.coroutines.intrinsics.** { *; }
|
||||||
|
-keep class kotlinx.coroutines.** { *; }
|
||||||
|
-keepclassmembers class kotlinx.coroutines.** {
|
||||||
|
<fields>;
|
||||||
|
<methods>;
|
||||||
|
}
|
||||||
|
-dontwarn kotlinx.coroutines.**
|
||||||
|
-dontwarn kotlin.coroutines.**
|
||||||
|
|
||||||
|
# ==============================
|
||||||
|
# Kotlin 伴生对象 / 单例 INSTANCE:ViewUtil.instance / SRBleUtil.instance / ConstantString.Companion 等
|
||||||
|
# ==============================
|
||||||
|
-keepclassmembers class **$Companion {
|
||||||
|
<fields>;
|
||||||
|
<methods>;
|
||||||
|
public static final *;
|
||||||
|
static *;
|
||||||
|
}
|
||||||
|
-keep class **$Companion { *; }
|
||||||
|
-keepclassmembers class * {
|
||||||
|
public static final ** INSTANCE;
|
||||||
|
public static final ** Companion;
|
||||||
|
public static ** getINSTANCE();
|
||||||
|
public static ** getCompanion();
|
||||||
|
}
|
||||||
|
|
||||||
|
# ==============================
|
||||||
|
# 工具类(核心:ViewUtil/Util/SRBleUtil 等 —— 所有页面都在调用,不能混淆!!
|
||||||
|
# ==============================
|
||||||
|
-keep class com.abbidot.tracker.util.** { *; }
|
||||||
|
-keepclassmembers class com.abbidot.tracker.util.** {
|
||||||
|
public <init>(...);
|
||||||
|
<fields>;
|
||||||
|
<methods>;
|
||||||
|
public static final *;
|
||||||
|
static *;
|
||||||
|
}
|
||||||
|
|
||||||
|
# ==============================
|
||||||
|
# 项目常量类(ConstantString 等:Intent extra key、MMKVKey、事件 key 等)
|
||||||
|
# ==============================
|
||||||
|
-keep class com.abbidot.tracker.constant.** { *; }
|
||||||
|
-keepclassmembers class com.abbidot.tracker.constant.** {
|
||||||
|
public static final *;
|
||||||
|
<fields>;
|
||||||
|
<methods>;
|
||||||
|
}
|
||||||
|
|
||||||
|
# ==============================
|
||||||
|
# 自定义 View/控件(37个:TrackLineView、VerifyEditText、MyBluetoothAnimView 等,所有 XML inflate)
|
||||||
|
# ==============================
|
||||||
|
-keep class com.abbidot.tracker.widget.** { *; }
|
||||||
|
-keepclassmembers class com.abbidot.tracker.widget.** {
|
||||||
|
public <init>(android.content.Context);
|
||||||
|
public <init>(android.content.Context, android.util.AttributeSet);
|
||||||
|
public <init>(android.content.Context, android.util.AttributeSet, int);
|
||||||
|
public <init>(android.content.Context, android.util.AttributeSet, int, int);
|
||||||
|
public <init>(...);
|
||||||
|
<fields>;
|
||||||
|
<methods>;
|
||||||
|
void set*(***);
|
||||||
|
*** get*();
|
||||||
|
}
|
||||||
|
|
||||||
|
# ==============================
|
||||||
|
# ViewBinding
|
||||||
|
# ==============================
|
||||||
|
-keep class com.abbidot.tracker.databinding.** { *; }
|
||||||
|
|
||||||
|
# ==============================
|
||||||
|
# Hilt 依赖注入
|
||||||
|
# ==============================
|
||||||
|
-keep class dagger.hilt.** { *; }
|
||||||
|
-keep @dagger.hilt.android.lifecycle.HiltViewModel class * { *; }
|
||||||
|
-keep @dagger.hilt.android.AndroidEntryPoint class * { *; }
|
||||||
|
-keep @dagger.Module class * { *; }
|
||||||
|
-keep @dagger.hilt.EntryPoint class * { *; }
|
||||||
|
|
||||||
|
# ==============================
|
||||||
|
# Room 数据库
|
||||||
|
# ==============================
|
||||||
|
-keep class * extends androidx.room.RoomDatabase { *; }
|
||||||
|
-keep @androidx.room.Entity class * { *; }
|
||||||
|
-keep @androidx.room.Dao interface * { *; }
|
||||||
|
|
||||||
|
# ==============================
|
||||||
|
# 第三方库规则(仅保留不能被混淆的 SDK —— 多数自带 consumer-rules 的就不重复写)
|
||||||
|
# ==============================
|
||||||
|
|
||||||
|
# —— Coil 图片加载(注意:包名是 coil(不是 io.coil)——
|
||||||
|
-keep class coil.** { *; }
|
||||||
|
-dontwarn coil.**
|
||||||
|
|
||||||
|
# —— Lottie 动画(自带 consumer rules,保险起见仍保留关键规则
|
||||||
|
-keep class com.airbnb.lottie.** { *; }
|
||||||
|
-dontwarn com.airbnb.lottie.**
|
||||||
|
|
||||||
|
# —— BaseRecyclerViewAdapterHelper(BRVAH 3.x:BaseViewHolder 在 viewholder 子包)
|
||||||
|
-keep class com.chad.library.adapter.** { *; }
|
||||||
|
-keep public class * extends com.chad.library.adapter.base.BaseQuickAdapter
|
||||||
|
-keep public class * extends com.chad.library.adapter.base.viewholder.BaseViewHolder
|
||||||
|
|
||||||
|
# —— QMUI UI 库(官方推荐规则)
|
||||||
|
-keep class com.qmuiteam.** { *; }
|
||||||
|
-dontwarn com.qmuiteam.**
|
||||||
|
|
||||||
|
# —— Mapbox(自带 consumer rules
|
||||||
|
|
||||||
|
# —— 百度地图/百度定位(官方要求全量 keep)
|
||||||
|
-keep class com.baidu.** { *; }
|
||||||
|
-keep class vi.com.gdi.bgl.android.** { *; }
|
||||||
|
-dontwarn com.baidu.**
|
||||||
|
|
||||||
|
# —— 极光推送(官方要求全量 keep)
|
||||||
|
-keep class cn.jiguang.** { *; }
|
||||||
|
-dontwarn cn.jiguang.**
|
||||||
|
|
||||||
|
# —— Stripe 支付(自带 consumer rules)
|
||||||
|
|
||||||
|
# —— Braintree / PayPal 支付(自带 consumer rules)
|
||||||
|
|
||||||
|
# —— 微信 SDK(官方要求)
|
||||||
|
-keep class com.tencent.mm.opensdk.** { *; }
|
||||||
|
-keep class com.tencent.wxop.** { *; }
|
||||||
|
-keep class com.tencent.mm.sdk.** { *; }
|
||||||
|
|
||||||
|
# —— 支付宝 SDK(官方要求全量 keep)
|
||||||
|
-keep class com.alipay.** { *; }
|
||||||
|
-dontwarn com.alipay.**
|
||||||
|
|
||||||
|
# —— Nordic DFU 升级(自带 consumer rules)
|
||||||
|
-keep class no.nordicsemi.android.** { *; }
|
||||||
|
-dontwarn no.nordicsemi.android.**
|
||||||
|
|
||||||
|
# —— XXPermissions / Toaster(官方推荐规则)
|
||||||
|
-keep class com.hjq.permissions.** { *; }
|
||||||
|
-keep class com.hjq.toast.** { *; }
|
||||||
|
-dontwarn com.hjq.permissions.**
|
||||||
|
-dontwarn com.hjq.toast.**
|
||||||
|
|
||||||
|
# —— daimajia AndroidViewAnimations(R8 missing_rules 自动生成:引用了 Android 不存在的可选分支)
|
||||||
-dontwarn com.daimajia.easing.Glider
|
-dontwarn com.daimajia.easing.Glider
|
||||||
-dontwarn com.daimajia.easing.Skill
|
-dontwarn com.daimajia.easing.Skill
|
||||||
|
|
||||||
-keep class android.*
|
# ==============================
|
||||||
|
# 自定义 View / XML LayoutInflater 反射实例化保留(核心!)
|
||||||
|
# 修复 InflateException / InvocationTargetException(CalendarView 就是因此崩溃)
|
||||||
|
# ==============================
|
||||||
|
#
|
||||||
|
# 规则 1:所有继承 android.view.View 的类必须保留 (Context, AttributeSet) 构造函数
|
||||||
|
# LayoutInflater 通过反射调用此构造函数从 XML 创建 View
|
||||||
|
-keepclassmembers class * extends android.view.View {
|
||||||
|
public <init>(android.content.Context, android.util.AttributeSet);
|
||||||
|
public <init>(android.content.Context, android.util.AttributeSet, int);
|
||||||
|
public <init>(android.content.Context, android.util.AttributeSet, int, int);
|
||||||
|
void set*(***);
|
||||||
|
*** get*();
|
||||||
|
}
|
||||||
|
#
|
||||||
|
# 规则 2:所有继承 ViewGroup / Layout / 常用容器的类同样保留构造
|
||||||
|
-keepclassmembers class * extends android.view.ViewGroup {
|
||||||
|
public <init>(android.content.Context, android.util.AttributeSet);
|
||||||
|
public <init>(android.content.Context, android.util.AttributeSet, int);
|
||||||
|
public <init>(android.content.Context, android.util.AttributeSet, int, int);
|
||||||
|
}
|
||||||
|
#
|
||||||
|
# 规则 3:CalendarView(angcyo fork 版,XML 中包名仍然是 com.haibin.calendarview)
|
||||||
|
# 本包下所有自定义 View、内部类、attrs 属性全部保留
|
||||||
|
-keep class com.haibin.calendarview.** { *; }
|
||||||
|
-keepclassmembers class com.haibin.calendarview.** {
|
||||||
|
public <init>(...);
|
||||||
|
<fields>;
|
||||||
|
<methods>;
|
||||||
|
}
|
||||||
|
-dontwarn com.haibin.calendarview.**
|
||||||
|
#
|
||||||
|
# 规则 4:项目内部自定义 View 包(TrackLineView、VerifyEditText、RingChartView 等)
|
||||||
|
# 包路径:com.abbidot.tracker.widget.**
|
||||||
|
-keep class com.abbidot.tracker.widget.** { *; }
|
||||||
|
-keepclassmembers class com.abbidot.tracker.widget.** {
|
||||||
|
public <init>(...);
|
||||||
|
<fields>;
|
||||||
|
<methods>;
|
||||||
|
}
|
||||||
|
#
|
||||||
|
# 规则 5:AndroidX FlexboxLayout(自定义 ViewGroup)
|
||||||
|
-keep class com.google.android.flexbox.** { *; }
|
||||||
|
-keepclassmembers class com.google.android.flexbox.** {
|
||||||
|
public <init>(...);
|
||||||
|
<fields>;
|
||||||
|
<methods>;
|
||||||
|
}
|
||||||
|
-dontwarn com.google.android.flexbox.**
|
||||||
|
#
|
||||||
|
# 规则 6:VannikTech Android Image Cropper(自定义 View + Activity)
|
||||||
|
-keep class com.vanniktech.ui.** { *; }
|
||||||
|
-keep class com.canhub.cropper.** { *; }
|
||||||
|
-keep class * extends androidx.activity.ComponentActivity
|
||||||
|
-dontwarn com.vanniktech.ui.**
|
||||||
|
-dontwarn com.canhub.cropper.**
|
||||||
|
#
|
||||||
|
# 规则 7:Compressor 图片压缩库
|
||||||
|
-keep class id.zelory.compressor.** { *; }
|
||||||
|
-dontwarn id.zelory.compressor.**
|
||||||
|
|
||||||
|
# ==============================
|
||||||
|
# 子模块(本地 project 依赖:easyPhotos / FastBleLib / easysocket)
|
||||||
|
# 完全不混淆!
|
||||||
|
# 各子模块自身 build.gradle 已配置 consumerProguardFiles 传递以下规则,这里再写一份做双重保险
|
||||||
|
# 实际包名(以各子模块 namespace 为准):
|
||||||
|
# FastBleLib → com.clj.fastble
|
||||||
|
# easyPhotos → com.huantansheng.easyphotos
|
||||||
|
# easysocket → com.easysocket
|
||||||
|
# ==============================
|
||||||
|
|
||||||
|
# ==============================
|
||||||
|
# 子模块 1:FastBleLib(蓝牙库)核心强化规则
|
||||||
|
# 问题:BleManager.getInstance().isConnected(mac) 执行不正常
|
||||||
|
# ==============================
|
||||||
|
# 基础包全量 keep
|
||||||
|
-keep class com.clj.fastble.** { *; }
|
||||||
|
-keepclassmembers class com.clj.fastble.** {
|
||||||
|
public <init>(...);
|
||||||
|
protected <init>(...);
|
||||||
|
<fields>;
|
||||||
|
<methods>;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Parcelable 强化(BleDevice 等):全量 Parcelable CREATOR + FastBle 专属类单独 keep
|
||||||
|
-keep class * implements android.os.Parcelable {
|
||||||
|
public static final android.os.Parcelable$Creator *;
|
||||||
|
public static final android.os.Parcelable$ClassLoaderCreator *;
|
||||||
|
public <init>(android.os.Parcel);
|
||||||
|
public <init>(android.os.Parcel, java.lang.ClassLoader);
|
||||||
|
public void writeToParcel(android.os.Parcel, int);
|
||||||
|
public int describeContents();
|
||||||
|
}
|
||||||
|
# 说明:因为上面已经 -keep class com.clj.fastble.** { *; },这些类所有成员已全量保留
|
||||||
|
# 这里只做显式声明(防止 outer keep 失效时的兜底)
|
||||||
|
-keep class com.clj.fastble.data.BleDevice { *; }
|
||||||
|
-keep class com.clj.fastble.data.BleConnectStateParameter { *; }
|
||||||
|
-keep class com.clj.fastble.data.BleScanState { *; }
|
||||||
|
-keep class com.clj.fastble.data.BleMsg { *; }
|
||||||
|
|
||||||
|
# 系统蓝牙回调覆写方法(最关键!Binder 回调触发)
|
||||||
|
-keepclassmembers class * extends android.bluetooth.BluetoothGattCallback {
|
||||||
|
public *;
|
||||||
|
protected *;
|
||||||
|
void onConnectionStateChange(...);
|
||||||
|
void onServicesDiscovered(...);
|
||||||
|
void onCharacteristicRead(...);
|
||||||
|
void onCharacteristicWrite(...);
|
||||||
|
void onCharacteristicChanged(...);
|
||||||
|
void onDescriptorRead(...);
|
||||||
|
void onDescriptorWrite(...);
|
||||||
|
void onReliableWriteCompleted(...);
|
||||||
|
void onReadRemoteRssi(...);
|
||||||
|
void onMtuChanged(...);
|
||||||
|
void onPhyUpdate(...);
|
||||||
|
void onPhyRead(...);
|
||||||
|
void onServiceChanged(...);
|
||||||
|
}
|
||||||
|
-keepclassmembers class * implements android.bluetooth.BluetoothAdapter$LeScanCallback {
|
||||||
|
void onLeScan(...);
|
||||||
|
}
|
||||||
|
-keepclassmembers class * extends android.bluetooth.le.ScanCallback {
|
||||||
|
void onScanResult(...);
|
||||||
|
void onBatchScanResults(...);
|
||||||
|
void onScanFailed(...);
|
||||||
|
}
|
||||||
|
|
||||||
|
# Handler 内部类 handleMessage 保留
|
||||||
|
-keepclassmembers class * extends android.os.Handler {
|
||||||
|
public void handleMessage(android.os.Message);
|
||||||
|
protected void handleMessage(android.os.Message);
|
||||||
|
void handleMessage(...);
|
||||||
|
}
|
||||||
|
|
||||||
|
# 枚举类保留
|
||||||
|
-keepclassmembers enum * {
|
||||||
|
public static **[] values();
|
||||||
|
public static ** valueOf(java.lang.String);
|
||||||
|
public static ** valueOf(java.lang.Class, java.lang.String);
|
||||||
|
}
|
||||||
|
-keep enum com.clj.fastble.** { *; }
|
||||||
|
-keep class com.clj.fastble.bluetooth.BleBluetooth$LastState { *; }
|
||||||
|
|
||||||
|
# 静态 Holder 单例
|
||||||
|
-keep class com.clj.fastble.BleManager$BleManagerHolder { *; }
|
||||||
|
-keepclassmembers class com.clj.fastble.BleManager$BleManagerHolder {
|
||||||
|
static com.clj.fastble.BleManager sBleManager;
|
||||||
|
<init>(...);
|
||||||
|
}
|
||||||
|
-keep class com.clj.fastble.scan.BleScanner$BleScannerHolder { *; }
|
||||||
|
-keepclassmembers class com.clj.fastble.scan.BleScanner$BleScannerHolder {
|
||||||
|
static com.clj.fastble.scan.BleScanner sBleScanner;
|
||||||
|
<init>(...);
|
||||||
|
}
|
||||||
|
|
||||||
|
# 内部类+匿名内部类(禁止 class merging)
|
||||||
|
-keepattributes InnerClasses,EnclosingMethod
|
||||||
|
-keep class com.clj.fastble.**$* { *; }
|
||||||
|
-keepclassmembers class com.clj.fastble.**$* {
|
||||||
|
<init>(...);
|
||||||
|
<fields>;
|
||||||
|
<methods>;
|
||||||
|
}
|
||||||
|
|
||||||
|
# 反射支持(BluetoothGatt#refresh)
|
||||||
|
# 说明:
|
||||||
|
# - java.lang.reflect.* / android.bluetooth.BluetoothGatt 均为 Android 系统框架类,R8 不会修改/混淆/优化系统类
|
||||||
|
# - BluetoothGatt#refresh() 是 @hide 隐藏 API,编译期 SDK(android.jar)中不存在,故无需也无法 keep
|
||||||
|
# - 运行时反射 Class.getMethod("refresh") 可正常查找系统 ROM 中的真实方法,不受 ProGuard/R8 影响
|
||||||
|
# - 因此这里不需要写任何 -keep 规则,仅保留 -dontwarn 防止反射类的警告
|
||||||
|
-dontwarn java.lang.reflect.**
|
||||||
|
-dontwarn android.bluetooth.BluetoothGatt
|
||||||
|
|
||||||
|
# 回调接口保留
|
||||||
|
-keep interface com.clj.fastble.callback.** { *; }
|
||||||
|
-keepclassmembers interface com.clj.fastble.callback.** { <methods>; }
|
||||||
|
-keep class * implements com.clj.fastble.callback.BleGattCallback { *; }
|
||||||
|
-keep class * implements com.clj.fastble.callback.BleScanCallback { *; }
|
||||||
|
-keep class * implements com.clj.fastble.callback.BleNotifyCallback { *; }
|
||||||
|
-keep class * implements com.clj.fastble.callback.BleWriteCallback { *; }
|
||||||
|
-keep class * implements com.clj.fastble.callback.BleReadCallback { *; }
|
||||||
|
-keep class * implements com.clj.fastble.callback.BleIndicateCallback { *; }
|
||||||
|
|
||||||
|
# 控制器核心类额外 keep
|
||||||
|
# 说明:BluetoothBLEManager 类不存在于当前 FastBle 代码中,已移除(之前是误加的)
|
||||||
|
-keep class com.clj.fastble.BleManager { *; }
|
||||||
|
-keep class com.clj.fastble.bluetooth.BleBluetooth { *; }
|
||||||
|
-keep class com.clj.fastble.bluetooth.MultipleBluetoothController { *; }
|
||||||
|
-keep class com.clj.fastble.bluetooth.BleConnector { *; }
|
||||||
|
-keep class com.clj.fastble.scan.BleScanner { *; }
|
||||||
|
-keep class com.clj.fastble.scan.BleScanPresenter { *; }
|
||||||
|
-keep class com.clj.fastble.scan.BleScanRuleConfig { *; }
|
||||||
|
-keep class com.clj.fastble.utils.BleLog { *; }
|
||||||
|
|
||||||
|
-dontwarn com.clj.fastble.**
|
||||||
|
-dontwarn android.bluetooth.**
|
||||||
|
-dontwarn java.lang.reflect.**
|
||||||
|
|
||||||
|
# ==============================
|
||||||
|
# 子模块 2:easyPhotos(图片选择库)及其依赖的 PhotoView / SubsamplingScaleImageView
|
||||||
|
# 强化:自定义 View 构造函数 + Parcelable + 内部类 + Handler + 反射
|
||||||
|
# ==============================
|
||||||
|
-keep class com.huantansheng.easyphotos.** { *; }
|
||||||
|
-keepclassmembers class com.huantansheng.easyphotos.** {
|
||||||
|
public <init>(...);
|
||||||
|
protected <init>(...);
|
||||||
|
<fields>;
|
||||||
|
<methods>;
|
||||||
|
}
|
||||||
|
# easyPhotos 自定义 View(XML 反射实例化)保留构造函数
|
||||||
|
-keepclassmembers class com.huantansheng.easyphotos.** extends android.view.View {
|
||||||
|
public <init>(android.content.Context, android.util.AttributeSet);
|
||||||
|
public <init>(android.content.Context, android.util.AttributeSet, int);
|
||||||
|
public <init>(android.content.Context, android.util.AttributeSet, int, int);
|
||||||
|
void set*(***);
|
||||||
|
*** get*();
|
||||||
|
}
|
||||||
|
-keepclassmembers class com.huantansheng.easyphotos.** extends android.view.ViewGroup {
|
||||||
|
public <init>(android.content.Context, android.util.AttributeSet);
|
||||||
|
public <init>(android.content.Context, android.util.AttributeSet, int);
|
||||||
|
public <init>(android.content.Context, android.util.AttributeSet, int, int);
|
||||||
|
}
|
||||||
|
# easyPhotos 的 Activity/Fragment(AndroidManifest 注册 & XML 引用)
|
||||||
|
-keep public class * extends androidx.fragment.app.FragmentActivity
|
||||||
|
-keep public class * extends androidx.appcompat.app.AppCompatActivity
|
||||||
|
-keep public class * extends androidx.fragment.app.Fragment
|
||||||
|
# easyPhotos Handler/内部类
|
||||||
|
-keepattributes InnerClasses,EnclosingMethod
|
||||||
|
-keep class com.huantansheng.easyphotos.**$* { *; }
|
||||||
|
-keepclassmembers class com.huantansheng.easyphotos.**$* {
|
||||||
|
<init>(...);
|
||||||
|
<fields>;
|
||||||
|
<methods>;
|
||||||
|
}
|
||||||
|
# easyPhotos Parcelable
|
||||||
|
-keepclassmembers class com.huantansheng.easyphotos.** implements android.os.Parcelable {
|
||||||
|
public static final android.os.Parcelable$Creator CREATOR;
|
||||||
|
public static final android.os.Parcelable$ClassLoaderCreator *;
|
||||||
|
public <init>(android.os.Parcel);
|
||||||
|
public void writeToParcel(android.os.Parcel, int);
|
||||||
|
public int describeContents();
|
||||||
|
}
|
||||||
|
|
||||||
|
# Dave Morrissey SubsamplingScaleImageView(长图查看器,自定义 View + 手势)
|
||||||
|
# 说明:
|
||||||
|
# - 已通过 -keep class com.davemorrissey.labs.subscaleview.** { *; } 全量 keep 所有成员
|
||||||
|
# - 下面 -keepclassmembers class * extends SubsamplingScaleImageView 属于冗余规则,且 IDE 对 external aar 依赖可能解析不到类名(误报 Unresolved)
|
||||||
|
# - 因此删除冗余 extends 规则,仅保留 dontwarn(防止 ProGuard 找不到第三方类的警告)
|
||||||
|
-keep class com.davemorrissey.labs.subscaleview.** { *; }
|
||||||
|
-keepclassmembers class com.davemorrissey.labs.subscaleview.** {
|
||||||
|
public <init>(android.content.Context, android.util.AttributeSet);
|
||||||
|
public <init>(android.content.Context, android.util.AttributeSet, int);
|
||||||
|
public <init>(...);
|
||||||
|
<fields>;
|
||||||
|
<methods>;
|
||||||
|
}
|
||||||
|
-dontwarn com.davemorrissey.labs.subscaleview.**
|
||||||
|
|
||||||
|
# Chris Banes PhotoView(图片缩放,自定义 View + 手势检测器)
|
||||||
|
-keep class com.github.chrisbanes.photoview.** { *; }
|
||||||
|
-keepclassmembers class com.github.chrisbanes.photoview.** {
|
||||||
|
public <init>(android.content.Context, android.util.AttributeSet);
|
||||||
|
public <init>(android.content.Context, android.util.AttributeSet, int);
|
||||||
|
public <init>(...);
|
||||||
|
<fields>;
|
||||||
|
<methods>;
|
||||||
|
}
|
||||||
|
-dontwarn com.github.chrisbanes.photoview.**
|
||||||
|
-dontwarn com.huantansheng.easyphotos.**
|
||||||
|
|
||||||
|
# ==============================
|
||||||
|
# 子模块 3:easysocket(蓝牙/通用 Socket 通信协议库)
|
||||||
|
# 强化:Parcelable + 接口回调 + 内部类 + Handler + 反射 + OkIO
|
||||||
|
# ==============================
|
||||||
|
-keep class com.easysocket.** { *; }
|
||||||
|
-keepclassmembers class com.easysocket.** {
|
||||||
|
public <init>(...);
|
||||||
|
protected <init>(...);
|
||||||
|
<fields>;
|
||||||
|
<methods>;
|
||||||
|
}
|
||||||
|
# easysocket 回调接口保留(避免动态代理/反射查找失败)
|
||||||
|
-keep interface com.easysocket.** { *; }
|
||||||
|
-keepclassmembers interface com.easysocket.** { <methods>; }
|
||||||
|
-keep class * implements com.easysocket.interfaces.** { *; }
|
||||||
|
# easysocket Parcelable/Serializable
|
||||||
|
-keepclassmembers class com.easysocket.** implements android.os.Parcelable {
|
||||||
|
public static final android.os.Parcelable$Creator CREATOR;
|
||||||
|
public static final android.os.Parcelable$ClassLoaderCreator *;
|
||||||
|
public <init>(android.os.Parcel);
|
||||||
|
public void writeToParcel(android.os.Parcel, int);
|
||||||
|
public int describeContents();
|
||||||
|
}
|
||||||
|
-keepclassmembers class com.easysocket.** implements java.io.Serializable {
|
||||||
|
static final long serialVersionUID;
|
||||||
|
private static final java.io.ObjectStreamField[] serialPersistentFields;
|
||||||
|
!static !transient <fields>;
|
||||||
|
private void writeObject(java.io.ObjectOutputStream);
|
||||||
|
private void readObject(java.io.ObjectInputStream);
|
||||||
|
java.lang.Object writeReplace();
|
||||||
|
java.lang.Object readResolve();
|
||||||
|
}
|
||||||
|
# easysocket Handler/消息分发(内部类 handleMessage)
|
||||||
|
-keep class com.easysocket.**$* { *; }
|
||||||
|
-keepclassmembers class com.easysocket.**$* {
|
||||||
|
<init>(...);
|
||||||
|
<fields>;
|
||||||
|
<methods>;
|
||||||
|
}
|
||||||
|
-keepattributes InnerClasses,EnclosingMethod,Signature,*Annotation*
|
||||||
|
-dontwarn com.easysocket.**
|
||||||
|
-dontwarn okio.**
|
||||||
|
-dontwarn org.jetbrains.annotations.**
|
||||||
|
|
||||||
|
# ==============================
|
||||||
|
# 测试相关(禁止对测试相关包警告)
|
||||||
|
# ==============================
|
||||||
|
-dontnote junit.framework.**
|
||||||
|
-dontnote junit.runner.**
|
||||||
|
-dontwarn android.test.**
|
||||||
|
-dontwarn android.support.test.**
|
||||||
|
-dontwarn org.junit.**
|
||||||
|
|
||||||
|
# ==============================
|
||||||
|
# 移除冗余日志(只移除 v/d/i,保留 w 和 e!!错误日志不能删)
|
||||||
|
# ==============================
|
||||||
|
-assumenosideeffects class android.util.Log {
|
||||||
|
public static boolean isLoggable(java.lang.String, int);
|
||||||
|
public static int v(...);
|
||||||
|
public static int d(...);
|
||||||
|
public static int i(...);
|
||||||
|
}
|
||||||
|
|
||||||
|
# ==============================
|
||||||
|
# 混淆产物输出(方便分析映射关系)
|
||||||
|
# ==============================
|
||||||
|
-printmapping proguardMapping.txt
|
||||||
|
-printseeds proguardSeeds.txt
|
||||||
|
-printusage proguardUsage.txt
|
||||||
|
|||||||
@@ -38,13 +38,14 @@
|
|||||||
<uses-permission
|
<uses-permission
|
||||||
android:name="android.permission.WRITE_SETTINGS"
|
android:name="android.permission.WRITE_SETTINGS"
|
||||||
tools:ignore="ProtectedPermissions" /> <!-- android 9.0上使用前台服务,需要添加权限 -->
|
tools:ignore="ProtectedPermissions" /> <!-- android 9.0上使用前台服务,需要添加权限 -->
|
||||||
|
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" /> <!-- BLUETOOTH permissions are added by lib_dfu module. -->
|
||||||
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" /> <!-- 用于读取手机当前的状态 -->
|
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" /> <!-- 用于读取手机当前的状态 -->
|
||||||
<uses-permission android:name="android.permission.READ_PHONE_STATE" /> <!-- 读取缓存数据 -->
|
<uses-permission android:name="android.permission.READ_PHONE_STATE" /> <!-- 读取缓存数据 -->
|
||||||
<!-- 蓝牙扫描权限 -->
|
<!-- 蓝牙扫描权限 -->
|
||||||
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" /> <!-- 获取模拟定位信息 -->
|
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" /> <!-- 获取模拟定位信息 -->
|
||||||
<uses-permission
|
<!-- <uses-permission-->
|
||||||
android:name="android.permission.ACCESS_MOCK_LOCATION"
|
<!-- android:name="android.permission.ACCESS_MOCK_LOCATION"-->
|
||||||
tools:ignore="MockLocation,ProtectedPermissions" />
|
<!-- tools:ignore="MockLocation,ProtectedPermissions" />-->
|
||||||
|
|
||||||
<permission
|
<permission
|
||||||
android:name="android.permission.INTERACT_ACROSS_USERS_FULL"
|
android:name="android.permission.INTERACT_ACROSS_USERS_FULL"
|
||||||
@@ -55,7 +56,6 @@
|
|||||||
android:protectionLevel="signature" /> <!-- Optional. Required for location feature -->
|
android:protectionLevel="signature" /> <!-- Optional. Required for location feature -->
|
||||||
<uses-permission android:name="${applicationId}.permission.JPUSH_MESSAGE" /> <!-- 为了提高sdk识别唯一用户的能力,保证消息推送的精准送达,建议集成以下权限(可选) -->
|
<uses-permission android:name="${applicationId}.permission.JPUSH_MESSAGE" /> <!-- 为了提高sdk识别唯一用户的能力,保证消息推送的精准送达,建议集成以下权限(可选) -->
|
||||||
<!-- <uses-permission -->
|
<!-- <uses-permission -->
|
||||||
<!-- android:name="android.permission.QUERY_ALL_PACKAGES" -->
|
|
||||||
<!-- tools:ignore="QueryAllPackagesPermission" /> -->
|
<!-- tools:ignore="QueryAllPackagesPermission" /> -->
|
||||||
<!-- 如您需要接入地理围栏业务,建议集成以下权限(可选) -->
|
<!-- 如您需要接入地理围栏业务,建议集成以下权限(可选) -->
|
||||||
<uses-permission android:name="android.permission.GET_TASKS" /> <!-- 如您需要对应设备通知相关的能力,建议集成以下权限(可选) -->
|
<uses-permission android:name="android.permission.GET_TASKS" /> <!-- 如您需要对应设备通知相关的能力,建议集成以下权限(可选) -->
|
||||||
@@ -77,17 +77,17 @@
|
|||||||
<uses-permission
|
<uses-permission
|
||||||
android:name="android.permission.REQUEST_INSTALL_PACKAGES"
|
android:name="android.permission.REQUEST_INSTALL_PACKAGES"
|
||||||
tools:node="remove" /> <!-- Android 13上一新增运行时权限 -->
|
tools:node="remove" /> <!-- Android 13上一新增运行时权限 -->
|
||||||
<uses-permission android:name="android.permission.READ_MEDIA_IMAGES" />
|
<!-- <uses-permission android:name="android.permission.READ_MEDIA_IMAGES" /> -->
|
||||||
<uses-permission android:name="android.permission.READ_MEDIA_AUDIO" />
|
<!-- <uses-permission android:name="android.permission.READ_MEDIA_AUDIO" /> -->
|
||||||
<uses-permission android:name="android.permission.READ_MEDIA_VIDEO" /> <!-- 通知权限 -->
|
<!-- <uses-permission android:name="android.permission.READ_MEDIA_VIDEO" /> -->
|
||||||
|
<!-- 通知权限 -->
|
||||||
<uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
|
<uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
|
||||||
<uses-permission android:name="android.permission.DOWNLOAD_WITHOUT_NOTIFICATION" /> <!-- Android 12新增权限适配 -->
|
<uses-permission android:name="android.permission.DOWNLOAD_WITHOUT_NOTIFICATION" /> <!-- Android 12新增权限适配 -->
|
||||||
<uses-permission
|
<uses-permission
|
||||||
android:name="android.permission.BLUETOOTH_SCAN"
|
android:name="android.permission.BLUETOOTH_SCAN"
|
||||||
android:usesPermissionFlags="neverForLocation"
|
android:usesPermissionFlags="neverForLocation"
|
||||||
tools:targetApi="s" />
|
tools:targetApi="s" />
|
||||||
<uses-permission android:name="android.permission.BLUETOOTH_CONNECT" /> <!-- BLUETOOTH permissions are added by lib_dfu module. -->
|
<uses-permission android:name="android.permission.BLUETOOTH_CONNECT" />
|
||||||
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
|
|
||||||
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_CONNECTED_DEVICE" /> <!-- 指定微信包名 -->
|
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_CONNECTED_DEVICE" /> <!-- 指定微信包名 -->
|
||||||
<queries>
|
<queries>
|
||||||
<package android:name="com.tencent.mm" />
|
<package android:name="com.tencent.mm" />
|
||||||
@@ -95,7 +95,9 @@
|
|||||||
|
|
||||||
<application
|
<application
|
||||||
android:name=".MyApplication"
|
android:name=".MyApplication"
|
||||||
android:allowBackup="true"
|
android:allowBackup="false"
|
||||||
|
android:enableOnBackInvokedCallback="true"
|
||||||
|
android:fullBackupContent="false"
|
||||||
android:icon="@mipmap/logo_abbidot"
|
android:icon="@mipmap/logo_abbidot"
|
||||||
android:label="@string/app_name"
|
android:label="@string/app_name"
|
||||||
android:networkSecurityConfig="@xml/network_security_config"
|
android:networkSecurityConfig="@xml/network_security_config"
|
||||||
@@ -105,7 +107,28 @@
|
|||||||
android:theme="@style/Theme.Tracker"
|
android:theme="@style/Theme.Tracker"
|
||||||
android:usesCleartextTraffic="true"
|
android:usesCleartextTraffic="true"
|
||||||
tools:replace="android:supportsRtl"
|
tools:replace="android:supportsRtl"
|
||||||
tools:targetApi="n">
|
tools:targetApi="33">
|
||||||
|
<activity
|
||||||
|
android:name=".ui.activity.account.cn.RegisterCNActivity"
|
||||||
|
android:exported="false" />
|
||||||
|
<activity
|
||||||
|
android:name=".ui.activity.account.cn.ForgotPasswordCNActivity"
|
||||||
|
android:exported="false" />
|
||||||
|
<activity
|
||||||
|
android:name=".ui.activity.account.cn.VerifyCodeLoginCNActivity"
|
||||||
|
android:exported="false" />
|
||||||
|
<activity
|
||||||
|
android:name=".ui.activity.account.cn.WXLoginActivity"
|
||||||
|
android:exported="false" />
|
||||||
|
<activity
|
||||||
|
android:name=".ui.activity.account.cn.LoginV2CNActivity"
|
||||||
|
android:exported="false" />
|
||||||
|
<activity
|
||||||
|
android:name=".deprecated.ui.activity.profile.recharge.cn.RechargeOrderDetailCNActivity"
|
||||||
|
android:exported="false" />
|
||||||
|
<activity
|
||||||
|
android:name=".ui.activity.device.InitializingDeviceActivity"
|
||||||
|
android:exported="false" />
|
||||||
<activity
|
<activity
|
||||||
android:name=".ui.activity.device.set.PowerOffActivity"
|
android:name=".ui.activity.device.set.PowerOffActivity"
|
||||||
android:exported="false"
|
android:exported="false"
|
||||||
@@ -259,10 +282,6 @@
|
|||||||
android:name=".ui.activity.device.wifi.AddWifiPowerZone1Activity"
|
android:name=".ui.activity.device.wifi.AddWifiPowerZone1Activity"
|
||||||
android:exported="false"
|
android:exported="false"
|
||||||
android:screenOrientation="portrait" />
|
android:screenOrientation="portrait" />
|
||||||
<activity
|
|
||||||
android:name=".ui.activity.subscribe.SubscriptionDetailActivity"
|
|
||||||
android:exported="false"
|
|
||||||
android:screenOrientation="portrait" />
|
|
||||||
<activity
|
<activity
|
||||||
android:name=".ui.activity.set.FirstPermissionsActivity"
|
android:name=".ui.activity.set.FirstPermissionsActivity"
|
||||||
android:exported="false"
|
android:exported="false"
|
||||||
@@ -386,11 +405,8 @@
|
|||||||
<activity
|
<activity
|
||||||
android:name=".ui.activity.device.wifi.EditWifiPowerZoneActivity"
|
android:name=".ui.activity.device.wifi.EditWifiPowerZoneActivity"
|
||||||
android:exported="false"
|
android:exported="false"
|
||||||
android:screenOrientation="portrait" />
|
android:screenOrientation="portrait"
|
||||||
<activity
|
android:windowSoftInputMode="adjustPan" />
|
||||||
android:name=".ui.activity.map.LiveActivityV2"
|
|
||||||
android:exported="false"
|
|
||||||
android:screenOrientation="portrait" />
|
|
||||||
<activity
|
<activity
|
||||||
android:name=".ui.activity.map.LiveActivityV3"
|
android:name=".ui.activity.map.LiveActivityV3"
|
||||||
android:exported="false"
|
android:exported="false"
|
||||||
@@ -414,36 +430,43 @@
|
|||||||
android:screenOrientation="portrait" />
|
android:screenOrientation="portrait" />
|
||||||
<activity
|
<activity
|
||||||
android:name=".ui.activity.set.AboutActivity"
|
android:name=".ui.activity.set.AboutActivity"
|
||||||
|
android:exported="false"
|
||||||
android:screenOrientation="portrait" />
|
android:screenOrientation="portrait" />
|
||||||
<activity
|
<activity
|
||||||
android:name=".ui.activity.account.recharge.cn.RechargeHistoryCNActivity"
|
android:name=".ui.activity.account.recharge.cn.RechargeHistoryCNActivity"
|
||||||
|
android:exported="false"
|
||||||
android:screenOrientation="portrait" />
|
android:screenOrientation="portrait" />
|
||||||
<activity
|
<activity
|
||||||
android:name=".ui.activity.account.recharge.cn.RechargeDeviceDetailCNActivity"
|
android:name=".ui.activity.account.recharge.cn.RechargeDeviceDetailCNActivity"
|
||||||
android:screenOrientation="portrait" />
|
android:exported="false"
|
||||||
<activity
|
|
||||||
android:name=".ui.activity.account.recharge.cn.RechargeOrderDetailCNActivity"
|
|
||||||
android:screenOrientation="portrait" />
|
android:screenOrientation="portrait" />
|
||||||
<activity
|
<activity
|
||||||
android:name=".ui.activity.account.recharge.cn.RechargeAmountCNActivity"
|
android:name=".ui.activity.account.recharge.cn.RechargeAmountCNActivity"
|
||||||
|
android:exported="false"
|
||||||
android:screenOrientation="portrait" />
|
android:screenOrientation="portrait" />
|
||||||
<activity
|
<activity
|
||||||
android:name=".deprecated.ui.activity.LoginRegisterCNActivity"
|
android:name=".deprecated.ui.activity.LoginRegisterCNActivity"
|
||||||
|
android:exported="false"
|
||||||
android:screenOrientation="portrait" />
|
android:screenOrientation="portrait" />
|
||||||
<activity
|
<activity
|
||||||
android:name=".ui.DebugActivity"
|
android:name=".ui.DebugActivity"
|
||||||
|
android:exported="false"
|
||||||
android:screenOrientation="portrait" />
|
android:screenOrientation="portrait" />
|
||||||
<activity
|
<activity
|
||||||
android:name=".ui.activity.MyCropImageActivity"
|
android:name=".ui.activity.MyCropImageActivity"
|
||||||
|
android:exported="false"
|
||||||
android:screenOrientation="portrait" />
|
android:screenOrientation="portrait" />
|
||||||
<activity
|
<activity
|
||||||
android:name=".ui.activity.WebViewActivity"
|
android:name=".ui.activity.WebViewActivity"
|
||||||
|
android:exported="false"
|
||||||
android:screenOrientation="portrait" />
|
android:screenOrientation="portrait" />
|
||||||
<activity
|
<activity
|
||||||
android:name=".ui.activity.account.recharge.AddCreditCardActivity"
|
android:name=".ui.activity.account.recharge.AddCreditCardActivity"
|
||||||
|
android:exported="false"
|
||||||
android:screenOrientation="portrait" />
|
android:screenOrientation="portrait" />
|
||||||
<activity
|
<activity
|
||||||
android:name=".deprecated.ui.activity.profile.recharge.PaymentResultActivity"
|
android:name=".deprecated.ui.activity.profile.recharge.PaymentResultActivity"
|
||||||
|
android:exported="false"
|
||||||
android:screenOrientation="portrait" />
|
android:screenOrientation="portrait" />
|
||||||
<activity
|
<activity
|
||||||
android:name=".ui.activity.account.recharge.PaymentMethodPayPalActivity"
|
android:name=".ui.activity.account.recharge.PaymentMethodPayPalActivity"
|
||||||
@@ -465,15 +488,19 @@
|
|||||||
android:screenOrientation="portrait" />
|
android:screenOrientation="portrait" />
|
||||||
<activity
|
<activity
|
||||||
android:name=".ui.activity.account.recharge.PaymentMethodStripeActivity"
|
android:name=".ui.activity.account.recharge.PaymentMethodStripeActivity"
|
||||||
|
android:exported="false"
|
||||||
android:screenOrientation="portrait" />
|
android:screenOrientation="portrait" />
|
||||||
<activity
|
<activity
|
||||||
android:name=".ui.activity.map.MapLiveActivity"
|
android:name=".ui.activity.map.MapLiveActivity"
|
||||||
|
android:exported="false"
|
||||||
android:screenOrientation="portrait" />
|
android:screenOrientation="portrait" />
|
||||||
<activity
|
<activity
|
||||||
android:name=".ui.activity.map.HomeMapNavigationActivity"
|
android:name=".ui.activity.map.HomeMapNavigationActivity"
|
||||||
|
android:exported="false"
|
||||||
android:screenOrientation="portrait" />
|
android:screenOrientation="portrait" />
|
||||||
<activity
|
<activity
|
||||||
android:name=".ui.activity.data.HistoryDataActivity"
|
android:name=".ui.activity.data.HistoryDataActivity"
|
||||||
|
android:exported="false"
|
||||||
android:screenOrientation="portrait" />
|
android:screenOrientation="portrait" />
|
||||||
<activity
|
<activity
|
||||||
android:name=".ui.activity.device.set.LedLightActivity"
|
android:name=".ui.activity.device.set.LedLightActivity"
|
||||||
@@ -481,12 +508,15 @@
|
|||||||
android:screenOrientation="portrait" />
|
android:screenOrientation="portrait" />
|
||||||
<activity
|
<activity
|
||||||
android:name=".ui.activity.account.FencesAddActivity"
|
android:name=".ui.activity.account.FencesAddActivity"
|
||||||
|
android:exported="false"
|
||||||
android:screenOrientation="portrait" />
|
android:screenOrientation="portrait" />
|
||||||
<activity
|
<activity
|
||||||
android:name=".ui.activity.SwipeActionActivity"
|
android:name=".ui.activity.SwipeActionActivity"
|
||||||
|
android:exported="false"
|
||||||
android:screenOrientation="portrait" />
|
android:screenOrientation="portrait" />
|
||||||
<activity
|
<activity
|
||||||
android:name=".ui.activity.DetailActivity"
|
android:name=".ui.activity.DetailActivity"
|
||||||
|
android:exported="false"
|
||||||
android:screenOrientation="portrait" />
|
android:screenOrientation="portrait" />
|
||||||
<activity
|
<activity
|
||||||
android:name=".ui.activity.SplashActivity"
|
android:name=".ui.activity.SplashActivity"
|
||||||
@@ -547,6 +577,7 @@
|
|||||||
<service
|
<service
|
||||||
android:name="com.baidu.location.f"
|
android:name="com.baidu.location.f"
|
||||||
android:enabled="true"
|
android:enabled="true"
|
||||||
|
android:exported="false"
|
||||||
android:process=":remote" /> <!-- 谷歌地图 -->
|
android:process=":remote" /> <!-- 谷歌地图 -->
|
||||||
<meta-data
|
<meta-data
|
||||||
android:name="com.google.android.geo.API_KEY"
|
android:name="com.google.android.geo.API_KEY"
|
||||||
@@ -564,6 +595,7 @@
|
|||||||
<activity
|
<activity
|
||||||
android:name="com.hjq.logcat.LogcatActivity"
|
android:name="com.hjq.logcat.LogcatActivity"
|
||||||
android:configChanges="orientation|screenSize|keyboardHidden"
|
android:configChanges="orientation|screenSize|keyboardHidden"
|
||||||
|
android:exported="false"
|
||||||
android:launchMode="singleInstance"
|
android:launchMode="singleInstance"
|
||||||
android:screenOrientation="portrait"
|
android:screenOrientation="portrait"
|
||||||
android:theme="@style/Theme.AppCompat.Light.NoActionBar"
|
android:theme="@style/Theme.AppCompat.Light.NoActionBar"
|
||||||
@@ -597,7 +629,12 @@
|
|||||||
android:value="${MAPBOX_ACCESS_TOKEN}" />
|
android:value="${MAPBOX_ACCESS_TOKEN}" />
|
||||||
<meta-data
|
<meta-data
|
||||||
android:name="com.abbidot.metadata.http.request.key"
|
android:name="com.abbidot.metadata.http.request.key"
|
||||||
android:value="${HTTP_REQUEST_KEY}" /> <!-- **************************************Stripe支付start********************************************* -->
|
android:value="${HTTP_REQUEST_KEY}" />
|
||||||
|
<meta-data
|
||||||
|
android:name="com.abbidot.metadata.card.rsa.key"
|
||||||
|
android:value="${CARD_RSA_KEY}" />
|
||||||
|
|
||||||
|
<!-- **************************************Stripe支付start********************************************* -->
|
||||||
<!-- <meta-data -->
|
<!-- <meta-data -->
|
||||||
<!-- android:name="com.stripe.example.metadata.backend_url" -->
|
<!-- android:name="com.stripe.example.metadata.backend_url" -->
|
||||||
<!-- android:value="${BACKEND_URL}" /> -->
|
<!-- android:value="${BACKEND_URL}" /> -->
|
||||||
|
|||||||
@@ -1,469 +0,0 @@
|
|||||||
<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=gb2312" ><meta name=ProgId content=Word.Document ><meta name=Generator content="Microsoft Word 14" ><meta name=Originator content="Microsoft Word 14" ><title></title><!--[if gte mso 9]><xml><o:DocumentProperties><o:Author>Administrator</o:Author><o:LastAuthor>Administrator</o:LastAuthor><o:Revision>1</o:Revision><o:Pages>3</o:Pages><o:Characters>3201</o:Characters></o:DocumentProperties><o:CustomDocumentProperties><o:KSOProductBuildVer dt:dt="string" >2052-11.1.0.11875</o:KSOProductBuildVer><o:ICV dt:dt="string" >C04E27608BE34562B8408B8D5F23791D</o:ICV></o:CustomDocumentProperties></xml><![endif]--><!--[if gte mso 9]><xml><o:OfficeDocumentSettings></o:OfficeDocumentSettings></xml><![endif]--><!--[if gte mso 9]><xml><w:WordDocument><w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel><w:DisplayHorizontalDrawingGridEvery>0</w:DisplayHorizontalDrawingGridEvery><w:DisplayVerticalDrawingGridEvery>2</w:DisplayVerticalDrawingGridEvery><w:DocumentKind>DocumentNotSpecified</w:DocumentKind><w:DrawingGridVerticalSpacing>7.8 <20><></w:DrawingGridVerticalSpacing><w:View>Web</w:View><w:Compatibility><w:AdjustLineHeightInTable/><w:DontGrowAutofit/><w:BalanceSingleByteDoubleByteWidth/><w:DoNotExpandShiftReturn/><w:UseFELayout/></w:Compatibility><w:Zoom>0</w:Zoom></w:WordDocument></xml><![endif]--><!--[if gte mso 9]><xml><w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="true" DefSemiHidden="true" DefQFormat="false" DefPriority="99" LatentStyleCount="260" >
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Normal" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="heading 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" QFormat="true" Name="heading 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" QFormat="true" Name="heading 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" QFormat="true" Name="heading 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" QFormat="true" Name="heading 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" QFormat="true" Name="heading 6" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" QFormat="true" Name="heading 7" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" QFormat="true" Name="heading 8" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" QFormat="true" Name="heading 9" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="index 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="index 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="index 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="index 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="index 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="index 6" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="index 7" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="index 8" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="index 9" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="toc 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="toc 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="toc 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="toc 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="toc 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="toc 6" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="toc 7" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="toc 8" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="toc 9" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Normal Indent" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="footnote text" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="annotation text" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="header" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="footer" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="index heading" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" QFormat="true" Name="caption" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="table of figures" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="envelope address" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="envelope return" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="footnote reference" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="annotation reference" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="line number" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="page number" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="endnote reference" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="endnote text" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="table of authorities" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="macro" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="toa heading" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List Bullet" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List Number" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List Bullet 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List Bullet 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List Bullet 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List Bullet 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List Number 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List Number 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List Number 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List Number 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Title" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Closing" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Signature" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" UnhideWhenUsed="false" Name="Default Paragraph Font" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Body Text" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Body Text Indent" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List Continue" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List Continue 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List Continue 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List Continue 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List Continue 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Message Header" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Subtitle" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Salutation" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Date" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Body Text First Indent" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Body Text First Indent 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Note Heading" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Body Text 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Body Text 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Body Text Indent 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Body Text Indent 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Block Text" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Hyperlink" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="FollowedHyperlink" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Strong" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Emphasis" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Document Map" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Plain Text" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="E-mail Signature" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Normal (Web)" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="HTML Acronym" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="HTML Address" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="HTML Cite" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="HTML Code" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="HTML Definition" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="HTML Keyboard" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="HTML Preformatted" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="HTML Sample" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="HTML Typewriter" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="HTML Variable" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" UnhideWhenUsed="false" Name="Normal Table" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="annotation subject" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="99" SemiHidden="false" Name="No List" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="99" SemiHidden="false" Name="1 / a / i" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="99" SemiHidden="false" Name="1 / 1.1 / 1.1.1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="99" SemiHidden="false" Name="Article / Section" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Simple 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Simple 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Simple 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Classic 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Classic 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Classic 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Classic 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Colorful 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Colorful 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Colorful 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Columns 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Columns 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Columns 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Columns 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Columns 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Grid 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Grid 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Grid 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Grid 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Grid 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Grid 6" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Grid 7" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Grid 8" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table List 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table List 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table List 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table List 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table List 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table List 6" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table List 7" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table List 8" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table 3D effects 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table 3D effects 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table 3D effects 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Contemporary" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Elegant" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Professional" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Subtle 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Subtle 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Web 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Web 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Web 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Balloon Text" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Grid" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Theme" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="99" SemiHidden="false" Name="Placeholder Text" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="99" SemiHidden="false" Name="No Spacing" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading Accent 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List Accent 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid Accent 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="99" SemiHidden="false" Name="List Paragraph" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="99" SemiHidden="false" Name="Quote" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="99" SemiHidden="false" Name="Intense Quote" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List Accent 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List Accent 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading Accent 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List Accent 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid Accent 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List Accent 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List Accent 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading Accent 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List Accent 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid Accent 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List Accent 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List Accent 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading Accent 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List Accent 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid Accent 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List Accent 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List Accent 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading Accent 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List Accent 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid Accent 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List Accent 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List Accent 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading Accent 6" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List Accent 6" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid Accent 6" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 6" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 6" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 6" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 6" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 6" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 6" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 6" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List Accent 6" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 6" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List Accent 6" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 6" ></w:LsdException>
|
|
||||||
</w:LatentStyles></xml><![endif]--><style>
|
|
||||||
@font-face{
|
|
||||||
font-family:"Times New Roman";
|
|
||||||
}
|
|
||||||
|
|
||||||
@font-face{
|
|
||||||
font-family:"<22><><EFBFBD><EFBFBD>";
|
|
||||||
}
|
|
||||||
|
|
||||||
@font-face{
|
|
||||||
font-family:"Wingdings";
|
|
||||||
}
|
|
||||||
|
|
||||||
@font-face{
|
|
||||||
font-family:"Calibri";
|
|
||||||
}
|
|
||||||
|
|
||||||
p.MsoNormal{
|
|
||||||
mso-style-name:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
|
||||||
mso-style-parent:"";
|
|
||||||
margin:0pt;
|
|
||||||
margin-bottom:.0001pt;
|
|
||||||
mso-pagination:none;
|
|
||||||
text-align:justify;
|
|
||||||
text-justify:inter-ideograph;
|
|
||||||
font-family:Calibri;
|
|
||||||
mso-fareast-font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';
|
|
||||||
font-size:10.5000pt;
|
|
||||||
mso-font-kerning:1.0000pt;
|
|
||||||
}
|
|
||||||
|
|
||||||
span.10{
|
|
||||||
font-family:'Times New Roman';
|
|
||||||
}
|
|
||||||
|
|
||||||
span.msoIns{
|
|
||||||
mso-style-type:export-only;
|
|
||||||
mso-style-name:"";
|
|
||||||
text-decoration:underline;
|
|
||||||
text-underline:single;
|
|
||||||
color:blue;
|
|
||||||
}
|
|
||||||
|
|
||||||
span.msoDel{
|
|
||||||
mso-style-type:export-only;
|
|
||||||
mso-style-name:"";
|
|
||||||
text-decoration:line-through;
|
|
||||||
color:red;
|
|
||||||
}
|
|
||||||
|
|
||||||
table.MsoNormalTable{
|
|
||||||
mso-style-name:<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
|
||||||
mso-style-parent:"";
|
|
||||||
mso-style-noshow:yes;
|
|
||||||
mso-tstyle-rowband-size:0;
|
|
||||||
mso-tstyle-colband-size:0;
|
|
||||||
mso-padding-alt:0.0000pt 5.4000pt 0.0000pt 5.4000pt;
|
|
||||||
mso-para-margin:0pt;
|
|
||||||
mso-para-margin-bottom:.0001pt;
|
|
||||||
mso-pagination:widow-orphan;
|
|
||||||
font-family:'Times New Roman';
|
|
||||||
font-size:10.0000pt;
|
|
||||||
mso-ansi-language:#0400;
|
|
||||||
mso-fareast-language:#0400;
|
|
||||||
mso-bidi-language:#0400;
|
|
||||||
}
|
|
||||||
@page{mso-page-border-surround-header:no;
|
|
||||||
mso-page-border-surround-footer:no;}@page Section0{
|
|
||||||
margin-top:72.0000pt;
|
|
||||||
margin-bottom:72.0000pt;
|
|
||||||
margin-left:90.0000pt;
|
|
||||||
margin-right:90.0000pt;
|
|
||||||
size:595.3000pt 841.9000pt;
|
|
||||||
layout-grid:15.6000pt;
|
|
||||||
mso-header-margin:42.5500pt;
|
|
||||||
mso-footer-margin:49.6000pt;
|
|
||||||
}
|
|
||||||
div.Section0{page:Section0;}</style></head><body style="tab-interval:21pt;text-justify-trim:punctuation;" ><!--StartFragment--><div class="Section0" style="layout-grid:15.6000pt;" >
|
|
||||||
|
|
||||||
<p><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˽<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˾<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˾<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǡ<EFBFBD>)<29><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ö<EFBFBD><C3B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD>ʽ<EFBFBD>ռ<EFBFBD><D5BC><EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>ƽ̨<C6BD>ύ<EFBFBD><E1BDBB><EFBFBD>û<EFBFBD><C3BB><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD>ɼ<EFBFBD><C9BC><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݡ<EFBFBD><DDA1>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD>ȷ<EFBFBD><C8B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><CFB8>İ<EFBFBD>ȫ<EFBFBD><C8AB><EFBFBD>ܱ<EFBFBD><EFBFBD><D7BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>ͬ<EFBFBD>⣬<EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD>й¶<D0B9>κθ<CEBA><CEB8><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϣ<EFBFBD><CFA3><EFBFBD><EFBFBD>ĵ<EFBFBD>3<EFBFBD><33><EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD><EFBFBD>⡣</p>
|
|
||||||
|
|
||||||
<p><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˾ǿ<EFBFBD>ҽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD>Ķ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˽<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD><EFBFBD>˽Ȿ<EFBFBD><EFBFBD>˾<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD>ƽ̨<EFBFBD><EFBFBD><EFBFBD>ṩ<EFBFBD>ĸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݼ<EFBFBD>ʹ<EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD>ϱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߺ<EFBFBD>ʵ<EFBFBD><EFBFBD>Ӧ<EFBFBD>á<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˽<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ע<EFBFBD><EFBFBD><EFBFBD>ͷ<EFBFBD>ע<EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD>Ҫʱ<EFBFBD>ɲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڸ<EFBFBD><EFBFBD>¡<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĺ<EFBFBD><EFBFBD>İ汾<EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><EFBFBD>Ա<EFBFBD><EFBFBD><EFBFBD>˽<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>µ<EFBFBD><EFBFBD>ܶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯ<EFBFBD><EFBFBD><EFBFBD>绰<EFBFBD><EFBFBD>0755-86352225<32><35></p>
|
|
||||||
|
|
||||||
<p><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD><EFBFBD><EFBFBD>˽<EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>飬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֹͣʹ<EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><EFBFBD>ķ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD>Ʒ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><EFBFBD>ķ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD>Ʒ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܱ<EFBFBD><EFBFBD><EFBFBD>˽<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>и<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˽<EFBFBD><EFBFBD><EFBFBD>߹<EFBFBD><EFBFBD>ɡ<EFBFBD>ʹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD>ֲ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Լ<EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
|
||||||
|
|
||||||
<p><EFBFBD>ܶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><EFBFBD><EFBFBD>Ȩ<EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><EFBFBD><EFBFBD>˽<EFBFBD><EFBFBD><EFBFBD>ߣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڹ<EFBFBD><EFBFBD><EFBFBD>֮ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD><EFBFBD></p>
|
|
||||||
|
|
||||||
<h3>һ<EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></h3>
|
|
||||||
|
|
||||||
<p>(1<><31><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD>ռ<EFBFBD><D5BC><EFBFBD><EFBFBD>洢<EFBFBD>κ<EFBFBD><CEBA>û<EFBFBD><C3BB>ṩ<EFBFBD><E1B9A9><EFBFBD><EFBFBD><EFBFBD>ǻ<EFBFBD><C7BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>õ<EFBFBD><C3B5><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݡ<EFBFBD><DDA1>õ<EFBFBD><C3B5><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݿ<EFBFBD><DDBF>ܰ<EFBFBD><DCB0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڣ<EFBFBD><DAA3>û<EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD>ύ<EFBFBD><E1BDBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ф<EFBFBD><D0A4><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD><D4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ա<EFBFBD><D5A1><EFBFBD><EFBFBD>ߡ<EFBFBD><DFA1><EFBFBD><EFBFBD>ء<EFBFBD><D8A1>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD>롢<EFBFBD><EBA1A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7>ʵ<EFBFBD><CAB5><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD>ϵ<EFBFBD><CFB5><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD>罻ý<E7BDBB><C3BD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD>֤<EFBFBD><D6A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD>ͥ<EFBFBD><CDA5>Ա<EFBFBD><D4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵȸ<CFB5><C8B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϣ<EFBFBD><CFA3>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD>п<EFBFBD><D0BF><EFBFBD>֧<EFBFBD><D6A7>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϣ<EFBFBD><CFA3><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD></p>
|
|
||||||
|
|
||||||
<p>(2<><32><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD>Զ<EFBFBD><D4B6>ռ<EFBFBD><D5BC><EFBFBD><EFBFBD>洢<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǽ<EFBFBD><C7BD>л<EFBFBD><D0BB><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD>ǵķ<C7B5><C4B7><EFBFBD><EFBFBD>Ͳ<EFBFBD>Ʒʱ<C6B7><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݡ<EFBFBD><DDA1>û<EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD>ܱ<EFBFBD><DCB1>ɼ<EFBFBD><C9BC>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD><D3B2><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>ϵͳ<CFB5><CDB3><EFBFBD>͡<EFBFBD><CDA1>豸ʶ<E8B1B8><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD> IP <20><>ַ<EFBFBD><D6B7> MAC <20><>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> GPS <20><>λ<EFBFBD>á<EFBFBD><C3A1><EFBFBD><EEB6AF><EFBFBD>ݡ<EFBFBD><DDA1>˶<EFBFBD><CBB6><EFBFBD><EFBFBD>ݡ<EFBFBD><DDA1><EFBFBD>Ϊƫ<CEAA>á<EFBFBD><C3A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ճ<EFBFBD><D5B3><EFBFBD><EFBFBD>ݡ<EFBFBD><DDA1><EFBFBD><EFBFBD>֡<EFBFBD>ͼƬ<CDBC><C6AC>Ӱ<EFBFBD><D3B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݡ<EFBFBD></p>
|
|
||||||
|
|
||||||
<p>(3<><33><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>վ<EFBFBD><D5BE>ý<EFBFBD>塢ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƶ<EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><F1A3A8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)<29><><EFBFBD>ӻ<EFBFBD><D3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD>ƽ̨<C6BD>Ͳ<EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>š<EFBFBD><C5A1>Ա<EFBFBD><D4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȣ<EFBFBD><C8A3><EFBFBD><EFBFBD>л<EFBFBD><D0BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݶ<EFBFBD><DDB6><EFBFBD><EFBFBD>ܱ<EFBFBD><DCB1>ռ<EFBFBD><D5BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǿ<EFBFBD><C7BF>ܽ<EFBFBD><DCBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD>ƽ̨<C6BD>ṩ<EFBFBD><E1B9A9><EFBFBD><EFBFBD><EFBFBD>ǵĻ<C7B5><C4BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD><D5BC><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݽ<EFBFBD><DDBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϣ<EFBFBD><CFA3><EFBFBD><EFBFBD>ܰ<EFBFBD><DCB0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڣ<EFBFBD><DAA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD>̡<EFBFBD><CCA1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EEB6AF><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7>Ӧ<EFBFBD>ó<EFBFBD><C3B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݡ<EFBFBD><DDA1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݽ<EFBFBD><DDBD>ᱻ<EFBFBD><E1B1BB>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϣ<EFBFBD>ֻҪ<D6BB><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϱ<EFBFBD><CFB1>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD>״̬<D7B4><CCAC></p>
|
|
||||||
|
|
||||||
<p>(4<><34><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD>ң<EFBFBD><D2A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><DCB6>ض<EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƣ<EFBFBD><C6A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڹ<EFBFBD><DAB9>ң<EFBFBD><D2A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ع涨<D8B9><E6B6A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><CEB4>18<31><38><EFBFBD>꣬<EFBFBD><EAA3AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֤<EFBFBD><D6A4><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD>ͬ<EFBFBD><CDAC>ʹ<EFBFBD><CAB9><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC>ķ<EFBFBD><C4B7><EFBFBD><EFBFBD>Ͳ<EFBFBD>Ʒ<EFBFBD><C6B7>ͬ<EFBFBD>Ȿ<EFBFBD><E2B1BE>˽<EFBFBD><CBBD><EFBFBD>ߡ<EFBFBD></p>
|
|
||||||
|
|
||||||
<h3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></h3>
|
|
||||||
|
|
||||||
<p><EFBFBD>ܶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><EFBFBD>İ<EFBFBD>ȫ<EFBFBD><EFBFBD><EFBFBD>ܱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϸ<EFBFBD>ʹ<EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>洢<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݿ<EFBFBD><EFBFBD>ܱ<EFBFBD>ʹ<EFBFBD><EFBFBD><EFBFBD>ڣ<EFBFBD></p>
|
|
||||||
|
|
||||||
<p>(1<><31>Ϊ<EFBFBD><CEAA><EFBFBD>ṩ<EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC>ķ<EFBFBD><C4B7><EFBFBD><EFBFBD>Ͳ<EFBFBD>Ʒ<EFBFBD><C6B7>(2<><32><EFBFBD>Ľ<EFBFBD><C4BD><EFBFBD>ά<EFBFBD><CEAC><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC>ķ<EFBFBD><C4B7><EFBFBD><EFBFBD>Ͳ<EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD>飬<EFBFBD><E9A3AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڷ<EFBFBD><DAB7><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD>ơ<EFBFBD></p>
|
|
||||||
|
|
||||||
<p>(3)<29><><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC>ķ<EFBFBD><C4B7><EFBFBD>Ʒ<EFBFBD>ͻ<CDBB>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>й<EFBFBD>ͨ<EFBFBD><CDA8></p>
|
|
||||||
|
|
||||||
<p>(4<><34><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɣ<EFBFBD><C9A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ṩ<EFBFBD><E1B9A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EEB6AF><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2></p>
|
|
||||||
|
|
||||||
<p>(5<><35>ͳ<EFBFBD><CDB3><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD><DDB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD>Ʒʹ<C6B7><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Թ<EFBFBD><D4B9><EFBFBD><EFBFBD><EFBFBD>˾<EFBFBD><CBBE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˾<EFBFBD><CBBE><EFBFBD>뱾<EFBFBD><EBB1BE>˾<EFBFBD><CBBE><EFBFBD><EFBFBD>ֱ<EFBFBD>ӻ<EFBFBD><D3BB><EFBFBD><EFBFBD>ӿ<EFBFBD><D3BF>ƹ<EFBFBD>ϵ<EFBFBD><CFB5><EFBFBD>ش<EFBFBD>Ӱ<EFBFBD><D3B0><EFBFBD><EFBFBD>ϵ<EFBFBD><CFB5><EFBFBD><EFBFBD>ҵ<EFBFBD><D2B5><EFBFBD>ڲ<EFBFBD>ʹ<EFBFBD>á<EFBFBD></p>
|
|
||||||
|
|
||||||
<h3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȩ</h3>
|
|
||||||
|
|
||||||
<p>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD>ά<EFBFBD>ֺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><EFBFBD>ķ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD>Ʒ<EFBFBD><EFBFBD><EFBFBD>Ὣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ṩ<EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˾<EFBFBD>ڲ<EFBFBD>Ա<EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD>Ϊ<EFBFBD>û<EFBFBD><EFBFBD>ṩ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>£<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǿ<EFBFBD><EFBFBD>ܻὫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݴ<EFBFBD><EFBFBD>ݸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
|
||||||
|
|
||||||
<p>(1<><31><EFBFBD>ڱ<EFBFBD><DAB1>ܵ<EFBFBD><DCB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>£<EFBFBD><C2A3><EFBFBD><EFBFBD>ǿ<EFBFBD><C7BF>ܻὫ<DCBB><E1BDAB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¶<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD>ת<EFBFBD><D7AA><EFBFBD><EFBFBD><EFBFBD>κα<CEBA><CEB1><EFBFBD>˾<EFBFBD><CBBE>Ȩ<EFBFBD>ĵ<EFBFBD><C4B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>̻<EFBFBD><CCBB>ⲿ<EFBFBD><E2B2BF>Ӧ<EFBFBD>̣<EFBFBD><CCA3>Դٽ<D4B4><D9BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ṩ<EFBFBD>ķ<EFBFBD><C4B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һЩ<D2BB><D0A9>˾<EFBFBD><CBBE><EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Һ<EFBFBD><D2BA>й<EFBFBD>֮<EFBFBD><D6AE><EFBFBD>Ĺ<EFBFBD><C4B9>ң<EFBFBD><D2A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֪Ϥ<D6AA><CFA4>ͬ<EFBFBD>⣬<EFBFBD><E2A3AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݱ<EFBFBD><DDB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɿ<EFBFBD><C9BF>ܲ<EFBFBD><DCB2><EFBFBD><EFBFBD><EFBFBD>ŷ<EFBFBD>ˡ<EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD>ݱ<EFBFBD><DDB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
|
||||||
|
|
||||||
<p>(2<><32><EFBFBD><EFBFBD><EFBFBD>ǿ<EFBFBD><C7BF>ܽ<EFBFBD><DCBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC>ķ<EFBFBD><C4B7><EFBFBD><EFBFBD>ṩ<EFBFBD><E1B9A9><EFBFBD>Ա㿪չ<E3BFAA><D5B9><EFBFBD>ǵ<EFBFBD>ҵ<EFBFBD><EFBFBD><F1A3ACB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¶<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD>ת<EFBFBD><D7AA><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD>Ȩ<EFBFBD><C8A8><EFBFBD>κδ<CEBA><CEB4><EFBFBD><EFBFBD>˻<EFBFBD><CBBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˾<EFBFBD><CBBE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˾<EFBFBD><CBBE>Ȩʹ<C8A8>øõ<C3B8><C3B5><EFBFBD><EFBFBD>Ϻͣ<CFBA><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݡ<EFBFBD><DDA1><EFBFBD><EFBFBD>ǽ<EFBFBD><C7BD>ɷ<EFBFBD><C9B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>书<EFBFBD><E4B9A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĸ<EFBFBD><C4B8><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3>Ҳ<EFBFBD><D2B2><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>Ŀ<EFBFBD>Ķ<EFBFBD>ʹ<EFBFBD>á<EFBFBD></p>
|
|
||||||
|
|
||||||
<p>(3<><33><EFBFBD><EFBFBD><EFBFBD>ǿ<EFBFBD><C7BF>ܻ<EFBFBD><DCBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>й<EFBFBD>ϽȨ<CFBD><C8A8>˾<EFBFBD><CBBE><EFBFBD><EFBFBD><EFBFBD>ŵ<EFBFBD><C5B5><EFBFBD><EFBFBD><EFBFBD><EEA1A2><EFBFBD>շ<EFBFBD><D5B7><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>Ϊִ<CEAA><D6B4><EFBFBD><EFBFBD><EFBFBD>ǵ<EFBFBD><C7B5><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǻ<EFBFBD><C7BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD><EFBFBD>Ʋ<EFBFBD><C6B2>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD>¶<EFBFBD><C2B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݡ<EFBFBD><DDA1><EFBFBD><EFBFBD>ǿ<EFBFBD><C7BF>ܹ<EFBFBD><DCB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֹ<EFBFBD>Ƿ<EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC>ķ<EFBFBD><C4B7><EFBFBD><EFBFBD>Ͳ<EFBFBD>Ʒ<EFBFBD><C6B7>Υ<EFBFBD><CEA5><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EEA1B7><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ե<EFBFBD><D4B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͻ<EFBFBD><CFBD>з<EFBFBD><D0B7>ɿ<EFBFBD><C9BF>硣</p>
|
|
||||||
|
|
||||||
<p>(4<><34><EFBFBD><EFBFBD><EFBFBD>ǿ<EFBFBD><C7BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǽ<EFBFBD><C7BD>з<EFBFBD><D0B7><EFBFBD>թ<EFBFBD><D5A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD><D5BC>͵<EFBFBD><CDB5><EFBFBD>ְȨ<D6B0><C8A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˾<EFBFBD><CBBE><EFBFBD><EFBFBD><EFBFBD>ع<EFBFBD><D8B9><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˾<EFBFBD><CBBE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ժ<EFBFBD><D4BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵķ<CFB5><C4B7>ɳ<EFBFBD><C9B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>Ҫ<EFBFBD>ṩ<EFBFBD><E1B9A9></p>
|
|
||||||
|
|
||||||
<p>(5<><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD>ռ<EFBFBD><D5BC>ĸ<EFBFBD><C4B8><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݿ<EFBFBD><DDBF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˾֮<CBBE><D6AE>ת<EFBFBD>ƻ档<F2B4A2B4><E6A1A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC>ķ<EFBFBD><C4B7><EFBFBD><EFBFBD>Ͳ<EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊͬ<CEAA>Ⲣ<EFBFBD><E2B2A2>Ȩ<EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¶<EFBFBD><C2B6>ת<EFBFBD><D7AA><EFBFBD><EFBFBD><EFBFBD>ĸ<EFBFBD><C4B8><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݡ<EFBFBD></p>
|
|
||||||
|
|
||||||
<p>(6<><36><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD><F2B2BFB7>ʲ<EFBFBD><CAB2><EFBFBD><EFBFBD>ۡ<EFBFBD>ת<EFBFBD>á<EFBFBD>ת<EFBFBD><D7AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǽ<EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE>֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD>ŷ<EFBFBD>֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD></p>
|
|
||||||
|
|
||||||
<h3><EFBFBD>ġ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></h3>
|
|
||||||
|
|
||||||
<p>(1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC>ض<EFBFBD><D8B6>ķ<EFBFBD><C4B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EEB6AF><CAB1><EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD><E2B9AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һЩ<D2BB><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD>ܰ<EFBFBD><DCB0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڳ<EFBFBD><DAB3>к<EFBFBD>ͷ<EFBFBD><CDB7>ͼƬ<CDBC><C6AC></p>
|
|
||||||
|
|
||||||
<p>(2<><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD><E2B9B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˽<EFBFBD><CBBD><EFBFBD>á<EFBFBD></p>
|
|
||||||
|
|
||||||
<p>(3<><33><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ķ<EFBFBD><C4B6><EFBFBD><EFBFBD><EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD>˽<EFBFBD><CBBD><EFBFBD>ߣ<EFBFBD><DFA3><EFBFBD><EFBFBD>Ƕ<EFBFBD><C7B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵİ<DDB5>ȫ<EFBFBD>Բ<EFBFBD><D4B2><EFBFBD><EFBFBD>κ<EFBFBD><CEBA><EFBFBD><EFBFBD>Ρ<EFBFBD></p>
|
|
||||||
|
|
||||||
<p>(4<><34><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD><EFBFBD>dz<EFBFBD><C7B3><EFBFBD><EFBFBD>ƹ㱾<C6B9><E3B1BE>˾<EFBFBD><CBBE>Ʒ<EFBFBD><C6B7>Ŀ<EFBFBD>Ŀ<EFBFBD><C4BF>ܻ<EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݡ<EFBFBD></p>
|
|
||||||
|
|
||||||
<h3><EFBFBD>塢<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></h3>
|
|
||||||
|
|
||||||
<p>(1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵİ<DDB5>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD><EFBFBD>Ƿdz<C7B7><C7B3><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD><C8B7><EFBFBD><EFBFBD><EFBFBD>ĸ<EFBFBD><C4B8><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><CEB4><EFBFBD><EFBFBD>Ȩ<EFBFBD>ĽӴ<C4BD><D3B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ö<EFBFBD><C3B6>ֱ<EFBFBD><D6B1><EFBFBD><EFBFBD><EFBFBD>ʩ<EFBFBD><CAA9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܺ<EFBFBD><DCBA><EFBFBD>֤<EFBFBD><D6A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݰ<EFBFBD>ȫ<EFBFBD><C8AB></p>
|
|
||||||
|
|
||||||
<p>(2<><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѭ<EFBFBD><D1AD><EFBFBD>ϵ<EFBFBD><CFB5><EFBFBD>ҵ<EFBFBD><D2B5><EFBFBD><D7BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݰ<EFBFBD>ȫ<EFBFBD><C8AB>Ȼ<EFBFBD><C8BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڻ<EFBFBD><DABB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD><CDB5>Ӵ洢<D3B4><E6B4A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԣ<EFBFBD><D4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><DEB7><EFBFBD>֤<EFBFBD><D6A4><EFBFBD>ṩ<EFBFBD><E1B9A9><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݰٷ<DDB0>֮<EFBFBD>ٰ<EFBFBD>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD><EFBFBD>ܡ<EFBFBD></p>
|
|
||||||
|
|
||||||
<p>(3<><33><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD>ر<EFBFBD><D8B1>ض<EFBFBD><D8B6><EFBFBD><EFBFBD><EFBFBD>ϢͨѶ<CDA8><D1B6>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD><EFBFBD>Ͽ<EFBFBD><CFBF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӡ<EFBFBD><D3A1>رն<D8B1>λ<EFBFBD><CEBB><EFBFBD>ܵȣ<DCB5><C8A3><EFBFBD>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD>ֹ<EFBFBD><D6B9>Ϣ<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD><DDB5>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD><CBBF>ܵ<EFBFBD><DCB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC>ķ<EFBFBD><C4B7><EFBFBD><EFBFBD>Ͳ<EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǵ<EFBFBD>һЩ<D2BB><D0A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><CDB9>ܿ<EFBFBD><DCBF><EFBFBD><EFBFBD><EFBFBD><DEB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
|
||||||
|
|
||||||
<p>(4<><34><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʊ<EFBFBD><C6B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˻<EFBFBD><CBBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȩ<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD>ת<EFBFBD><D7AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˻<EFBFBD><CBBB><EFBFBD>(5<><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˾<EFBFBD><CBBE><EFBFBD><EFBFBD><EFBFBD>߽<EFBFBD><DFBD>ײ<EFBFBD><D7B2>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD><D6A7>ƽ̨<C6BD><CCA8><EFBFBD>Դٽ<D4B4><D9BD><EFBFBD><EFBFBD>ӽ<EFBFBD><D3BD><EFBFBD><D7B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
|
||||||
|
|
||||||
<p>(6<><36><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>¼<EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD>Ӧ<EFBFBD>ó<EFBFBD><C3B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ļ<EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD><EFBFBD>IJ<EFBFBD><C4B2><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϣ<EFBFBD><CFA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD>ǹ<EFBFBD><C7B9><EFBFBD><EFBFBD>ɼ<EFBFBD><C9BC>ġ<EFBFBD></p>
|
|
||||||
|
|
||||||
<p>(7<><37><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC>˻<EFBFBD><CBBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κκ<CEBA><CEBA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<C7B7><F1BEADB9><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD>⡣<EFBFBD><E2A1A3><EFBFBD><EFBFBD><EFBFBD>÷<EFBFBD><C3B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><DEB6>ڣ<EFBFBD><DAA3>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κλ<CEBA><CEBB><EFBFBD>δ<EFBFBD><CEB4><EFBFBD><EFBFBD>Ȩʹ<C8A8><CAB9><EFBFBD><EFBFBD><EFBFBD>˻<EFBFBD><CBBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>й¶<D0B9><C2B6><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
|
||||||
|
|
||||||
<p>(8<><38><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ס<EFBFBD><D7A1><EFBFBD>κι<CEBA><CEB9>ң<EFBFBD><D2A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD><EFBFBD>ǽ<EFBFBD><C7BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD>ơ<EFBFBD><C6A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CDB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݿ<EFBFBD><DDBF><EFBFBD><EFA3AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD>ݱ<EFBFBD><DDB1><EFBFBD>˽<EFBFBD><CBBD><EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD><D5BC><EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݡ<EFBFBD><DDA1><EFBFBD><EFBFBD>ݷ<EFBFBD><DDB7>ɹ涨<C9B9><E6B6A8><EFBFBD><EFBFBD><EFBFBD>ĸ<EFBFBD><C4B8><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݽ<EFBFBD><DDBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ط<EFBFBD><D8B7><EFBFBD>ͣ<EFBFBD>ú<EFBFBD><C3BA><EFBFBD>ֱ<EFBFBD><D6B1><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽҪ<CABD><D2AA><EFBFBD><EFBFBD><EFBFBD>Ǵ<EFBFBD><C7B4><EFBFBD><EFBFBD>ݿ<EFBFBD><DDBF><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݻ<EFBFBD><DDBB><EFBFBD>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD>Ӧ<EFBFBD>ó<EFBFBD><C3B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB>ʸ<EFBFBD><CAB8><EFBFBD></p>
|
|
||||||
|
|
||||||
<h3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ṩ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߰<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ơ<EFBFBD>SDK<EFBFBD><EFBFBD><EFBFBD><EFBFBD></h3>
|
|
||||||
|
|
||||||
<p>Bugly(<28><>ѶBugly)</p>
|
|
||||||
<p><EFBFBD><EFBFBD><EFBFBD>ܣ<EFBFBD> Ϊ<>˿<EFBFBD><CBBF>ٶ<EFBFBD>λӦ<CEBB>ò<EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD>ԭCrash<73><68><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Crash<73>豸ͳ<E8B1B8><CDB3></p>
|
|
||||||
<p><EFBFBD>ռ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>Crash<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Crash<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD>̶߳<EFBFBD>ջ<EFBFBD><EFBFBD>ROM/RAM/SD<53><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>/<2F><><EFBFBD>Ե<EFBFBD>״̬<D7B4><CCAC>App<70><70>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>汾<EFBFBD><E6B1BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><E8B1B8>Ϣ<EFBFBD><CFA2>IMEI<45><49><EFBFBD>豸ʶ<E8B1B8><CAB6><EFBFBD><EFBFBD></p>
|
|
||||||
|
|
||||||
<p><EFBFBD><EFBFBD>˽<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӣ<EFBFBD>https://privacy.qq.com/document/preview/fc748b3d96224fdb825ea79e132c1a56</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p><EFBFBD>ٶȶ<EFBFBD>λ</p>
|
|
||||||
<p><EFBFBD><EFBFBD><EFBFBD>ܣ<EFBFBD> <20><><EFBFBD><EFBFBD>ʵ<EFBFBD>ֶ<EFBFBD>λ<EFBFBD><CEBB><EFBFBD>ܣ<EFBFBD><DCA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
|
||||||
<p><EFBFBD>ռ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD>ʶ<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD>Android ID<49><44>IDFA<46><41>IDFV<46><56><EFBFBD><EFBFBD><EFBFBD><EFBFBD>γ<EFBFBD><CEB3><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>ϵͳ<CFB5><CDB3>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5>汾<EFBFBD><E6B1BE><EFBFBD>豸Ʒ<E8B1B8>Ƽ<EFBFBD><C6BC>ͺš<CDBA><C5A1>豸<EFBFBD><E8B1B8><EFBFBD>ã<EFBFBD><C3A3><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
|
||||||
<p><EFBFBD><EFBFBD>˽<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӣ<EFBFBD>https://lbs.baidu.com/index.php?title=openprivacy#service-page-anchor-0-0</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p><EFBFBD>ٶȵ<EFBFBD>ͼ</p>
|
|
||||||
<p><EFBFBD><EFBFBD><EFBFBD>ܣ<EFBFBD> <20>ڵ<EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD>ʾ<EFBFBD>켣<EFBFBD><ECBCA3><EFBFBD><EFBFBD></p>
|
|
||||||
<p><EFBFBD>ռ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD>ʶ<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD>Android ID<49><44>IDFA<46><41>IDFV<46><56><EFBFBD><EFBFBD><EFBFBD><EFBFBD>γ<EFBFBD><CEB3><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>д<EFBFBD>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD>ô洢<C3B4><E6B4A2>Ϣ<EFBFBD><CFA2></p>
|
|
||||||
<p><EFBFBD><EFBFBD>˽<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӣ<EFBFBD>https://lbs.baidu.com/index.php?title=openprivacy#service-page-anchor-0-1</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p>QQ<EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
|
||||||
<p><EFBFBD><EFBFBD><EFBFBD>ܣ<EFBFBD> QQ<51><51>Ȩ<EFBFBD><C8A8>¼<EFBFBD>ͷ<EFBFBD><CDB7><EFBFBD></p>
|
|
||||||
<p><EFBFBD>ռ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD>ʶ<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD>Android ID<49><44>IDFA<46><41>IDFV<46><56><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3>Ϣ<EFBFBD><CFA2><EFBFBD>ڴ濨Ȩ<E6BFA8><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>б<EFBFBD><D0B1><EFBFBD>Ϣ<EFBFBD><CFA2></p>
|
|
||||||
<p><EFBFBD><EFBFBD>˽<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӣ<EFBFBD>https://wiki.connect.qq.com/qq%e4%ba%92%e8%81%94sdk%e9%9a%90%e7%a7%81%e4%bf%9d%e6%8a%a4%e5%a3%b0%e6%98%8e</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p><EFBFBD><EFBFBD></p>
|
|
||||||
<p><EFBFBD><EFBFBD><EFBFBD>ܣ<EFBFBD> <><CEA2><EFBFBD><EFBFBD>Ȩ<EFBFBD><C8A8>¼<EFBFBD>ͷ<EFBFBD><CDB7><EFBFBD></p>
|
|
||||||
<p><EFBFBD>ռ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD>ʶ<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD>Android ID<49><44>IDFA<46><41>IDFV<46><56><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3>Ϣ<EFBFBD><CFA2><EFBFBD>ڴ濨Ȩ<E6BFA8><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>б<EFBFBD><D0B1><EFBFBD>Ϣ<EFBFBD><CFA2></p>
|
|
||||||
|
|
||||||
<p><EFBFBD><EFBFBD>˽<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӣ<EFBFBD>https://support.weixin.qq.com/cgi-bin/mmsupportacctnodeweb-bin/pages/RYiYJkLOrQwu0nb8</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p>mapbox</p>
|
|
||||||
<p><EFBFBD><EFBFBD><EFBFBD>ܣ<EFBFBD> <20><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·<EFBFBD>߹滮</p>
|
|
||||||
<p><EFBFBD>ռ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD>ʶ<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD>Android ID<49><44>IDFA<46><41>IDFV<46><56><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3>Ϣ<EFBFBD><CFA2><EFBFBD>ڴ濨Ȩ<E6BFA8><C8A8>,<2C><>γ<EFBFBD><CEB3><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2></p>
|
|
||||||
<p><EFBFBD><EFBFBD>˽<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӣ<EFBFBD>https://www.mapbox.com/legal/privacy</p>
|
|
||||||
|
|
||||||
|
|
||||||
<p><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͳ<EFBFBD>ơ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
|
||||||
<p><EFBFBD><EFBFBD><EFBFBD>ܣ<EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD>û<EFBFBD><EFBFBD>豸Ψһ<EFBFBD><EFBFBD>ʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ</p>
|
|
||||||
|
|
||||||
<p><EFBFBD>ռ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><EFBFBD>ʶ<EFBFBD><EFBFBD>Ϣ<EFBFBD><EFBFBD>Android ID<49><44>IMEI<45><49>IDFA<46><41>IDFV<46><56><EFBFBD>豸MAC<41><43>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3>Ϣ<EFBFBD><CFA2><EFBFBD>Ѱ<EFBFBD>װAPP<50><50>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>д<EFBFBD>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD>ô洢<C3B4><E6B4A2>Ϣ<EFBFBD><CFA2></p>
|
|
||||||
<p><EFBFBD><EFBFBD>˽<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӣ<EFBFBD>https://www.jiguang.cn/license/privacy</p>
|
|
||||||
|
|
||||||
|
|
||||||
<h3><EFBFBD>ߡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></h3>
|
|
||||||
|
|
||||||
<p><EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǵķ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD>Ʒ<EFBFBD><EFBFBD><EFBFBD>Լ<EFBFBD><EFBFBD>ɴ˲<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>飬<EFBFBD><EFBFBD><EFBFBD>ܱ<EFBFBD><EFBFBD><EFBFBD>˽<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Լ<EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Լ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>涨<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD>Ʒ<EFBFBD>Ĺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></p>
|
|
||||||
|
|
||||||
|
|
||||||
<p><EFBFBD><EFBFBD>л<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ķ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>µ<EFBFBD><EFBFBD>ܶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯ<EFBFBD><EFBFBD><EFBFBD>绰<EFBFBD><EFBFBD>0755-86352225 <20><></p>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</div><!--EndFragment--></body></html>
|
|
||||||
71
app/src/main/assets/privacy_de.html
Normal file
71
app/src/main/assets/privacy_de.html
Normal file
@@ -0,0 +1,71 @@
|
|||||||
|
<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8" ><meta name=ProgId content=Word.Document ><meta name=Generator content="Microsoft Word 14" ><meta name=Originator content="Microsoft Word 14" ><title></title></head>
|
||||||
|
<body>
|
||||||
|
<div>
|
||||||
|
<p>Bei ABBI PET INC respektieren wir Ihre Privatsphäre und verpflichten uns, diese zu schützen. Diese Datenschutzerklärung beschreibt, wie wir Ihre Informationen erfassen, verwenden, schützen und vertraulich behandeln, wenn Sie unsere mobile App („App“) verwenden.</p>
|
||||||
|
|
||||||
|
<h3>1. Informationen, die wir erfassen</h3>
|
||||||
|
<ul>
|
||||||
|
<li>Persönliche Informationen: Wenn Sie ein Konto erstellen, erfassen wir möglicherweise persönliche Informationen wie Ihren Namen, Ihre E-Mail-Adresse und Ihre Telefonnummer.</li>
|
||||||
|
<li>Haustierinformationen: Wir erfassen Informationen über Ihre Haustiere, einschließlich Name, Alter, Rasse und Gewicht, um maßgeschneiderte Dienstleistungen anzubieten.</li>
|
||||||
|
<li>Nutzungsdaten: Wir erfassen Informationen darüber, wie Sie mit unserer App interagieren, z. B. die Funktionen, die Sie nutzen, und die in der App verbrachte Zeit.</li>
|
||||||
|
<li>Geräteinformationen: Wir können Informationen über das Gerät erfassen, das Sie für den Zugriff auf die App verwenden, einschließlich Gerätetyp, Betriebssystem und eindeutiger Gerätekennungen.</li>
|
||||||
|
<li>Standortdaten: Mit Ihrer Erlaubnis können wir Informationen über den Standort Ihres Geräts und Ihres Haustieres erfassen und verarbeiten, um standortbezogene Dienste bereitzustellen.</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
<h3>2. Wie wir Ihre Informationen verwenden</h3>
|
||||||
|
<ul>
|
||||||
|
<li>Zur Bereitstellung und Verbesserung unserer Dienste: Wir verwenden Ihre Informationen, um die App und unsere Dienste zu betreiben und zu verbessern.</li>
|
||||||
|
<li>Zur Kommunikation mit Ihnen: Wir können Ihre Informationen verwenden, um Ihnen Updates, Newsletter, Werbematerialien und andere Informationen zu senden, die für Sie von Interesse sein könnten.</li>
|
||||||
|
<li>Zur Personalisierung Ihrer Erfahrung: Wir verwenden Ihre Informationen, um die Inhalte und Dienste, die wir anbieten, an Ihre Bedürfnisse und Vorlieben anzupassen.</li>
|
||||||
|
<li>Zur Gewährleistung von Sicherheit und Compliance: Wir verwenden Ihre Informationen, um die Sicherheit unserer App und die Einhaltung geltender Gesetze und Vorschriften zu gewährleisten.</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
<h3>3. Datengeheimhaltung und Sicherheit</h3>
|
||||||
|
<ul>
|
||||||
|
<li>Datenverschlüsselung: Wir verwenden branchenübliche Verschlüsselungsprotokolle, um Ihre persönlichen Informationen bei der Übertragung und Speicherung zu schützen.</li>
|
||||||
|
<li>Zugangskontrollen: Der Zugriff auf Ihre persönlichen Informationen ist nur autorisiertem Personal gestattet, und wir implementieren strenge Zugangskontrollen, um unbefugten Zugriff zu verhindern.</li>
|
||||||
|
<li>Datenminimierung: Wir erfassen und speichern nur die Mindestmenge an persönlichen Informationen, die zur Erbringung unserer Dienste erforderlich ist.</li>
|
||||||
|
<li>Regelmäßige Audits: Wir führen regelmäßige Sicherheitsaudits und -bewertungen durch, um sicherzustellen, dass unsere Datenschutzmaßnahmen aktuell und effektiv sind.</li>
|
||||||
|
</ul>
|
||||||
|
<h3>4. Weitergabe Ihrer Informationen</h3>
|
||||||
|
<ul>
|
||||||
|
<li>Dienstleister: Wir können Ihre Informationen an Drittdienstleister weitergeben, die in unserem Auftrag Leistungen wie Hosting, Datenanalyse und Kundensupport erbringen. Diese Dienstleister sind vertraglich verpflichtet, Ihre Informationen vertraulich und sicher zu behandeln.</li>
|
||||||
|
<li>Gesetzliche Anforderungen: Wir können Ihre Informationen offenlegen, wenn dies gesetzlich vorgeschrieben ist oder als Reaktion auf eine rechtliche Anforderung.</li>
|
||||||
|
<li>Unternehmensübertragungen: Im Falle einer Fusion, Übernahme oder eines Verkaufs aller oder eines Teils unserer Vermögenswerte können Ihre Informationen an den neuen Eigentümer übertragen werden, vorbehaltlich der gleichen Datenschutzzusagen.</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h3>5. Ihre Auswahlmöglichkeiten</h3>
|
||||||
|
<ul>
|
||||||
|
<li>Kontoinformationen: Sie können Ihre Kontoinformationen über die Einstellungen der App aktualisieren oder löschen.</li>
|
||||||
|
<li>Marketingkommunikation: Sie können sich von Marketingmitteilungen abmelden, indem Sie den Anweisungen zum Abbestellen in diesen Mitteilungen folgen oder uns direkt kontaktieren.</li>
|
||||||
|
<li>Standortdaten: Sie können die Standortdienste über die Einstellungen Ihres Geräts deaktivieren, dies kann jedoch bestimmte Funktionen der App beeinträchtigen.</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
<h3>6. Sicherheit</h3>
|
||||||
|
|
||||||
|
<p>Wir ergreifen angemessene Maßnahmen, um Ihre Informationen vor unbefugtem Zugriff, Verwendung oder Offenlegung zu schützen. Es gibt jedoch keine zu 100 % sichere Methode der Übertragung über das Internet oder der elektronischen Speicherung.</p>
|
||||||
|
|
||||||
|
<h3>7. Datenschutz für Kinder</h3>
|
||||||
|
|
||||||
|
<p>Unsere App ist nicht für die Nutzung durch Kinder unter 13 Jahren bestimmt, und wir erfassen wissentlich keine persönlichen Informationen von Kindern unter 13 Jahren. Wenn wir feststellen, dass wir persönliche Informationen von einem Kind unter 13 Jahren erfasst haben, werden wir Schritte unternehmen, um diese Informationen zu löschen.</p>
|
||||||
|
|
||||||
|
<h3>8. Änderungen dieser Datenschutzerklärung</h3>
|
||||||
|
|
||||||
|
<p>Wir können diese Datenschutzerklärung von Zeit zu Zeit aktualisieren. Wir werden Sie über Änderungen informieren, indem wir die neue Datenschutzerklärung in der App veröffentlichen. Es wird empfohlen, diese Datenschutzerklärung regelmäßig auf Änderungen zu überprüfen.</p>
|
||||||
|
|
||||||
|
<h3>9. Kontaktieren Sie uns</h3>
|
||||||
|
<p>Wenn Sie Fragen zu dieser Datenschutzerklärung haben, kontaktieren Sie uns bitte unter:</p>
|
||||||
|
<p>ABBI PET INC</p>
|
||||||
|
<p>10700 Richmond Ave Suite 143</p>
|
||||||
|
<p>Houston, TX 77042</p>
|
||||||
|
<p>E-Mail: support@abbidot.com</p>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</body></html>
|
||||||
71
app/src/main/assets/privacy_fr.html
Normal file
71
app/src/main/assets/privacy_fr.html
Normal file
@@ -0,0 +1,71 @@
|
|||||||
|
<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8" ><meta name=ProgId content=Word.Document ><meta name=Generator content="Microsoft Word 14" ><meta name=Originator content="Microsoft Word 14" ><title></title></head>
|
||||||
|
<body>
|
||||||
|
<div>
|
||||||
|
<p>Chez ABBI PET INC, nous respectons et nous engageons à protéger votre vie privée. Cette politique de confidentialité décrit comment nous collectons, utilisons, protégeons et conservons vos informations de manière confidentielle lorsque vous utilisez notre application mobile (« App »).</p>
|
||||||
|
|
||||||
|
<h3>1. Informations que nous collectons</h3>
|
||||||
|
<ul>
|
||||||
|
<li>Informations personnelles : Lorsque vous créez un compte, nous pouvons collecter des informations personnelles telles que votre nom, votre adresse e-mail et votre numéro de téléphone.</li>
|
||||||
|
<li>Informations sur l'animal : Nous collectons des informations sur vos animaux, notamment leur nom, âge, race et poids, afin de fournir des services personnalisés.</li>
|
||||||
|
<li>Données d'utilisation : Nous collectons des informations sur la manière dont vous interagissez avec notre App, telles que les fonctionnalités que vous utilisez et le temps passé sur l'App.</li>
|
||||||
|
<li>Informations sur l'appareil : Nous pouvons collecter des informations sur l'appareil que vous utilisez pour accéder à l'App, notamment le type d'appareil, le système d'exploitation et les identifiants uniques de l'appareil.</li>
|
||||||
|
<li>Données de localisation : Avec votre autorisation, nous pouvons collecter et traiter des informations sur la localisation de votre appareil et de votre animal afin de fournir des services basés sur la localisation.</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
<h3>2. Comment nous utilisons vos informations</h3>
|
||||||
|
<ul>
|
||||||
|
<li>Pour fournir et améliorer nos services : Nous utilisons vos informations pour exploiter et améliorer l'App et nos services.</li>
|
||||||
|
<li>Pour communiquer avec vous : Nous pouvons utiliser vos informations pour vous envoyer des mises à jour, des newsletters, des documents marketing et d'autres informations susceptibles de vous intéresser.</li>
|
||||||
|
<li>Pour personnaliser votre expérience : Nous utilisons vos informations pour adapter le contenu et les services que nous proposons afin de mieux répondre à vos besoins et préférences.</li>
|
||||||
|
<li>Pour assurer la sécurité et la conformité : Nous utilisons vos informations pour assurer la sécurité de notre App et la conformité aux lois et réglementations applicables.</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
<h3>3. Confidentialité et sécurité des données</h3>
|
||||||
|
<ul>
|
||||||
|
<li>Chiffrement des données : Nous utilisons des protocoles de chiffrement conformes aux normes de l'industrie pour protéger vos informations personnelles lors de la transmission et du stockage.</li>
|
||||||
|
<li>Contrôles d'accès : L'accès à vos informations personnelles est limité au personnel autorisé uniquement, et nous mettons en œuvre des contrôles d'accès stricts pour empêcher tout accès non autorisé.</li>
|
||||||
|
<li>Minimisation des données : Nous ne collectons et ne conservons que la quantité minimale d'informations personnelles nécessaire pour fournir nos services.</li>
|
||||||
|
<li>Audits réguliers : Nous effectuons des audits et des évaluations de sécurité réguliers pour nous assurer que nos mesures de protection des données sont à jour et efficaces.</li>
|
||||||
|
</ul>
|
||||||
|
<h3>4. Partage de vos informations</h3>
|
||||||
|
<ul>
|
||||||
|
<li>Prestataires de services : Nous pouvons partager vos informations avec des prestataires de services tiers qui effectuent des services en notre nom, tels que l'hébergement, l'analyse de données et l'assistance client. Ces prestataires de services sont contractuellement tenus de garder vos informations confidentielles et sécurisées.</li>
|
||||||
|
<li>Exigences légales : Nous pouvons divulguer vos informations si la loi l'exige ou en réponse à une demande légale.</li>
|
||||||
|
<li>Transferts d'entreprise : En cas de fusion, d'acquisition ou de vente de tout ou partie de nos actifs, vos informations peuvent être transférées au nouveau propriétaire, sous réserve des mêmes engagements en matière de protection des données.</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h3>5. Vos choix</h3>
|
||||||
|
<ul>
|
||||||
|
<li>Informations sur le compte : Vous pouvez mettre à jour ou supprimer les informations de votre compte via les paramètres de l'App.</li>
|
||||||
|
<li>Communications marketing : Vous pouvez vous désabonner des communications marketing de notre part en suivant les instructions de désabonnement dans ces communications ou en nous contactant directement.</li>
|
||||||
|
<li>Données de localisation : Vous pouvez désactiver les services de localisation via les paramètres de votre appareil, mais cela peut affecter certaines fonctionnalités de l'App.</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
<h3>6. Sécurité</h3>
|
||||||
|
|
||||||
|
<p>Nous prenons des mesures raisonnables pour protéger vos informations contre tout accès, utilisation ou divulgation non autorisé. Cependant, aucune méthode de transmission sur Internet ou méthode de stockage électronique n'est sécurisée à 100 %.</p>
|
||||||
|
|
||||||
|
<h3>7. Confidentialité des enfants</h3>
|
||||||
|
|
||||||
|
<p>Notre App n'est pas destinée à être utilisée par des enfants de moins de 13 ans, et nous ne collectons pas sciemment d'informations personnelles auprès d'enfants de moins de 13 ans. Si nous découvrons que nous avons collecté des informations personnelles auprès d'un enfant de moins de 13 ans, nous prendrons des mesures pour supprimer ces informations.</p>
|
||||||
|
|
||||||
|
<h3>8. Modifications de cette politique de confidentialité</h3>
|
||||||
|
|
||||||
|
<p>Nous pouvons mettre à jour cette politique de confidentialité de temps à autre. Nous vous informerons de toute modification en publiant la nouvelle politique de confidentialité dans l'App. Il vous est conseillé de consulter régulièrement cette politique de confidentialité pour toute modification.</p>
|
||||||
|
|
||||||
|
<h3>9. Contactez-nous</h3>
|
||||||
|
<p>Si vous avez des questions concernant cette politique de confidentialité, veuillez nous contacter à :</p>
|
||||||
|
<p>ABBI PET INC</p>
|
||||||
|
<p>10700 Richmond Ave Suite 143</p>
|
||||||
|
<p>Houston, TX 77042</p>
|
||||||
|
<p>E-mail : support@abbidot.com</p>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</body></html>
|
||||||
71
app/src/main/assets/privacy_zh.html
Normal file
71
app/src/main/assets/privacy_zh.html
Normal file
@@ -0,0 +1,71 @@
|
|||||||
|
<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8" ><meta name=ProgId content=Word.Document ><meta name=Generator content="Microsoft Word 14" ><meta name=Originator content="Microsoft Word 14" ><title></title></head>
|
||||||
|
<body>
|
||||||
|
<div>
|
||||||
|
<p>在 ABBI PET INC,我们尊重并致力于保护您的隐私。本隐私政策说明了当您使用我们的移动应用程序("App")时,我们如何收集、使用、保护您的信息并对您的信息予以保密。</p>
|
||||||
|
|
||||||
|
<h3>1. 我们收集的信息</h3>
|
||||||
|
<ul>
|
||||||
|
<li>个人信息:当您创建账户时,我们可能会收集您的姓名、电子邮箱地址和电话号码等个人信息。</li>
|
||||||
|
<li>宠物信息:我们收集宠物的相关信息,包括其姓名、年龄、品种和体重,以提供个性化的服务。</li>
|
||||||
|
<li>使用数据:我们收集有关您如何与 App 交互的信息,例如您使用的功能以及在 App 上停留的时间。</li>
|
||||||
|
<li>设备信息:我们可能会收集您用于访问 App 的设备信息,包括设备类型、操作系统和唯一设备标识符。</li>
|
||||||
|
<li>位置数据:在获得您的许可后,我们可能会收集并处理有关您设备位置和宠物位置的信息,以提供基于位置的服务。</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
<h3>2. 我们如何使用您的信息</h3>
|
||||||
|
<ul>
|
||||||
|
<li>提供和改进我们的服务:我们使用您的信息来运营和改进 App 及我们的服务。</li>
|
||||||
|
<li>与您沟通:我们可能会使用您的信息向您发送更新、新闻通讯、营销材料以及其他可能令您感兴趣的信息。</li>
|
||||||
|
<li>个性化您的体验:我们使用您的信息来调整我们提供的内容和服务,以更好地满足您的需求和偏好。</li>
|
||||||
|
<li>确保安全与合规:我们使用您的信息来确保 App 的安全并遵守适用的法律法规。</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
<h3>3. 数据保密与安全</h3>
|
||||||
|
<ul>
|
||||||
|
<li>数据加密:我们采用行业标准加密协议,在传输和存储过程中保护您的个人信息。</li>
|
||||||
|
<li>访问控制:您的个人信息仅限授权人员访问,我们实施严格的访问控制以防止未经授权的访问。</li>
|
||||||
|
<li>数据最小化:我们仅收集和保留提供服务所需的最少量个人信息。</li>
|
||||||
|
<li>定期审计:我们定期进行安全审计和评估,以确保我们的数据保护措施保持最新且有效。</li>
|
||||||
|
</ul>
|
||||||
|
<h3>4. 信息的共享</h3>
|
||||||
|
<ul>
|
||||||
|
<li>服务提供商:我们可能会与代表我们提供服务的第三方服务提供商共享您的信息,例如托管、数据分析和客户支持。这些服务提供商受合同约束,须对您的信息保密并确保安全。</li>
|
||||||
|
<li>法律要求:如果法律要求或作为对法律请求的回应,我们可能会披露您的信息。</li>
|
||||||
|
<li>业务转让:在发生合并、收购或出售全部或部分资产的情况下,您的信息可能会转让给新所有者,但须遵守相同的数据保护承诺。</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h3>5. 您的选择</h3>
|
||||||
|
<ul>
|
||||||
|
<li>账户信息:您可以通过 App 的设置更新或删除您的账户信息。</li>
|
||||||
|
<li>营销通讯:您可以按照那些通讯中的退订说明或直接联系我们,选择不再接收我们的营销通讯。</li>
|
||||||
|
<li>位置数据:您可以通过设备设置禁用定位服务,但这可能会影响 App 的某些功能。</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
<h3>6. 安全</h3>
|
||||||
|
|
||||||
|
<p>我们采取合理措施保护您的信息免受未经授权的访问、使用或披露。然而,任何通过互联网传输的方法或电子存储方法都不是 100% 安全的。</p>
|
||||||
|
|
||||||
|
<h3>7. 儿童隐私</h3>
|
||||||
|
|
||||||
|
<p>我们的 App 不面向 13 岁以下的儿童使用,我们也不会有意收集 13 岁以下儿童的个人信息。如果我们发现我们收集了 13 岁以下儿童的个人信息,我们将采取措施删除该信息。</p>
|
||||||
|
|
||||||
|
<h3>8. 本隐私政策的变更</h3>
|
||||||
|
|
||||||
|
<p>我们可能会不时更新本隐私政策。我们将通过在 App 内发布新的隐私政策来通知您任何变更。建议您定期查阅本隐私政策以了解任何变更。</p>
|
||||||
|
|
||||||
|
<h3>9. 联系我们</h3>
|
||||||
|
<p>如果您对本隐私政策有任何疑问,请通过以下方式联系我们:</p>
|
||||||
|
<p>ABBI PET INC</p>
|
||||||
|
<p>10700 Richmond Ave Suite 143</p>
|
||||||
|
<p>Houston, TX 77042</p>
|
||||||
|
<p>电子邮箱:support@abbidot.com</p>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</body></html>
|
||||||
54
app/src/main/assets/subscription_terms_conditions_de.html
Normal file
54
app/src/main/assets/subscription_terms_conditions_de.html
Normal file
@@ -0,0 +1,54 @@
|
|||||||
|
<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8" ><meta name=ProgId content=Word.Document ><meta name=Generator content="Microsoft Word 14" ><meta name=Originator content="Microsoft Word 14" ><title></title></head>
|
||||||
|
<body>
|
||||||
|
<div>
|
||||||
|
|
||||||
|
<h2>Allgemeine Geschäftsbedingungen für das ABBIDOT Tracker-Abonnement</h2>
|
||||||
|
<hr>
|
||||||
|
<h3>1. Abonnementpläne</h3>
|
||||||
|
<p>ABBIDOT bietet drei Abonnementpläne:</p>
|
||||||
|
<ul>
|
||||||
|
<li>3-Monats-Plan</li>
|
||||||
|
<li>1-Jahres-Plan</li>
|
||||||
|
<li>2-Jahres-Plan</li>
|
||||||
|
</ul>
|
||||||
|
<p>Alle Abonnements werden am Ende jedes Abrechnungszyklus automatisch verlängert, sofern sie nicht vom Nutzer gekündigt werden.</p>
|
||||||
|
<p>Nutzer können ihr Abonnement jederzeit kündigen. Nach der Kündigung bleibt das Abonnement bis zum Ende der aktuellen Abrechnungsperiode aktiv, und es werden keine weiteren Gebühren erhoben.</p>
|
||||||
|
<p>Das Gerät funktioniert während der aktiven Abonnementperiode weiterhin normal.</p>
|
||||||
|
<hr>
|
||||||
|
<h3>2. Rückerstattungsrichtlinie</h3>
|
||||||
|
<h4>2.1 Automatische Rückerstattung (innerhalb von 48 Stunden)</h4>
|
||||||
|
<p>Alle Abonnementkäufe sind innerhalb von 48 Stunden nach Zahlung für eine <strong>volle automatische Rückerstattung</strong> berechtigt. Rückerstattungen werden automatisch ohne manuelle Prüfung verarbeitet.</p>
|
||||||
|
<hr>
|
||||||
|
<h4>2.2 Standard-Rückerstattungszeitraum (30 Tage)</h4>
|
||||||
|
<p>Nach der anfänglichen 48-Stunden-Periode können Nutzer innerhalb von <strong>30 Tagen nach dem Kauf</strong> eine Rückerstattung beantragen.</p>
|
||||||
|
<ul>
|
||||||
|
<li>Alle Abonnementpläne (3 Monate, 1 Jahr, 2 Jahre) sind berechtigt</li>
|
||||||
|
<li>Rückerstattungsanträge unterliegen der Prüfung und Genehmigung</li>
|
||||||
|
<li>Rückerstattungen können basierend auf Nutzung und Dienstleistungsverbrauch teilweise angepasst werden</li>
|
||||||
|
</ul>
|
||||||
|
<hr>
|
||||||
|
<h4>2.3 Keine Rückerstattung nach 30 Tagen</h4>
|
||||||
|
<p>Abonnements, die älter als 30 Tage sind, sind nicht erstattungsfähig.</p>
|
||||||
|
<hr>
|
||||||
|
<h3>3. Abonnementkündigung</h3>
|
||||||
|
<p>Nutzer können ihr Abonnement jederzeit kündigen.</p>
|
||||||
|
<ul>
|
||||||
|
<li>Die Kündigung stoppt zukünftige Abrechnungen</li>
|
||||||
|
<li>Das aktuelle Abonnement bleibt bis zum Ende der Abrechnungsperiode aktiv</li>
|
||||||
|
<li>Nach der Kündigung wird keine teilweise Rückerstattung ausgestellt, sofern nicht innerhalb des Rückerstattungszeitraums</li>
|
||||||
|
</ul>
|
||||||
|
<hr>
|
||||||
|
<h3>4. Richtlinienaktualisierungen</h3>
|
||||||
|
<p>ABBIDOT behält sich das Recht vor, diese Allgemeinen Geschäftsbedingungen jederzeit zu aktualisieren oder zu ändern. Nutzer werden über wesentliche Änderungen informiert.</p>
|
||||||
|
<p>Durch das Abonnieren von ABBIDOT-Diensten stimmen Sie diesen Bedingungen zu.</p>
|
||||||
|
<hr>
|
||||||
|
<h3>5. Kundenservice</h3>
|
||||||
|
<p>Wenn Sie auf Schwierigkeiten stoßen, kontaktieren Sie uns bitte unter:</p>
|
||||||
|
<p><a title="Mail to subscription@abbidot.com" href="subscription@abbidot.com">subscription@abbidot.com</a></p>
|
||||||
|
<p>Unser Support-Team wird Ihnen so schnell wie möglich helfen.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</body></html>
|
||||||
@@ -2,19 +2,50 @@
|
|||||||
<body>
|
<body>
|
||||||
<div>
|
<div>
|
||||||
|
|
||||||
<h3>ABBIDOT Tracker Subscription Terms and Conditions
|
<h2>ABBIDOT Tracker Subscription Terms and Conditions</h2>
|
||||||
</h3>
|
<hr>
|
||||||
<p>1.Subscription Plans Users can choose between Basic and Prime plans. Basic plan subscribers can upgrade to Prime at any time. Prime plan subscribers can't change to Basic plan.
|
<h3>1. Subscription Plans</h3>
|
||||||
|
<p>ABBIDOT offers three subscription plans:</p>
|
||||||
<p>2.Refund Policy Automatic Refund (Within 48 Hours): Full refund available if canceled within 48 hours of subscription. Processed automatically without manual review. Manual Refund (After 48 Hours): For subscriptions older than 48 hours but within 1 month, refunds require manual approval. Eligibility: Only applicable to annual (1-year) subscriptions. Refunds may be prorated based on usage. No Refund After 1 Month: Subscriptions active for over 1 month are non-refundable.</p>
|
<ul>
|
||||||
|
<li>3-Month Plan</li>
|
||||||
<p>3.Pausing Subscription & Number Retention Users may pause their subscription. Number Retention: Paused numbers can be retained for up to 1 year. A small fee will apply for number retention during the pause period. Failure to reactivate within 1 year may result in number release.</p>
|
<li>1-Year Plan</li>
|
||||||
|
<li>2-Year Plan</li>
|
||||||
<p>4.Modifications ABBIDOT reserves the right to update these terms. Users will be notified of changes. By subscribing, you agree to these terms.</p>
|
</ul>
|
||||||
|
<p>All subscriptions are automatically renewed at the end of each billing cycle unless canceled by the user.</p>
|
||||||
<p>For support contact:</p>
|
<p>Users may cancel their subscription at any time. After cancellation, the subscription will remain active until the end of the current billing period, and no further charges will be applied.</p>
|
||||||
<p>support@abbidot.com</p>
|
<p>The device will continue to function normally during the active subscription period.</p>
|
||||||
|
<hr>
|
||||||
|
<h3>2. Refund Policy</h3>
|
||||||
|
<h4>2.1 Automatic Refund (Within 48 Hours)</h4>
|
||||||
|
<p>All subscription purchases are eligible for a <strong>full automatic refund within 48 hours</strong> of payment. Refunds will be processed automatically without manual review.</p>
|
||||||
|
<hr>
|
||||||
|
<h4>2.2 Standard Refund Window (30 Days)</h4>
|
||||||
|
<p>After the initial 48-hour period, users may request a refund within <strong>30 days of purchase.</strong></p>
|
||||||
|
<ul>
|
||||||
|
<li>All subscription plans (3-Month, 1-Year, 2-Year) are eligible</li>
|
||||||
|
<li>Refund requests are subject to review and approval</li>
|
||||||
|
<li>Refunds may be partially adjusted based on usage and service consumption</li>
|
||||||
|
</ul>
|
||||||
|
<hr>
|
||||||
|
<h4>2.3 No Refund After 30 Days</h4>
|
||||||
|
<p>Subscriptions older than 30 days are non-refundable.</p>
|
||||||
|
<hr>
|
||||||
|
<h3>3. Subscription Cancellation</h3>
|
||||||
|
<p>Users may cancel their subscription at any time.</p>
|
||||||
|
<ul>
|
||||||
|
<li>Cancellation stops future billing</li>
|
||||||
|
<li>The current subscription remains active until the end of the billing period</li>
|
||||||
|
<li>No partial refund is issued after cancellation unless within the refund window</li>
|
||||||
|
</ul>
|
||||||
|
<hr>
|
||||||
|
<h3>4. Policy Updates</h3>
|
||||||
|
<p>ABBIDOT reserves the right to update or modify these Terms and Conditions at any time. Users will be notified of significant changes.</p>
|
||||||
|
<p>By subscribing to ABBIDOT services, you agree to these terms.</p>
|
||||||
|
<hr>
|
||||||
|
<h3>5. Customer Support</h3>
|
||||||
|
<p>If you encounter any difficulties, please contact us at:</p>
|
||||||
|
<p><a title="Mail to subscription@abbidot.com" href="subscription@abbidot.com">subscription@abbidot.com</a></p>
|
||||||
|
<p>Our support team will assist you as soon as possible.</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
54
app/src/main/assets/subscription_terms_conditions_fr.html
Normal file
54
app/src/main/assets/subscription_terms_conditions_fr.html
Normal file
@@ -0,0 +1,54 @@
|
|||||||
|
<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8" ><meta name=ProgId content=Word.Document ><meta name=Generator content="Microsoft Word 14" ><meta name=Originator content="Microsoft Word 14" ><title></title></head>
|
||||||
|
<body>
|
||||||
|
<div>
|
||||||
|
|
||||||
|
<h2>Conditions générales de l'abonnement ABBIDOT Tracker</h2>
|
||||||
|
<hr>
|
||||||
|
<h3>1. Plans d'abonnement</h3>
|
||||||
|
<p>ABBIDOT propose trois plans d'abonnement :</p>
|
||||||
|
<ul>
|
||||||
|
<li>Plan de 3 mois</li>
|
||||||
|
<li>Plan de 1 an</li>
|
||||||
|
<li>Plan de 2 ans</li>
|
||||||
|
</ul>
|
||||||
|
<p>Tous les abonnements sont automatiquement renouvelés à la fin de chaque cycle de facturation, sauf annulation par l'utilisateur.</p>
|
||||||
|
<p>Les utilisateurs peuvent annuler leur abonnement à tout moment. Après l'annulation, l'abonnement restera actif jusqu'à la fin de la période de facturation en cours, et aucun frais supplémentaire ne sera appliqué.</p>
|
||||||
|
<p>L'appareil continuera de fonctionner normalement pendant la période d'abonnement active.</p>
|
||||||
|
<hr>
|
||||||
|
<h3>2. Politique de remboursement</h3>
|
||||||
|
<h4>2.1 Remboursement automatique (dans les 48 heures)</h4>
|
||||||
|
<p>Tous les achats d'abonnement sont éligibles à un <strong>remboursement automatique intégral dans les 48 heures</strong> suivant le paiement. Les remboursements seront traités automatiquement sans examen manuel.</p>
|
||||||
|
<hr>
|
||||||
|
<h4>2.2 Fenêtre de remboursement standard (30 jours)</h4>
|
||||||
|
<p>Après la période initiale de 48 heures, les utilisateurs peuvent demander un remboursement dans les <strong>30 jours suivant l'achat.</strong></p>
|
||||||
|
<ul>
|
||||||
|
<li>Tous les plans d'abonnement (3 mois, 1 an, 2 ans) sont éligibles</li>
|
||||||
|
<li>Les demandes de remboursement sont soumises à examen et approbation</li>
|
||||||
|
<li>Les remboursements peuvent être partiellement ajustés en fonction de l'utilisation et de la consommation de services</li>
|
||||||
|
</ul>
|
||||||
|
<hr>
|
||||||
|
<h4>2.3 Aucun remboursement après 30 jours</h4>
|
||||||
|
<p>Les abonnements de plus de 30 jours ne sont pas remboursables.</p>
|
||||||
|
<hr>
|
||||||
|
<h3>3. Annulation de l'abonnement</h3>
|
||||||
|
<p>Les utilisateurs peuvent annuler leur abonnement à tout moment.</p>
|
||||||
|
<ul>
|
||||||
|
<li>L'annulation arrête la facturation future</li>
|
||||||
|
<li>L'abonnement en cours reste actif jusqu'à la fin de la période de facturation</li>
|
||||||
|
<li>Aucun remboursement partiel n'est effectué après l'annulation, sauf dans la fenêtre de remboursement</li>
|
||||||
|
</ul>
|
||||||
|
<hr>
|
||||||
|
<h3>4. Mises à jour de la politique</h3>
|
||||||
|
<p>ABBIDOT se réserve le droit de mettre à jour ou de modifier ces Conditions générales à tout moment. Les utilisateurs seront informés des modifications importantes.</p>
|
||||||
|
<p>En vous abonnant aux services ABBIDOT, vous acceptez ces conditions.</p>
|
||||||
|
<hr>
|
||||||
|
<h3>5. Service client</h3>
|
||||||
|
<p>Si vous rencontrez des difficultés, veuillez nous contacter à :</p>
|
||||||
|
<p><a title="Mail to subscription@abbidot.com" href="subscription@abbidot.com">subscription@abbidot.com</a></p>
|
||||||
|
<p>Notre équipe d'assistance vous aidera dans les meilleurs délais.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</body></html>
|
||||||
54
app/src/main/assets/subscription_terms_conditions_zh.html
Normal file
54
app/src/main/assets/subscription_terms_conditions_zh.html
Normal file
@@ -0,0 +1,54 @@
|
|||||||
|
<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8" ><meta name=ProgId content=Word.Document ><meta name=Generator content="Microsoft Word 14" ><meta name=Originator content="Microsoft Word 14" ><title></title></head>
|
||||||
|
<body>
|
||||||
|
<div>
|
||||||
|
|
||||||
|
<h2>ABBIDOT 追踪器订阅条款与条件</h2>
|
||||||
|
<hr>
|
||||||
|
<h3>1. 订阅计划</h3>
|
||||||
|
<p>ABBIDOT 提供三种订阅计划:</p>
|
||||||
|
<ul>
|
||||||
|
<li>3 个月计划</li>
|
||||||
|
<li>1 年计划</li>
|
||||||
|
<li>2 年计划</li>
|
||||||
|
</ul>
|
||||||
|
<p>所有订阅在每个计费周期结束时自动续费,除非用户取消。</p>
|
||||||
|
<p>用户可随时取消订阅。取消后,订阅将在当前计费周期结束前保持有效,且不会产生额外费用。</p>
|
||||||
|
<p>在有效订阅期内,设备将继续正常运行。</p>
|
||||||
|
<hr>
|
||||||
|
<h3>2. 退款政策</h3>
|
||||||
|
<h4>2.1 自动退款(48 小时内)</h4>
|
||||||
|
<p>所有订阅购买均可在付款后 <strong>48 小时内获得全额自动退款</strong>。退款将自动处理,无需人工审核。</p>
|
||||||
|
<hr>
|
||||||
|
<h4>2.2 标准退款窗口(30 天)</h4>
|
||||||
|
<p>在初始 48 小时之后,用户可在 <strong>购买后 30 天内</strong>申请退款。</p>
|
||||||
|
<ul>
|
||||||
|
<li>所有订阅计划(3 个月、1 年、2 年)均适用</li>
|
||||||
|
<li>退款申请需经审核和批准</li>
|
||||||
|
<li>退款可能会根据使用情况和服务消耗进行部分调整</li>
|
||||||
|
</ul>
|
||||||
|
<hr>
|
||||||
|
<h4>2.3 30 天后不予退款</h4>
|
||||||
|
<p>超过 30 天的订阅不可退款。</p>
|
||||||
|
<hr>
|
||||||
|
<h3>3. 订阅取消</h3>
|
||||||
|
<p>用户可随时取消订阅。</p>
|
||||||
|
<ul>
|
||||||
|
<li>取消将停止未来的计费</li>
|
||||||
|
<li>当前订阅在计费周期结束前仍保持有效</li>
|
||||||
|
<li>取消后不予部分退款,但在退款窗口期内除外</li>
|
||||||
|
</ul>
|
||||||
|
<hr>
|
||||||
|
<h3>4. 政策更新</h3>
|
||||||
|
<p>ABBIDOT 保留随时更新或修改这些条款与条件的权利。重大变更将通知用户。</p>
|
||||||
|
<p>订阅 ABBIDOT 服务即表示您同意这些条款。</p>
|
||||||
|
<hr>
|
||||||
|
<h3>5. 客户支持</h3>
|
||||||
|
<p>如果您遇到任何困难,请通过以下方式联系我们:</p>
|
||||||
|
<p><a title="Mail to subscription@abbidot.com" href="subscription@abbidot.com">subscription@abbidot.com</a></p>
|
||||||
|
<p>我们的支持团队将尽快为您提供帮助。</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</body></html>
|
||||||
@@ -1,476 +0,0 @@
|
|||||||
<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=gb2312" ><meta name=ProgId content=Word.Document ><meta name=Generator content="Microsoft Word 14" ><meta name=Originator content="Microsoft Word 14" ><title></title><!--[if gte mso 9]><xml><o:DocumentProperties><o:Author>Administrator</o:Author><o:LastAuthor>Administrator</o:LastAuthor><o:Revision>1</o:Revision><o:Pages>4</o:Pages><o:Characters>4655</o:Characters></o:DocumentProperties><o:CustomDocumentProperties><o:KSOProductBuildVer dt:dt="string" >2052-11.1.0.11875</o:KSOProductBuildVer><o:ICV dt:dt="string" >FBB05287C6EE4A78BF914DBD714C3B04</o:ICV></o:CustomDocumentProperties></xml><![endif]--><!--[if gte mso 9]><xml><o:OfficeDocumentSettings></o:OfficeDocumentSettings></xml><![endif]--><!--[if gte mso 9]><xml><w:WordDocument><w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel><w:DisplayHorizontalDrawingGridEvery>0</w:DisplayHorizontalDrawingGridEvery><w:DisplayVerticalDrawingGridEvery>2</w:DisplayVerticalDrawingGridEvery><w:DocumentKind>DocumentNotSpecified</w:DocumentKind><w:DrawingGridVerticalSpacing>7.8 <20><></w:DrawingGridVerticalSpacing><w:View>Web</w:View><w:Compatibility><w:AdjustLineHeightInTable/><w:DontGrowAutofit/><w:BalanceSingleByteDoubleByteWidth/><w:DoNotExpandShiftReturn/><w:UseFELayout/></w:Compatibility><w:Zoom>0</w:Zoom></w:WordDocument></xml><![endif]--><!--[if gte mso 9]><xml><w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="true" DefSemiHidden="true" DefQFormat="false" DefPriority="99" LatentStyleCount="260" >
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Normal" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="heading 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" QFormat="true" Name="heading 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" QFormat="true" Name="heading 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" QFormat="true" Name="heading 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" QFormat="true" Name="heading 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" QFormat="true" Name="heading 6" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" QFormat="true" Name="heading 7" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" QFormat="true" Name="heading 8" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" QFormat="true" Name="heading 9" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="index 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="index 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="index 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="index 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="index 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="index 6" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="index 7" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="index 8" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="index 9" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="toc 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="toc 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="toc 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="toc 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="toc 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="toc 6" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="toc 7" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="toc 8" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="toc 9" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Normal Indent" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="footnote text" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="annotation text" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="header" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="footer" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="index heading" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" QFormat="true" Name="caption" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="table of figures" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="envelope address" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="envelope return" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="footnote reference" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="annotation reference" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="line number" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="page number" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="endnote reference" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="endnote text" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="table of authorities" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="macro" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="toa heading" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List Bullet" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List Number" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List Bullet 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List Bullet 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List Bullet 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List Bullet 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List Number 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List Number 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List Number 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List Number 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Title" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Closing" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Signature" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" UnhideWhenUsed="false" Name="Default Paragraph Font" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Body Text" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Body Text Indent" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List Continue" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List Continue 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List Continue 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List Continue 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="List Continue 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Message Header" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Subtitle" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Salutation" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Date" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Body Text First Indent" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Body Text First Indent 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Note Heading" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Body Text 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Body Text 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Body Text Indent 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Body Text Indent 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Block Text" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Hyperlink" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="FollowedHyperlink" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Strong" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" QFormat="true" Name="Emphasis" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Document Map" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Plain Text" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="E-mail Signature" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Normal (Web)" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="HTML Acronym" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="HTML Address" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="HTML Cite" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="HTML Code" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="HTML Definition" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="HTML Keyboard" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="HTML Preformatted" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="HTML Sample" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="HTML Typewriter" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="HTML Variable" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" UnhideWhenUsed="false" Name="Normal Table" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="annotation subject" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="99" SemiHidden="false" Name="No List" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="99" SemiHidden="false" Name="1 / a / i" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="99" SemiHidden="false" Name="1 / 1.1 / 1.1.1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="99" SemiHidden="false" Name="Article / Section" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Simple 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Simple 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Simple 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Classic 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Classic 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Classic 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Classic 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Colorful 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Colorful 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Colorful 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Columns 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Columns 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Columns 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Columns 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Columns 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Grid 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Grid 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Grid 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Grid 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Grid 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Grid 6" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Grid 7" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Grid 8" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table List 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table List 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table List 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table List 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table List 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table List 6" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table List 7" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table List 8" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table 3D effects 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table 3D effects 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table 3D effects 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Contemporary" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Elegant" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Professional" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Subtle 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Subtle 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Web 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Web 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Web 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Balloon Text" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Grid" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="0" SemiHidden="false" UnhideWhenUsed="false" Name="Table Theme" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="99" SemiHidden="false" Name="Placeholder Text" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="99" SemiHidden="false" Name="No Spacing" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading Accent 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List Accent 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid Accent 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="99" SemiHidden="false" Name="List Paragraph" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="99" SemiHidden="false" Name="Quote" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="99" SemiHidden="false" Name="Intense Quote" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List Accent 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List Accent 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 1" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading Accent 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List Accent 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid Accent 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List Accent 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List Accent 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 2" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading Accent 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List Accent 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid Accent 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List Accent 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List Accent 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 3" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading Accent 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List Accent 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid Accent 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List Accent 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List Accent 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 4" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading Accent 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List Accent 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid Accent 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List Accent 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List Accent 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 5" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="60" SemiHidden="false" UnhideWhenUsed="false" Name="Light Shading Accent 6" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="61" SemiHidden="false" UnhideWhenUsed="false" Name="Light List Accent 6" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="62" SemiHidden="false" UnhideWhenUsed="false" Name="Light Grid Accent 6" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="63" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 1 Accent 6" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="64" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Shading 2 Accent 6" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="65" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 1 Accent 6" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="66" SemiHidden="false" UnhideWhenUsed="false" Name="Medium List 2 Accent 6" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="67" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 1 Accent 6" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="68" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 2 Accent 6" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="69" SemiHidden="false" UnhideWhenUsed="false" Name="Medium Grid 3 Accent 6" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="70" SemiHidden="false" UnhideWhenUsed="false" Name="Dark List Accent 6" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="71" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Shading Accent 6" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="72" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful List Accent 6" ></w:LsdException>
|
|
||||||
<w:LsdException Locked="false" Priority="73" SemiHidden="false" UnhideWhenUsed="false" Name="Colorful Grid Accent 6" ></w:LsdException>
|
|
||||||
</w:LatentStyles></xml><![endif]--><style>
|
|
||||||
@font-face{
|
|
||||||
font-family:"Times New Roman";
|
|
||||||
}
|
|
||||||
|
|
||||||
@font-face{
|
|
||||||
font-family:"<22><><EFBFBD><EFBFBD>";
|
|
||||||
}
|
|
||||||
|
|
||||||
@font-face{
|
|
||||||
font-family:"Wingdings";
|
|
||||||
}
|
|
||||||
|
|
||||||
@font-face{
|
|
||||||
font-family:"Calibri";
|
|
||||||
}
|
|
||||||
|
|
||||||
p.MsoNormal{
|
|
||||||
mso-style-name:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
|
||||||
mso-style-parent:"";
|
|
||||||
margin:0pt;
|
|
||||||
margin-bottom:.0001pt;
|
|
||||||
mso-pagination:none;
|
|
||||||
text-align:justify;
|
|
||||||
text-justify:inter-ideograph;
|
|
||||||
font-family:Calibri;
|
|
||||||
mso-fareast-font-family:<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';
|
|
||||||
font-size:10.5000pt;
|
|
||||||
mso-font-kerning:1.0000pt;
|
|
||||||
}
|
|
||||||
|
|
||||||
span.10{
|
|
||||||
font-family:'Times New Roman';
|
|
||||||
}
|
|
||||||
|
|
||||||
span.msoIns{
|
|
||||||
mso-style-type:export-only;
|
|
||||||
mso-style-name:"";
|
|
||||||
text-decoration:underline;
|
|
||||||
text-underline:single;
|
|
||||||
color:blue;
|
|
||||||
}
|
|
||||||
|
|
||||||
span.msoDel{
|
|
||||||
mso-style-type:export-only;
|
|
||||||
mso-style-name:"";
|
|
||||||
text-decoration:line-through;
|
|
||||||
color:red;
|
|
||||||
}
|
|
||||||
|
|
||||||
table.MsoNormalTable{
|
|
||||||
mso-style-name:<EFBFBD><EFBFBD>ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
|
||||||
mso-style-parent:"";
|
|
||||||
mso-style-noshow:yes;
|
|
||||||
mso-tstyle-rowband-size:0;
|
|
||||||
mso-tstyle-colband-size:0;
|
|
||||||
mso-padding-alt:0.0000pt 5.4000pt 0.0000pt 5.4000pt;
|
|
||||||
mso-para-margin:0pt;
|
|
||||||
mso-para-margin-bottom:.0001pt;
|
|
||||||
mso-pagination:widow-orphan;
|
|
||||||
font-family:'Times New Roman';
|
|
||||||
font-size:10.0000pt;
|
|
||||||
mso-ansi-language:#0400;
|
|
||||||
mso-fareast-language:#0400;
|
|
||||||
mso-bidi-language:#0400;
|
|
||||||
}
|
|
||||||
@page{mso-page-border-surround-header:no;
|
|
||||||
mso-page-border-surround-footer:no;}@page Section0{
|
|
||||||
margin-top:72.0000pt;
|
|
||||||
margin-bottom:72.0000pt;
|
|
||||||
margin-left:90.0000pt;
|
|
||||||
margin-right:90.0000pt;
|
|
||||||
size:595.3000pt 841.9000pt;
|
|
||||||
layout-grid:15.6000pt;
|
|
||||||
mso-header-margin:42.5500pt;
|
|
||||||
mso-footer-margin:49.6000pt;
|
|
||||||
}
|
|
||||||
div.Section0{page:Section0;}</style></head><body style="tab-interval:21pt;text-justify-trim:punctuation;" ><!--StartFragment--><div class="Section0" style="layout-grid:15.6000pt;" ><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" ><font face="<22><><EFBFBD><EFBFBD>" ><EFBFBD><EFBFBD><EFBFBD>˳<EFBFBD><EFBFBD></font>ABBIDOT<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɼ<EFBFBD>ʹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" ><font face="<22><><EFBFBD><EFBFBD>" ><EFBFBD><EFBFBD>лʹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˾<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD></font><font face="<22><><EFBFBD><EFBFBD>" ><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˾<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>IJ<EFBFBD>Ʒ<EFBFBD>ͷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><EFBFBD>ķ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD>Ʒǰ<EFBFBD><EFBFBD>ϸ<EFBFBD>Ķ<EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD>ơ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><EFBFBD>IJ<EFBFBD>Ʒ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ע<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>ܶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD>ͬ<EFBFBD>Ȿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>й<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۰<EFBFBD>̨<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ס<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κι<EFBFBD><EFBFBD>ң<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ر<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>õ<EFBFBD><EFBFBD>ر<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>в<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʵ<EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD>Ը<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD>֮<EFBFBD><EFBFBD><EFBFBD>ͷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD>Ʒ<EFBFBD><EFBFBD>ʹ<EFBFBD>ö<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ľ<EFBFBD><EFBFBD>з<EFBFBD><EFBFBD><EFBFBD>Լ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Э<EFBFBD>顣<EFBFBD><EFBFBD><EFBFBD>ǿ<EFBFBD><EFBFBD>ܻ<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Щ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ش<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҽ<EFBFBD><EFBFBD>Թ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ķ<EFBFBD>ʽ<EFBFBD><EFBFBD>֪<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>飬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֹͣʹ<EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><EFBFBD>ķ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD>Ʒ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֪ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ñ<EFBFBD><EFBFBD><EFBFBD>˾<EFBFBD>ṩ<EFBFBD>ķ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD>Ʒ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>ó<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽ̨<EFBFBD>Ͳ<EFBFBD>Ʒ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>÷<EFBFBD><EFBFBD>ɽ<EFBFBD>ֹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>ѽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>˸<EFBFBD><EFBFBD>º<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></font></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" ><font face="<22><><EFBFBD><EFBFBD>" >һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></font></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" ><font face="<22><><EFBFBD><EFBFBD>" ><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><EFBFBD></font>18<EFBFBD><EFBFBD><EFBFBD>꣬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD>ø<EFBFBD>ĸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD>ͬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʸ<EFBFBD>ʹ<EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><EFBFBD>ķ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD>Ʒ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD><EFBFBD>ң<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><EFBFBD>ض<EFBFBD>ƽ̨<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڹ<EFBFBD><EFBFBD>ң<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ع涨<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>18<EFBFBD><EFBFBD><EFBFBD>꣬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ע<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>ܶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¹<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(1<><31><EFBFBD>ṩ<EFBFBD><E1B9A9>ʵ<EFBFBD><CAB5><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7>ȷ<D7BC><C8B7><EFBFBD><EFBFBD><EFBFBD>µĸ<C2B5><C4B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͻ<EFBFBD><CFBD><EFBFBD>ע<EFBFBD>ᡣ(2<><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ί<EFBFBD><CEAF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ע<EFBFBD><D7A2><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD>˻<EFBFBD><CBBB><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>ע<EFBFBD><D7A2><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC>˻<EFBFBD><CBBB><EFBFBD></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(3<><33><EFBFBD><EFBFBD><EFBFBD>Ʊ<EFBFBD><C6B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˻<EFBFBD><CBBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȩ<EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD>ת<EFBFBD><D7AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˻<EFBFBD><CBBB><EFBFBD></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(4<><34><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD>δ<EFBFBD><CEB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD>˻<EFBFBD><CBBB>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC>ṩ<EFBFBD>ķ<EFBFBD><C4B7><EFBFBD><EFBFBD>Ͳ<EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֪ͨ<CDA8><D6AA><EFBFBD>ǡ<EFBFBD></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(5<><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD>˻<EFBFBD><CBBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κκ<CEBA><CEBA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<C7B7><F1BEADB9><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD>⡣<EFBFBD><E2A1A3><EFBFBD><EFBFBD><EFBFBD>÷<EFBFBD><C3B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><DEB6>ڣ<EFBFBD><DAA3>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD><CEBA><EFBFBD>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD>δ<EFBFBD><CEB4><EFBFBD><EFBFBD>Ȩʹ<C8A8><CAB9><EFBFBD><EFBFBD><EFBFBD>˻<EFBFBD><CBBB><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" ><font face="<22><><EFBFBD><EFBFBD>" ><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȩ</font></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⣬<EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD>Ʒ<EFBFBD>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>롢<EFBFBD>ű<EFBFBD><C5B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ơ<EFBFBD>ͼ<EFBFBD>Ρ<EFBFBD>Ӱ<EFBFBD><D3B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֡<EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¡<EFBFBD><C2A1><EFBFBD><EFBFBD>ű<EFBFBD><C5B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>廭<EFBFBD><E5BBAD>Ӧ<EFBFBD>ó<EFBFBD><C3B3><EFBFBD><F2A1A2BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܼ<EFBFBD><DCBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD>Ϊ<EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD>Ȩʹ<C8A8>õĵ<C3B5><C4B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><D0A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȩ<EFBFBD><C8A8><EFBFBD>̱ꡢר<EAA1A2><D7A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD><C9B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڱ<EFBFBD><DAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȷ˵<C8B7><CBB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⣬<EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(2<><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̱ꡢ<CCB1><EAA1A2>־<EFBFBD><D6BE><EFBFBD><EFBFBD><EFBFBD>ۡ<EFBFBD><DBA1><EFBFBD>װ<EFBFBD><D7B0><EFBFBD><EFBFBD><EFBFBD>磬<EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƺͱ<C6BA>־<EFBFBD><D6BE><EFBFBD>ƣ<EFBFBD>Ϊ<EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD>С<EFBFBD>ע<EFBFBD><D7A2><EFBFBD>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɡ<EFBFBD><C9A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>ʹ<EFBFBD><CAB9><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC>ķ<EFBFBD><C4B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC>IJ<EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD><CEBA>̱ꡢ<CCB1><EAA1A2>־<EFBFBD><D6BE><EFBFBD><EFBFBD><EFBFBD>ۡ<EFBFBD><DBA1><EFBFBD>װ<EFBFBD><D7B0><EFBFBD><EFBFBD><EFBFBD>ɻ<EFBFBD><C9BB>κ<EFBFBD><CEBA><EFBFBD><EFBFBD><EFBFBD>Ȩ<EFBFBD><C8A8></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(3<><33><EFBFBD><EFBFBD>ͬ<EFBFBD>ⲻ<EFBFBD><E2B2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD>κδ<CEBA><CEB4>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD>ػ<EFBFBD><D8BB><EFBFBD>ӡ<EFBFBD>IJ<EFBFBD><C4B2><EFBFBD><EFBFBD>ϵ<EFBFBD><CFB5><EFBFBD><EFBFBD><EFBFBD>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(4<><34><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD><CEBA><EFBFBD><EFBFBD><EFBFBD>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD>ݷ<EFBFBD>Χ<EFBFBD>ڣ<EFBFBD><DAA3>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˵ġ<CBB5><C4A1><EFBFBD><EFBFBD>ġ<DEB5><C4A1><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD>õġ<C3B5><C4A1><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><D7AA><EFBFBD>ɵġ<C9B5><C4A1>ɳ<EFBFBD><C9B3><EFBFBD><EFBFBD>Ľ<EFBFBD>Ϊ<EFBFBD><CEAA>Ԥ<EFBFBD><D4A4>ʹ<EFBFBD><CAB9>Ŀ<EFBFBD><C4BF><EFBFBD>ҽ<EFBFBD><D2BD><EFBFBD><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڹ<EFBFBD><DAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><DEB6>ڷ<EFBFBD><DAB7>ʡ<EFBFBD><CAA1><EFBFBD><EFBFBD>ز<EFBFBD>ʹ<EFBFBD>ô<EFBFBD><C3B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>а<EFBFBD><D0B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD><CEBA>̱<EFBFBD><CCB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֪ʶ<D6AA><CAB6>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD><CEBA><EFBFBD><EFBFBD><EFBFBD>ȨȨ<C8A8><C8A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݽ<EFBFBD><DDBD><EFBFBD><DEB8><EFBFBD>ʹ<EFBFBD>ã<EFBFBD><C3A3><EFBFBD>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD><D2B5>;<EFBFBD><CDBE></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(5<><35><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ල<EFBFBD><E0B6BD><EFBFBD><EFBFBD>ʹ<EFBFBD>ò<EFBFBD><C3B2><EFBFBD><EFBFBD>κ<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD><CEBA><EFBFBD><EFBFBD>ɱ<EFBFBD><C9B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɻ<EFBFBD><C9BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵķ<DDB5><C4B7><EFBFBD>Ȩ<EFBFBD><EFBFBD>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Υ<EFBFBD><CEA5><EFBFBD>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD>֪ʶ<D6AA><CAB6>Ȩ<EFBFBD><C8A8>ɾ<EFBFBD><C9BE><EFBFBD>κ<EFBFBD><CEBA><EFBFBD><EFBFBD>ݵ<EFBFBD>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݰ<EFBFBD><DDB0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȩ<EFBFBD><C8A8><EFBFBD>κ<EFBFBD>Ȩ<EFBFBD><C8A8><EFBFBD>ķ<EFBFBD></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" ><font face="<22><><EFBFBD><EFBFBD>" ><EFBFBD><EFBFBD><EFBFBD><EFBFBD></font></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(6<><36><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD>ص<EFBFBD><D8B5>ض<EFBFBD>ʹ<EFBFBD><CAB9>Ȩ<EFBFBD><C8A8><EFBFBD>⣬δ<E2A3AC><CEB4><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD>⣬<EFBFBD><E2A3AC>ʹ<EFBFBD>á<EFBFBD><C3A1><EFBFBD><EFBFBD>ơ<EFBFBD><C6A1>༭<EFBFBD><E0BCAD><EFBFBD><EFBFBD><EFBFBD>ء<EFBFBD><D8A1><EFBFBD><EFBFBD>롢<EFBFBD><EBA1A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ۡ<EFBFBD><DBA1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD>κη<CEBA>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD><CEBA><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϸ<EFBFBD><CFB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD><CEBA><EFBFBD><EFBFBD>ݡ<EFBFBD>δ<EFBFBD><CEB4><EFBFBD><EFBFBD>Ȩʹ<C8A8><CAB9><EFBFBD><EFBFBD><EFBFBD>ݿ<EFBFBD><DDBF><EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD>ܵ<EFBFBD><DCB5><EFBFBD><EFBFBD>»<EFBFBD><C2BB><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD>غʹ<D8BA><CDB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC>Դ˲<D4B4><CBB2>е<EFBFBD><D0B5>κ<EFBFBD><CEBA><EFBFBD><EFBFBD>Ρ<EFBFBD></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" ><font face="<22><><EFBFBD><EFBFBD>" ><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></font></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" ><font face="<22><><EFBFBD><EFBFBD>" ><EFBFBD>ܶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>ó<EFBFBD><EFBFBD><EFBFBD>ƽ̨<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD></font><font face="<22><><EFBFBD><EFBFBD>" ><EFBFBD><EFBFBD>ƽ̨<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֡<EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ۺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˻<EFBFBD><EFBFBD>κδ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɣ<EFBFBD></font></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD><CEBA><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD><CEBA><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD><EFBFBD>ݸ<EFBFBD><DDB8><EFBFBD><EFBFBD><EFBFBD></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(2<><32><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><DEB8>κη<CEBA><CEB7><EFBFBD><EFBFBD><EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD>ص<EFBFBD>Υ<EFBFBD><CEA5><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD>Ф<EFBFBD><D0A4>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڰ<EFBFBD><DAB0><EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD><D2B5>;<EFBFBD><CDBE><EFBFBD>ڵ<EFBFBD><DAB5>κ<EFBFBD>Υ<EFBFBD><CEA5><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD>Υ<EFBFBD><CEA5><EFBFBD><EFBFBD><EFBFBD>ơ<EFBFBD><C6A1>ġ<DEB8><C4A1><EFBFBD><EFBFBD>롢<EFBFBD><EBA1A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7>ת<EFBFBD><D7AA><EFBFBD>ɡ<EFBFBD><C9A1>ַ<EFBFBD><D6B7><EFBFBD>ת<EFBFBD>õ<EFBFBD>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(3<><33><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѱ<EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݿ<EFBFBD><DDBF><EFBFBD><EFBFBD>ѱ<EFBFBD>ת<EFBFBD>ش<EFBFBD><D8B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܼ<EFBFBD><DCBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ظ<EFBFBD><D8B8><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>÷<EFBFBD><C3B7><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>θ<EFBFBD><CEB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϡ<EFBFBD></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(4<><34><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ⷢ<EFBFBD><E2B7A2><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD>ƽ̨<C6BD>ϵ<EFBFBD><CFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݾ<EFBFBD><DDBE>ڷDZ<DAB7><C7B1>ܵĻ<DCB5><C4BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ṩ<EFBFBD><E1B9A9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD>õġ<C3B5><C4A1>Ƕ<EFBFBD><C7B6>ҵġ<D2B5><C4A1><EFBFBD>ת<EFBFBD>õġ<C3B5><C4A1><EFBFBD>ת<EFBFBD><D7AA><EFBFBD>ɵġ<C9B5><C4A1><EFBFBD><EFBFBD><EFBFBD>˰<EFBFBD>ġ<EFBFBD>ȫ<EFBFBD><C8AB><EFBFBD>緶Χ<E7B7B6><CEA7><EFBFBD><EFBFBD><EFBFBD>ɡ<EFBFBD><C9A1><EFBFBD><EFBFBD>Բ<EFBFBD><D4B2><EFBFBD>֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȷ<EFBFBD>ϵ<EFBFBD><CFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>κ<EFBFBD>Ŀ<EFBFBD><C4BF>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽ̨<C6BD>ϵ<EFBFBD><CFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڿ<EFBFBD><DABF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ļ<DEB8><C4BB>Ľ<EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" ><font face="<22><><EFBFBD><EFBFBD>" ><EFBFBD>ġ<EFBFBD><EFBFBD>û<EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>淶</font></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" ><font face="<22><><EFBFBD><EFBFBD>" ><EFBFBD>ܶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><EFBFBD><EFBFBD>Ϊרҵ<EFBFBD><EFBFBD>ƽ̨<EFBFBD><EFBFBD><EFBFBD>߱<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>罻<EFBFBD><EFBFBD><EFBFBD>ܣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˽Ⲣ<EFBFBD>ϸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¹<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></font></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(1<><31><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD>Ȩɸѡ<C9B8><D1A1><EFBFBD>ල<EFBFBD><E0B6BD>ɾ<EFBFBD><C9BE><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IJ<EFBFBD><C4B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ٱ<EFBFBD><D9B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߡ<EFBFBD><DFA1><EFBFBD>֤Υ<D6A4><CEA5><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(2<><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD><F0B7A2B2>κ<EFBFBD>Υ<EFBFBD><CEA5><EFBFBD>ġ<EFBFBD><C4A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ġ<EFBFBD><C4A1>ġ<F3B5BCB5>ɧ<EFBFBD>ŵġ<C5B5>ɫ<EFBFBD><C9AB><EFBFBD>ġ<EFBFBD><C4A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ġ<EFBFBD><C4A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵġ<D3B5><C4A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵĻ<D3B5><C4BB><EFBFBD><EFBFBD>˷<EFBFBD><CBB7>еġ<D0B5><C4A1><EFBFBD>ǡ<EFBFBD><C7A1><EFBFBD>Ļ<EFBFBD>Υ<EFBFBD><CEA5><EFBFBD><EFBFBD><EFBFBD>÷<EFBFBD><C3B7>ɷ<EFBFBD><C9B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݡ<EFBFBD><DDA1><EFBFBD><EFBFBD>ӻ<EFBFBD><D3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κξ<CEBA><CEBE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(3<><33><EFBFBD><EFBFBD><EFBFBD><EFBFBD><F0B7A2B2>κ<EFBFBD><CEBA><EFBFBD><EFBFBD><EFBFBD>δӵ<CEB4><D3B5>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD><EFBFBD>ɼ<EFBFBD>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>г<EFBFBD><D0B3>ֻ<EFBFBD><D6BB>ᵽ<EFBFBD><E1B5BD><EFBFBD>κ<EFBFBD><CEBA><EFBFBD></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" ><font face="<22><><EFBFBD><EFBFBD>" ><EFBFBD>ɡ<EFBFBD></font></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(4<><34><EFBFBD><EFBFBD><EFBFBD><EFBFBD><F0B7A2B2>κο<CEBA><CEBF><EFBFBD><EFBFBD>˺<EFBFBD><CBBA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD>绰<EFBFBD><E7BBB0><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" ><font face="<22><><EFBFBD><EFBFBD>" >Ϣ<EFBFBD><EFBFBD></font></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(5<><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD><F0B7A2B2>κι<CEBA><CEB9>桢<EFBFBD><E6A1A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD><D2B5><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κε<CEBA><CEB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ij<EFBFBD><C4B3>ͽ<EFBFBD><CDBD><EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD><EFBFBD><EEB6AF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD>Ȩ<EFBFBD><C8A8></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(6<><36><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD>¡<EFBFBD>αװ<CEB1><D7B0><EFBFBD>κ<EFBFBD><CEBA><EFBFBD><EFBFBD>˻<EFBFBD><CBBB><EFBFBD>֯<EFBFBD><D6AF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD>Ա<EFBFBD><D4B1><EFBFBD><EFBFBD></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(7<><37><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD><CEBA>Զ<EFBFBD>ץȡ<D7A5><C8A1><EFBFBD>ھ<EFBFBD><DABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>ݲɼ<DDB2><C9BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(8<><38><EFBFBD><EFBFBD><EFBFBD><EFBFBD><F0B7A2B2>κο<CEBA><CEBF>ܹ<EFBFBD><DCB9>ܡ<EFBFBD><DCA1><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD>۸<EFBFBD>ƽ̨<C6BD><CCA8>ȫϵͳ<CFB5><CDB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>룬<EFBFBD><EBA3AC><EFBFBD><EFBFBD><EFBFBD>κο<CEBA><CEBF>ܸ<EFBFBD><DCB8>š<EFBFBD><C5A1><EFBFBD><F0BBB5A1><EFBFBD><EFBFBD>ơ<EFBFBD>ʹ<EFBFBD><EFBFBD><DEB7><EFBFBD><EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɻ<EFBFBD><C9BB><EFBFBD><EFBFBD><EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD>ܵ<EFBFBD><DCB5><EFBFBD><EFBFBD>ݡ<EFBFBD></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" ><font face="<22><><EFBFBD><EFBFBD>" ><EFBFBD>塢<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ</font></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" ><font face="<22><><EFBFBD><EFBFBD>" ><EFBFBD>ܶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>վ<EFBFBD><EFBFBD>ý<EFBFBD>塢ƽ̨<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƶ<EFBFBD>Ӧ<EFBFBD><EFBFBD><EFBFBD>Լ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></font><font face="<22><><EFBFBD><EFBFBD>" ><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܹ<EFBFBD>ͨ<EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD>ƽ̨<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>л<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ⲣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD>ܶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><EFBFBD>Ͽɡ<EFBFBD><EFBFBD>ල<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ե<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ге<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ķ<EFBFBD><EFBFBD>ա<EFBFBD></font></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" ><font face="<22><><EFBFBD><EFBFBD>" ><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></font></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(1<><31><EFBFBD><EFBFBD><EFBFBD>ڹ<EFBFBD><DAB9><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC>IJ<EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD>ǿ<EFBFBD><C7BF><EFBFBD><EFBFBD>漰<EFBFBD><E6BCB0><EFBFBD><EFBFBD><EFBFBD>з<EFBFBD><D0B7>ա<EFBFBD>(2<><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD><CEBA><EFBFBD><EFBFBD>ݻ<EFBFBD><DDBB><EFBFBD><EFBFBD>յ<EFBFBD><D5B5>κ<EFBFBD><CEBA><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD>ӿ<EFBFBD><D3BF><EFBFBD><EFBFBD>漰<EFBFBD><E6BCB0><EFBFBD><EFBFBD><EFBFBD>з<EFBFBD><D0B7>ա<EFBFBD></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(3<><33><EFBFBD><EFBFBD><EFBFBD>ڻ<EFBFBD><DABB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD><CDB5>Ӳ<EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԣ<EFBFBD><D4A3>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD>֤ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵġ<CFB5><C4A1><EFBFBD><DEB2><EFBFBD><EFBFBD>ġ<EFBFBD><C4A1>κδ<CEBA><CEB4><EFBFBD><F3B6BCBD>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ļ<EFBFBD>û<EFBFBD><C3BB><EFBFBD>κ<EFBFBD><CEBA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>к<EFBFBD><D0BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ġ<EFBFBD></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(4<><34><EFBFBD><EFBFBD><EFBFBD>ڻ<EFBFBD><DABB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͵<EFBFBD><CDB5>Ӳ<EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԣ<EFBFBD><D4A3>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC>ķ<EFBFBD><C4B7><EFBFBD><EFBFBD>Ͳ<EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD><CEBA><EFBFBD>ʽ<EFBFBD>ij<EFBFBD>ŵ<EFBFBD><C5B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڷ<EFBFBD><DAB7><EFBFBD>Ʒ<EFBFBD><C6B7>ȷ<D7BC>ԡ<EFBFBD><D4A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԡ<EFBFBD>ʵ<EFBFBD><CAB5><EFBFBD>ԡ<EFBFBD><D4A1>ɿ<EFBFBD><C9BF>Ի<EFBFBD><D4BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ij<EFBFBD>ŵ<EFBFBD><C5B5></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(5<><35><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>÷<EFBFBD><C3B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><DEB6>ڣ<EFBFBD><DAA3>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>漰<EFBFBD><E6BCB0><EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD>Լ<EFBFBD><D4BC><EFBFBD>ͨ<EFBFBD><CDA8>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD>ȡ<EFBFBD>û<EFBFBD><C3BB>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD><CEBA><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>֤<EFBFBD><D6A4><EFBFBD>𣬰<EFBFBD><F0A3ACB0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȩ<EFBFBD><C8A8>ʵ<EFBFBD><CAB5><EFBFBD>ԡ<EFBFBD><D4A1><EFBFBD><EFBFBD>ض<EFBFBD><D8B6><EFBFBD>;<EFBFBD><CDBE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD>Ȩ<EFBFBD>Եı<D4B5>֤<EFBFBD><D6A4></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(6<><36><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>÷<EFBFBD><C3B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><DEB6>ڣ<EFBFBD><DAA3>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>÷<EFBFBD><C3B7><EFBFBD><EFBFBD>Ͳ<EFBFBD>Ʒ<EFBFBD>Ĺ<EFBFBD><C4B9>ܿ<EFBFBD><DCBF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܵ<EFBFBD><DCB5>κ<EFBFBD><CEBA><EFBFBD>ʧ<EFBFBD><CAA7><EFBFBD>˺<EFBFBD><CBBA><EFBFBD><EFBFBD>е<EFBFBD><D0B5>κ<EFBFBD><CEBA><EFBFBD><EFBFBD>Ρ<EFBFBD></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(7<><37><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>÷<EFBFBD><C3B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><DEB6>ڣ<EFBFBD><DAA3>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB>Ļ<EFBFBD><C4BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD><CEBA><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><E0BBA5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܵ<EFBFBD><DCB5>κ<EFBFBD><CEBA><EFBFBD>ʧ<EFBFBD><CAA7><EFBFBD>˺<EFBFBD><CBBA><EFBFBD><EFBFBD>е<EFBFBD><D0B5>κ<EFBFBD><CEBA><EFBFBD><EFBFBD>Ρ<EFBFBD></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(8<><38><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>÷<EFBFBD><C3B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><DEB6>ڣ<EFBFBD><DAA3>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽ̨<C6BD>ϵ<EFBFBD><CFB5>κ<EFBFBD><CEBA><EFBFBD><EFBFBD>ݾ<EFBFBD><DDBE><EFBFBD><EFBFBD>е<EFBFBD><D0B5>κ<EFBFBD><CEBA><EFBFBD></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" ><font face="<22><><EFBFBD><EFBFBD>" ><EFBFBD>Ρ<EFBFBD></font></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(9<><39><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD><CEBA>û<EFBFBD>֮<EFBFBD><D6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>飬<EFBFBD><E9A3AC><EFBFBD><EFBFBD>Ȩ<EFBFBD><C8A8><EFBFBD>о<EFBFBD><D0BE><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>롣</span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(10<31><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>÷<EFBFBD><C3B7><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>涨<EFBFBD>ķ<EFBFBD>Χ<EFBFBD>ڣ<EFBFBD><DAA3><EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC>ķ<EFBFBD><C4B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD><CEBA><EFBFBD>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>и<EFBFBD><D0B8><EFBFBD><EFBFBD><EFBFBD></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(11<31><31><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD>ϣ<EFBFBD><CFA3><EFBFBD><EFBFBD><EFBFBD>ܳ<EFBFBD><DCB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǵķ<C7B5><C4B7><EFBFBD><EFBFBD>Ͳ<EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD>ǣ<EFBFBD><C7A3><EFBFBD><EFBFBD>Dz<EFBFBD><C7B2><EFBFBD><EFBFBD>κν<CEBA><CEBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֤<EFBFBD><D6A4></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" ><font face="<22><><EFBFBD><EFBFBD>" ><EFBFBD>ߡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֹ</font></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(1<><31><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD>ʱ<EFBFBD>䲻<EFBFBD><E4B2BB>֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><DEB8>κ<EFBFBD><CEBA>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD>Ӧ<EFBFBD>ó<EFBFBD><C3B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ۼƻ<DBBC><C6BB><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(2<><32><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>÷<EFBFBD><C3B7>ɣ<EFBFBD><C9A3>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD>Բ<EFBFBD><D4B2>е<EFBFBD><D0B5>κ<EFBFBD><CEBA><EFBFBD><EFBFBD>ε<EFBFBD><CEB5><EFBFBD><EFBFBD>κ<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD>ԭ<EFBFBD>ᡢ<F2B6B3BD><E1A1A2>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD>˻<EFBFBD><CBBB><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD><EFBFBD>ĵ<EFBFBD><C4B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κη<CEBA><CEB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>ȫ<EFBFBD><C8AB><EFBFBD>ַ<F2B2BFB7><D6B7><EFBFBD><EFBFBD><EFBFBD><CDB9>ܡ<EFBFBD></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(3<><33><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ⲣͬ<E2B2A2>⣬<EFBFBD><E2A3AC><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD>ƽ̨<C6BD>Ϸ<EFBFBD><CFB7><EFBFBD><EFBFBD><EFBFBD>ijЩ<C4B3><D0A9><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڻ<DABB><EEB6AF>Ҫ<EFBFBD>л<EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD>ݣ<EFBFBD><DDA3><EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʻ<EFBFBD><CABB><EFBFBD><EFBFBD><EFBFBD>ֹ<EFBFBD><D6B9><EFBFBD>Խ<EFBFBD><D4BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>÷<EFBFBD><C3B7>ɣ<EFBFBD><C9A3><EFBFBD><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD><D8B5><EFBFBD><EFBFBD>ݡ<EFBFBD></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(4<><34><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˻<EFBFBD><CBBB><EFBFBD>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD>ֹͣʹ<D6B9><CAB9><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC>ķ<EFBFBD><C4B7><EFBFBD><EFBFBD>Ͳ<EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>Ȼ<EFBFBD><C8BB>Ч<EFBFBD><D0A7></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" ><font face="<22><><EFBFBD><EFBFBD>" ><EFBFBD>ˡ<EFBFBD><EFBFBD>⳥<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></font></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(1<><31><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD>ϣ<EFBFBD><CFA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǵķ<C7B5><C4B7><EFBFBD><EFBFBD>Ͳ<EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD>Ҳ<EFBFBD><D2B2><EFBFBD>뱣<EFBFBD><EBB1A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɵ<EFBFBD><C9B5>κ<EFBFBD><CEBA><EFBFBD></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(2<><32><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD>⳥<EFBFBD><E2B3A5>Ϊ֮<CEAA>ṩ<EFBFBD>绤<EFBFBD><E7BBA4>ʹ<EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><DFBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD><D4B1><EFBFBD><EFBFBD><EFBFBD>¡<EFBFBD><C2A1><EFBFBD>Ա<EFBFBD><D4B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȩ<EFBFBD>̼<EFBFBD><CCBC><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>õ<EFBFBD><C3B5><EFBFBD><EFBFBD>ݻ<EFBFBD><DDBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽ̨<C6BD>Ͳ<EFBFBD>Ʒ<EFBFBD><C6B7>ʹ<EFBFBD>á<EFBFBD><C3A1><EFBFBD><EFBFBD><EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD>ػ<EFBFBD><D8BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽ̨<C6BD>û<EFBFBD><C3BB><EFBFBD><EFBFBD>ص<EFBFBD><D8B5><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD>κ<EFBFBD>Υ<EFBFBD><CEA5><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κη<CEBA><CEB7>ɻ<EFBFBD><C9BB>κε<CEBA><CEB5><EFBFBD><EFBFBD><EFBFBD>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD><EFBFBD>κη<CEBA>ʽ<EFBFBD><CABD>֮<EFBFBD><D6AE><EFBFBD>ص<EFBFBD><D8B5><EFBFBD><EFBFBD>Ρ<EFBFBD><CEA1><EFBFBD><EFBFBD>⡢<EFBFBD><E2A1A2>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD><EFBFBD>ü<EFBFBD>֧<EFBFBD><D6A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʦ<EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ̳<C4BC><CCB3>ˡ<EFBFBD><CBA1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߡ<EFBFBD><DFA1>а<EFBFBD><D0B0>ˡ<EFBFBD><CBA1>Ʋ<EFBFBD><C6B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˺<EFBFBD><CBBA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>壬<EFBFBD>ش<EFBFBD><D8B4><EFBFBD>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD><EFBFBD>÷<EFBFBD><C3B7><EFBFBD><EFBFBD><D7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD><CEBA><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>ƽ̨<C6BD>йص<D0B9><D8B5><EFBFBD>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD><CEBA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȩ<EFBFBD><C8A8></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(3<><33><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD><CEBA><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>û<EFBFBD><C3BB><EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD>ƽ̨<C6BD><CCA8>ͨ<EFBFBD><CDA8>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵĻ<CFB5><C4BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>µģ<C2B5><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>μ<EFBFBD><CEBC>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EEB6AF><EFBFBD><EFBFBD><EFBFBD>μ<EFBFBD><CEBC>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EEB6AF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽ̨ʹ<CCA8><CAB9><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD><D8B5>κ<EFBFBD><CEBA><EFBFBD><EFBFBD>ݡ<EFBFBD><DDA1><EFBFBD><EFBFBD>μ<EFBFBD><CEBC>κ<EFBFBD><CEBA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EEB6AF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD>ӵġ<D3B5><C4A1><EFBFBD><EFBFBD>ӵġ<D3B5>żȻ<C5BC>ġ<EFBFBD><C4A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ľ<EFBFBD><C4BD><EFBFBD><EFBFBD>е<F0BAA6B3><D0B5><EFBFBD><EFBFBD>Σ<EFBFBD><CEA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD><CEBA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7><EFBFBD><EFBFBD>ʹ<EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD><EFBFBD>֪<EFBFBD><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɴ<EFBFBD><C9B4><EFBFBD><EFBFBD><EFBFBD></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(4<><34><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD>Ʒ<EFBFBD><C6B7>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD><EFBFBD>Ρ<EFBFBD><CEA1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݶ<EFBFBD><DDB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ψһ<CEA8><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʩ<EFBFBD><CAA9>ֹͣʹ<D6B9>ñ<EFBFBD><C3B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͳ<EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>ø<EFBFBD>ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɵ<EFBFBD><C9B5>κ<EFBFBD><CEBA><EFBFBD><F0BAA6BB><EFBFBD>ʧ<EFBFBD><CAA7><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD>⳥<EFBFBD><E2B3A5><EFBFBD>β<EFBFBD><CEB2><EFBFBD><EFBFBD><EFBFBD>1Ԫ<31><D4AA><EFBFBD><EFBFBD><EFBFBD>ҡ<EFBFBD></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" ><font face="<22><><EFBFBD><EFBFBD>" ><EFBFBD>š<EFBFBD>˾<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϽȨ</font></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" ><font face="<22><><EFBFBD><EFBFBD>" ><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>й<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۰<EFBFBD>̨<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ס<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κι<EFBFBD><EFBFBD>ң<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ò<EFBFBD>ͬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD></font></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" ><font face="<22><><EFBFBD><EFBFBD>" ><EFBFBD></font></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(1<><31><EFBFBD><EFBFBD>ͬ<EFBFBD>⣬<EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD>λ<EFBFBD><CEBB><EFBFBD>й<EFBFBD><D0B9><EFBFBD>½<EFBFBD><C2BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>й<EFBFBD><D0B9><EFBFBD>½<EFBFBD><C2BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˾<EFBFBD><CBBE>Ͻ<EFBFBD><CFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD>й<EFBFBD>ϽȨ<CFBD><C8A8></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(2<><32><EFBFBD><EFBFBD>ͬ<EFBFBD>⣬ƽ̨<C6BD><CCA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EEA1A2>˽<EFBFBD><CBBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD>֮<EFBFBD><D6AE><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD><CEBA><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>ܵ<EFBFBD><DCB5>й<EFBFBD><D0B9><EFBFBD>½<EFBFBD><C2BD><EFBFBD><EFBFBD><EFBFBD>ķ<EFBFBD><C4B7>ɹ<EFBFBD>Ͻ<EFBFBD><CFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ķ<EFBFBD><C4B6><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD>кͽ<D0BA><CDBD>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ľ<EFBFBD><C4BD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD><EFBFBD>й<EFBFBD><D0B9><EFBFBD>½<EFBFBD><C2BD><EFBFBD><EFBFBD><EFBFBD>ķ<EFBFBD><C4B7>ɡ<EFBFBD></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(3<><33><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC>ͱ<EFBFBD><CDB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݻ<EFBFBD><DDBB><EFBFBD>ִ<EFBFBD>з<EFBFBD><D0B7><EFBFBD><EFBFBD>κ<EFBFBD><CEBA><EFBFBD><EFBFBD>飬˫<E9A3AC><CBAB>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD><EFBFBD>Ѻ<EFBFBD>Э<EFBFBD>̽<EFBFBD><CCBD><EFBFBD><EFBFBD><EFBFBD>Э<EFBFBD>̲<EFBFBD><CCB2><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>κ<EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD>ס<EFBFBD><D7A1><EFBFBD>صķ<D8B5>Ժ<EFBFBD><D4BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϡ<EFBFBD></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" ><font face="<22><><EFBFBD><EFBFBD>" >ʮ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>涨</font></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(1<><31><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC>ڷ<EFBFBD><DAB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ķ<EFBFBD>Χ<EFBFBD><CEA7>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD>ӷ<EFBFBD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD><CDB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD>֪ͨ<CDA8><D6AA>Э<EFBFBD>顢<EFBFBD><E9A1A2>¶<EFBFBD><C2B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD>ž<EFBFBD><C5BE><EFBFBD><EFBFBD>з<EFBFBD><D0B7><EFBFBD>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(2<><32><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD>ܶ<EFBFBD><DCB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><C6BC><EFBFBD><EFBFBD>Բ<EFBFBD><D4B2><EFBFBD>֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD><CEBA><EFBFBD>ת<EFBFBD><D7AA><EFBFBD><EFBFBD><EFBFBD>ڱ<EFBFBD><DAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>µ<EFBFBD>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><F1A3ACB3>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>й涨<D0B9><E6B6A8><EFBFBD><EFBFBD><EFBFBD>⽫<EFBFBD><E2BDAB><EFBFBD><EFBFBD>Ӱ<EFBFBD><D3B0><EFBFBD><EFBFBD><EFBFBD>ڱ<EFBFBD><DAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>µ<EFBFBD>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" >(3<><33><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><D0B5>κβ<CEBA><CEB2>ֱ<EFBFBD><D6B1>϶<EFBFBD>Ϊ<EFBFBD><CEAA>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ಿ<EFBFBD><E0B2BF>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal style="mso-pagination:widow-orphan;text-align:left;mso-line-height-alt:12pt;" ><span style="mso-spacerun:'yes';font-family:<3A><><EFBFBD><EFBFBD>;font-size:10.5000pt;
|
|
||||||
mso-font-kerning:0.0000pt;" ><font face="<22><><EFBFBD><EFBFBD>" ><EFBFBD><EFBFBD>л<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ķ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>µ<EFBFBD><EFBFBD>ܶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯ<EFBFBD><EFBFBD><EFBFBD>绰<EFBFBD><EFBFBD></font>0755-86352225<32><35></span><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p></o:p></span></p><p class=MsoNormal ><span style="mso-spacerun:'yes';font-family:Calibri;mso-fareast-font-family:<3A><><EFBFBD><EFBFBD>;
|
|
||||||
mso-bidi-font-family:'Times New Roman';font-size:10.5000pt;mso-font-kerning:1.0000pt;" ><o:p> </o:p></span></p></div><!--EndFragment--></body></html>
|
|
||||||
77
app/src/main/assets/terms_de.html
Normal file
77
app/src/main/assets/terms_de.html
Normal file
@@ -0,0 +1,77 @@
|
|||||||
|
<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8" ><meta name=ProgId content=Word.Document ><meta name=Generator content="Microsoft Word 14" ><meta name=Originator content="Microsoft Word 14" ><title></title></head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div>
|
||||||
|
<h3>1. Annahme der Bedingungen</h3>
|
||||||
|
|
||||||
|
<p>Durch das Herunterladen, Installieren und Verwenden der mobilen ABBIDOT-App („App“) erklären Sie sich mit diesen Allgemeinen Geschäftsbedingungen („Bedingungen“) einverstanden. Wenn Sie diesen Bedingungen nicht zustimmen, verwenden Sie die App nicht.</p>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<h3>2. Nutzung der App</h3>
|
||||||
|
<ul>
|
||||||
|
<li>Berechtigung: Sie müssen mindestens 13 Jahre alt sein, um die App zu nutzen. Durch die Nutzung der App erklären und garantieren Sie, dass Sie diese Berechtigungsvoraussetzung erfüllen.</li>
|
||||||
|
<li>Lizenz: ABBI PET INC gewährt Ihnen eine eingeschränkte, nicht-exklusive, nicht-übertragbare und widerrufbare Lizenz zur Nutzung der App ausschließlich für den persönlichen, nicht-kommerziellen Gebrauch.</li>
|
||||||
|
<li>Einschränkungen: Sie stimmen zu, Folgendes nicht zu tun:</li>
|
||||||
|
</ul>
|
||||||
|
<ul>
|
||||||
|
<li>Die App zu modifizieren, per Reverse Engineering zu analysieren, zu dekompilieren oder zu zerlegen.</li>
|
||||||
|
<li>Die App für rechtswidrige Zwecke oder in einer Weise zu verwenden, die ABBI PET INC oder seinen Nutzern schaden könnte.</li>
|
||||||
|
<li>Auf die App zuzugreifen oder sie zu verwenden, um einen konkurrierenden Dienst oder ein konkurrierendes Produkt zu entwickeln.</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<h3>3. Konten und Sicherheit</h3>
|
||||||
|
<ul>
|
||||||
|
<li>Kontoerstellung: Um bestimmte Funktionen der App zu nutzen, müssen Sie möglicherweise ein Konto erstellen. Sie stimmen zu, während des Registrierungsvorgangs genaue und vollständige Informationen anzugeben.</li>
|
||||||
|
<li>Kontosicherheit: Sie sind für die Vertraulichkeit Ihrer Kontoanmeldedaten und für alle Aktivitäten verantwortlich, die unter Ihrem Konto erfolgen. Sie verpflichten sich, ABBI PET INC unverzüglich über jede unbefugte Nutzung Ihres Kontos zu informieren.</li>
|
||||||
|
</ul>
|
||||||
|
<h3>4. Datenschutz</h3>
|
||||||
|
|
||||||
|
<p>Ihre Nutzung der App unterliegt auch unserer Datenschutzerklärung, die durch Verweis in diese Bedingungen aufgenommen wird. Bitte lesen Sie unsere Datenschutzerklärung, um unsere Praktiken in Bezug auf Ihre Informationen zu verstehen.</p>
|
||||||
|
|
||||||
|
<h3>5. Nutzergenerierte Inhalte</h3>
|
||||||
|
<ul>
|
||||||
|
<li>Eigentum: Sie behalten das Eigentum an allen Inhalten, die Sie über die App einreichen oder veröffentlichen („Nutzerinhalte“). Durch das Einreichen von Nutzerinhalten gewähren Sie ABBI PET INC eine weltweite, nicht-exklusive, lizenzgebührenfreie Lizenz zur Verwendung, Vervielfältigung, Verbreitung und Anzeige Ihrer Nutzerinhalte im Zusammenhang mit der App.</li>
|
||||||
|
<li>Verantwortung: Sie sind allein für Ihre Nutzerinhalte verantwortlich. Sie stimmen zu, keine Inhalte zu veröffentlichen, die illegal, schädlich sind oder die Rechte anderer verletzen.</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
<h3>6. Geistiges Eigentum</h3>
|
||||||
|
|
||||||
|
<p>Alle Inhalte, Funktionen und Funktionalitäten der App, einschließlich, aber nicht beschränkt auf Texte, Grafiken, Logos und Software, sind das ausschließliche Eigentum von ABBI PET INC oder seinen Lizenzgebern und durch Urheberrecht, Markenrecht und andere Gesetze zum geistigen Eigentum geschützt.</p>
|
||||||
|
|
||||||
|
<h3>7. Kündigung</h3>
|
||||||
|
|
||||||
|
<p>ABBI PET INC kann Ihren Zugriff auf die App jederzeit ohne Vorankündigung oder Haftung aus beliebigen Gründen kündigen oder aussetzen, auch wenn Sie diese Bedingungen verletzen. Bei Kündigung erlischt Ihr Recht zur Nutzung der App sofort.</p>
|
||||||
|
|
||||||
|
<h3>8. Haftungsausschluss und Haftungsbeschränkung</h3>
|
||||||
|
<ul>
|
||||||
|
<li>Haftungsausschlüsse: Die App wird „wie besehen“ und „wie verfügbar“ ohne jegliche Gewährleistung, weder ausdrücklich noch stillschweigend, bereitgestellt. ABBI PET INC garantiert nicht, dass die App unterbrechungsfrei oder fehlerfrei sein wird.</li>
|
||||||
|
<li>Haftungsbeschränkung: Im maximal gesetzlich zulässigen Umfang haftet ABBI PET INC nicht für indirekte, beiläufige, besondere oder Folgeschäden, die aus oder im Zusammenhang mit Ihrer Nutzung der App entstehen.</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h3>9. Anwendbares Recht</h3>
|
||||||
|
<p>Diese Bedingungen unterliegen den Gesetzen des Bundesstaates Texas und sind in Übereinstimmung mit diesen auszulegen, ohne Berücksichtigung seiner Grundsätze des Kollisionsrechts.</p>
|
||||||
|
|
||||||
|
<h3>10. Änderungen der Bedingungen</h3>
|
||||||
|
<p>ABBI PET INC behält sich das Recht vor, diese Bedingungen jederzeit zu ändern. Wir werden Sie über Änderungen informieren, indem wir die neuen Bedingungen in der App veröffentlichen. Ihre fortgesetzte Nutzung der App nach Inkrafttreten der Änderungen stellt Ihre Zustimmung zu den neuen Bedingungen dar.</p>
|
||||||
|
|
||||||
|
<h3>11. Datengeheimhaltung</h3>
|
||||||
|
<p>Wir verpflichten uns, die Vertraulichkeit Ihrer Daten zu wahren. Wir setzen die folgenden Maßnahmen zum Datenschutz ein:</p>
|
||||||
|
<ul>
|
||||||
|
<li>Vertraulichkeitsvereinbarungen: Alle Mitarbeiter und Drittdienstleister, die Zugriff auf Ihre Daten haben, sind verpflichtet, Vertraulichkeitsvereinbarungen zu unterzeichnen.</li>
|
||||||
|
<li>Datenanonymisierung: Wo möglich, anonymisieren wir Ihre Daten, um Ihre Privatsphäre zu schützen.</li>
|
||||||
|
<li>Datenaufbewahrungsrichtlinie: Wir bewahren Ihre Daten nur so lange auf, wie für die in unserer Datenschutzerklärung beschriebenen Zwecke erforderlich, danach werden sie sicher gelöscht oder anonymisiert.</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h3>12. Kontaktieren Sie uns</h3>
|
||||||
|
<p>Wenn Sie Fragen zu diesen Bedingungen haben, kontaktieren Sie uns bitte unter:</p>
|
||||||
|
<p>ABBI PET INC</p>
|
||||||
|
<p>10700 Richmond Ave Suite 143</p>
|
||||||
|
<p>Houston, TX 77042</p>
|
||||||
|
<p>E-Mail: support@abbidot.com</p>
|
||||||
|
|
||||||
|
|
||||||
|
</div></body></html>
|
||||||
77
app/src/main/assets/terms_fr.html
Normal file
77
app/src/main/assets/terms_fr.html
Normal file
@@ -0,0 +1,77 @@
|
|||||||
|
<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8" ><meta name=ProgId content=Word.Document ><meta name=Generator content="Microsoft Word 14" ><meta name=Originator content="Microsoft Word 14" ><title></title></head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div>
|
||||||
|
<h3>1. Acceptation des conditions</h3>
|
||||||
|
|
||||||
|
<p>En téléchargeant, installant et utilisant l'application mobile ABBIDOT (« App »), vous acceptez d'être lié par ces Conditions générales (« Conditions »). Si vous n'acceptez pas ces Conditions, n'utilisez pas l'App.</p>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<h3>2. Utilisation de l'App</h3>
|
||||||
|
<ul>
|
||||||
|
<li>Éligibilité : Vous devez avoir au moins 13 ans pour utiliser l'App. En utilisant l'App, vous déclarez et garantissez que vous remplissez cette condition d'éligibilité.</li>
|
||||||
|
<li>Licence : ABBI PET INC vous accorde une licence limitée, non exclusive, non transférable et révocable pour utiliser l'App à des fins personnelles et non commerciales uniquement.</li>
|
||||||
|
<li>Restrictions : Vous acceptez de ne pas :</li>
|
||||||
|
</ul>
|
||||||
|
<ul>
|
||||||
|
<li>Modifier, faire de l'ingénierie inverse, décompiler ou démonter l'App.</li>
|
||||||
|
<li>Utiliser l'App à toute fin illégale ou de quelque manière qui pourrait nuire à ABBI PET INC ou à ses utilisateurs.</li>
|
||||||
|
<li>Accéder à l'App ou l'utiliser pour créer un service ou un produit concurrent.</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<h3>3. Comptes et sécurité</h3>
|
||||||
|
<ul>
|
||||||
|
<li>Création de compte : Pour utiliser certaines fonctionnalités de l'App, vous devrez peut-être créer un compte. Vous acceptez de fournir des informations exactes et complètes lors du processus d'inscription.</li>
|
||||||
|
<li>Sécurité du compte : Vous êtes responsable de la confidentialité de vos identifiants de compte et de toutes les activités qui se produisent sous votre compte. Vous acceptez d'avertir immédiatement ABBI PET INC de toute utilisation non autorisée de votre compte.</li>
|
||||||
|
</ul>
|
||||||
|
<h3>4. Confidentialité</h3>
|
||||||
|
|
||||||
|
<p>Votre utilisation de l'App est également régie par notre politique de confidentialité, qui est incorporée par référence dans ces Conditions. Veuillez consulter notre politique de confidentialité pour comprendre nos pratiques concernant vos informations.</p>
|
||||||
|
|
||||||
|
<h3>5. Contenu de l'utilisateur</h3>
|
||||||
|
<ul>
|
||||||
|
<li>Propriété : Vous conservez la propriété de tout contenu que vous soumettez ou publiez via l'App (« Contenu de l'utilisateur »). En soumettant du Contenu de l'utilisateur, vous accordez à ABBI PET INC une licence mondiale, non exclusive, libre de redevances pour utiliser, reproduire, distribuer et afficher votre Contenu de l'utilisateur en relation avec l'App.</li>
|
||||||
|
<li>Responsabilité : Vous êtes seul responsable de votre Contenu de l'utilisateur. Vous acceptez de ne pas publier de contenu illégal, nuisible ou qui viole les droits d'autrui.</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
<h3>6. Propriété intellectuelle</h3>
|
||||||
|
|
||||||
|
<p>Tout le contenu, toutes les fonctionnalités et caractéristiques de l'App, y compris mais sans s'y limiter les textes, graphiques, logos et logiciels, sont la propriété exclusive de ABBI PET INC ou de ses concédants et sont protégés par les lois sur le droit d'auteur, les marques et autres lois sur la propriété intellectuelle.</p>
|
||||||
|
|
||||||
|
<h3>7. Résiliation</h3>
|
||||||
|
|
||||||
|
<p>ABBI PET INC peut résilier ou suspendre votre accès à l'App à tout moment, sans préavis ni responsabilité, pour quelque raison que ce soit, y compris si vous enfreignez ces Conditions. En cas de résiliation, votre droit d'utiliser l'App cessera immédiatement.</p>
|
||||||
|
|
||||||
|
<h3>8. Avertissements et limitation de responsabilité</h3>
|
||||||
|
<ul>
|
||||||
|
<li>Avertissements : L'App est fournie « telle quelle » et « telle que disponible » sans aucune garantie d'aucune sorte, expresse ou implicite. ABBI PET INC ne garantit pas que l'App sera ininterrompue ou exempte d'erreurs.</li>
|
||||||
|
<li>Limitation de responsabilité : Dans la mesure maximale permise par la loi, ABBI PET INC ne sera pas responsable de tout dommage indirect, accessoire, spécial ou consécutif découlant de ou en relation avec votre utilisation de l'App.</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h3>9. Droit applicable</h3>
|
||||||
|
<p>Ces Conditions seront régies et interprétées conformément aux lois de l'État du Texas, sans égard à ses principes de conflit de lois.</p>
|
||||||
|
|
||||||
|
<h3>10. Modifications des Conditions</h3>
|
||||||
|
<p>ABBI PET INC se réserve le droit de modifier ces Conditions à tout moment. Nous vous informerons de toute modification en publiant les nouvelles Conditions dans l'App. Votre utilisation continue de l'App après l'entrée en vigueur des modifications constitue votre acceptation des nouvelles Conditions.</p>
|
||||||
|
|
||||||
|
<h3>11. Confidentialité des données</h3>
|
||||||
|
<p>Nous nous engageons à maintenir la confidentialité de vos données. Nous mettons en œuvre les mesures suivantes pour assurer la protection des données :</p>
|
||||||
|
<ul>
|
||||||
|
<li>Accords de confidentialité : Tous les employés et prestataires de services tiers qui ont accès à vos données sont tenus de signer des accords de confidentialité.</li>
|
||||||
|
<li>Anonymisation des données : Dans la mesure du possible, nous anonymisons vos données pour protéger votre vie privée.</li>
|
||||||
|
<li>Politique de conservation des données : Nous ne conservons vos données que le temps nécessaire aux fins décrites dans notre politique de confidentialité, après quoi elles sont supprimées ou anonymisées de manière sécurisée.</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h3>12. Contactez-nous</h3>
|
||||||
|
<p>Si vous avez des questions concernant ces Conditions, veuillez nous contacter à :</p>
|
||||||
|
<p>ABBI PET INC</p>
|
||||||
|
<p>10700 Richmond Ave Suite 143</p>
|
||||||
|
<p>Houston, TX 77042</p>
|
||||||
|
<p>E-mail : support@abbidot.com</p>
|
||||||
|
|
||||||
|
|
||||||
|
</div></body></html>
|
||||||
77
app/src/main/assets/terms_zh.html
Normal file
77
app/src/main/assets/terms_zh.html
Normal file
@@ -0,0 +1,77 @@
|
|||||||
|
<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8" ><meta name=ProgId content=Word.Document ><meta name=Generator content="Microsoft Word 14" ><meta name=Originator content="Microsoft Word 14" ><title></title></head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div>
|
||||||
|
<h3>1. 条款的接受</h3>
|
||||||
|
|
||||||
|
<p>下载、安装和使用 ABBIDOT 移动应用程序("App")即表示您同意受这些条款与条件("条款")的约束。如果您不同意这些条款,请勿使用本 App。</p>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<h3>2. App 的使用</h3>
|
||||||
|
<ul>
|
||||||
|
<li>资格要求:您必须年满 13 周岁才能使用本 App。使用本 App即表示您声明并保证您符合此资格要求。</li>
|
||||||
|
<li>许可:ABBI PET INC 授予您一项有限的、非独占的、不可转让的、可撤销的许可,仅供您出于个人非商业目的使用本 App。</li>
|
||||||
|
<li>限制:您同意不会:</li>
|
||||||
|
</ul>
|
||||||
|
<ul>
|
||||||
|
<li>修改、逆向工程、反编译或拆解本 App。</li>
|
||||||
|
<li>将本 App 用于任何非法目的,或以任何可能损害 ABBI PET INC 或其用户的方式使用。</li>
|
||||||
|
<li>访问或使用本 App 来开发竞争性服务或产品。</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<h3>3. 账户与安全</h3>
|
||||||
|
<ul>
|
||||||
|
<li>账户创建:要使用 App 的某些功能,您可能需要创建账户。您同意在注册过程中提供准确且完整的信息。</li>
|
||||||
|
<li>账户安全:您有责任保管好您的账户凭证的机密性,并对您账户下发生的所有活动负责。您同意在发现任何未经授权使用您账户的情况时立即通知 ABBI PET INC。</li>
|
||||||
|
</ul>
|
||||||
|
<h3>4. 隐私</h3>
|
||||||
|
|
||||||
|
<p>您对 App 的使用同时受我们的隐私政策约束,该政策通过引用并入本条款。请查阅我们的隐私政策,以了解我们关于您信息的处理方式。</p>
|
||||||
|
|
||||||
|
<h3>5. 用户内容</h3>
|
||||||
|
<ul>
|
||||||
|
<li>所有权:您保留您通过 App 提交或发布的任何内容("用户内容")的所有权。提交用户内容即表示您授予 ABBI PET INC 一项全球性的、非独占的、免版税的许可,允许其使用、复制、分发和展示您的用户内容,且仅限于与 App 相关的用途。</li>
|
||||||
|
<li>责任:您对您的用户内容负全部责任。您同意不发布非法、有害或侵犯他人权利的内容。</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
<h3>6. 知识产权</h3>
|
||||||
|
|
||||||
|
<p>App 的所有内容、功能和特性,包括但不限于文本、图形、标识和软件,均为 ABBI PET INC 或其许可方的独家财产,受版权、商标和其他知识产权法保护。</p>
|
||||||
|
|
||||||
|
<h3>7. 终止</h3>
|
||||||
|
|
||||||
|
<p>ABBI PET INC 可随时终止或暂停您对 App 的访问,无需事先通知或承担责任,原因包括您违反本条款。终止后,您使用 App 的权利将立即停止。</p>
|
||||||
|
|
||||||
|
<h3>8. 免责声明与责任限制</h3>
|
||||||
|
<ul>
|
||||||
|
<li>免责声明:本 App 按"现状"和"按可用" basis 提供,不附带任何明示或暗示的保证。ABBI PET INC 不保证 App 不会中断或无错误。</li>
|
||||||
|
<li>责任限制:在法律允许的最大范围内,ABBI PET INC 对因您使用 App 而产生或与之相关的任何间接、附带、特殊或后果性损害概不负责。</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h3>9. 适用法律</h3>
|
||||||
|
<p>本条款受美国德克萨斯州法律管辖并据其解释,不适用其法律冲突原则。</p>
|
||||||
|
|
||||||
|
<h3>10. 条款的变更</h3>
|
||||||
|
<p>ABBI PET INC 保留随时修改本条款的权利。我们将通过在 App 内发布新条款的方式通知您任何变更。变更生效后,您继续使用 App 即表示您接受新条款。</p>
|
||||||
|
|
||||||
|
<h3>11. 数据保密</h3>
|
||||||
|
<p>我们致力于维护您数据的保密性。我们采取以下措施以确保数据安全:</p>
|
||||||
|
<ul>
|
||||||
|
<li>保密协议:所有有权访问您数据的员工和第三方服务提供商均须签署保密协议。</li>
|
||||||
|
<li>数据匿名化:在可能的情况下,我们会对您的数据进行匿名化处理以保护您的隐私。</li>
|
||||||
|
<li>数据保留政策:我们仅在隐私政策所述目的所需的时间内保留您的数据,之后将安全删除或匿名化处理。</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h3>12. 联系我们</h3>
|
||||||
|
<p>如果您对本条款有任何疑问,请通过以下方式联系我们:</p>
|
||||||
|
<p>ABBI PET INC</p>
|
||||||
|
<p>10700 Richmond Ave Suite 143</p>
|
||||||
|
<p>Houston, TX 77042</p>
|
||||||
|
<p>电子邮箱:support@abbidot.com</p>
|
||||||
|
|
||||||
|
|
||||||
|
</div></body></html>
|
||||||
@@ -27,6 +27,9 @@ class MyApplication : Application() {
|
|||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
lateinit var instance: Application
|
lateinit var instance: Application
|
||||||
|
|
||||||
|
//保存地图宠物头像对象在内存中,提高显示速度
|
||||||
|
val mapPetHeadHashMap = hashMapOf<String, Any>()
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onCreate() {
|
override fun onCreate() {
|
||||||
|
|||||||
@@ -40,7 +40,9 @@ class AssignOptionsAdapter(
|
|||||||
} else {
|
} else {
|
||||||
circleImageView.visibility = View.VISIBLE
|
circleImageView.visibility = View.VISIBLE
|
||||||
wrapImageView.visibility = View.GONE
|
wrapImageView.visibility = View.GONE
|
||||||
ViewUtil.instance.setPetTypeHead(circleImageView, item.value, item.menuType)
|
ViewUtil.instance.setPetTypeHead(
|
||||||
|
mContext, circleImageView, item.value, item.menuType
|
||||||
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -38,7 +38,7 @@ class ChangePetListDialogAdapter(ctx: Context, list: MutableList<PetBean>?) :
|
|||||||
holder.setText(R.id.dialog_my_pet_name, item.petName)
|
holder.setText(R.id.dialog_my_pet_name, item.petName)
|
||||||
|
|
||||||
holder.getImageView(R.id.dialog_my_pet_head).apply {
|
holder.getImageView(R.id.dialog_my_pet_head).apply {
|
||||||
ViewUtil.instance.setPetTypeHead(this, item.imgurl, item.petType)
|
ViewUtil.instance.setPetTypeHead(mContext,this, item.imgurl, item.petType)
|
||||||
setOnClickListener {
|
setOnClickListener {
|
||||||
if (null != mOnChangeClickListener) {
|
if (null != mOnChangeClickListener) {
|
||||||
mOnChangeClickListener!!.onCurrentClick()
|
mOnChangeClickListener!!.onCurrentClick()
|
||||||
|
|||||||
@@ -1,7 +1,11 @@
|
|||||||
package com.abbidot.tracker.adapter
|
package com.abbidot.tracker.adapter
|
||||||
|
|
||||||
import android.content.Context
|
import android.content.Context
|
||||||
|
import android.content.res.ColorStateList
|
||||||
|
import android.text.TextUtils
|
||||||
import android.view.View
|
import android.view.View
|
||||||
|
import androidx.core.content.ContextCompat
|
||||||
|
import androidx.core.graphics.toColorInt
|
||||||
import com.abbidot.baselibrary.list.BaseRecyclerAdapter
|
import com.abbidot.baselibrary.list.BaseRecyclerAdapter
|
||||||
import com.abbidot.baselibrary.list.RecyclerViewHolder
|
import com.abbidot.baselibrary.list.RecyclerViewHolder
|
||||||
import com.abbidot.baselibrary.util.Utils
|
import com.abbidot.baselibrary.util.Utils
|
||||||
@@ -9,6 +13,8 @@ import com.abbidot.tracker.R
|
|||||||
import com.abbidot.tracker.bean.PackageBean
|
import com.abbidot.tracker.bean.PackageBean
|
||||||
import com.abbidot.tracker.constant.ConstantInt
|
import com.abbidot.tracker.constant.ConstantInt
|
||||||
import com.abbidot.tracker.constant.ConstantString
|
import com.abbidot.tracker.constant.ConstantString
|
||||||
|
import com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButtonDrawable
|
||||||
|
import com.qmuiteam.qmui.widget.roundwidget.QMUIRoundRelativeLayout
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*Created by .yzq on 2024/8/6/006.
|
*Created by .yzq on 2024/8/6/006.
|
||||||
@@ -51,6 +57,10 @@ class ChoosePlanAdapter(
|
|||||||
|
|
||||||
|
|
||||||
getView(R.id.ll_choose_plan_item_discount_percent).let {
|
getView(R.id.ll_choose_plan_item_discount_percent).let {
|
||||||
|
it.visibility = if (item.popularType == ConstantInt.Type1) View.INVISIBLE
|
||||||
|
else View.INVISIBLE
|
||||||
|
}
|
||||||
|
getView(R.id.iv_choose_plan_item_popular_image).let {
|
||||||
it.visibility = if (item.popularType == ConstantInt.Type1) View.VISIBLE
|
it.visibility = if (item.popularType == ConstantInt.Type1) View.VISIBLE
|
||||||
else View.INVISIBLE
|
else View.INVISIBLE
|
||||||
}
|
}
|
||||||
@@ -62,6 +72,44 @@ class ChoosePlanAdapter(
|
|||||||
if (item.popularType == ConstantInt.Type1) it.visibility = View.GONE
|
if (item.popularType == ConstantInt.Type1) it.visibility = View.GONE
|
||||||
else it.visibility = View.GONE
|
else it.visibility = View.GONE
|
||||||
}
|
}
|
||||||
|
|
||||||
|
(getView(R.id.rl_choose_plan_item_price) as QMUIRoundRelativeLayout).let {
|
||||||
|
(it.background as QMUIRoundButtonDrawable).let { drawable ->
|
||||||
|
val bgColor = if (TextUtils.isEmpty(item.bottomBgColor)) {
|
||||||
|
ContextCompat.getColor(mContext, R.color.tracker_manage_bg_color)
|
||||||
|
} else {
|
||||||
|
item.bottomBgColor.toColorInt()
|
||||||
|
}
|
||||||
|
drawable.setBgData(ColorStateList.valueOf(bgColor))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
getTextView(R.id.tv_choose_plan_item_power).let {
|
||||||
|
it.visibility = if (TextUtils.isEmpty(item.description)) View.GONE
|
||||||
|
else {
|
||||||
|
// var str = getManyLanguageLimitDec(item.listTitleCode)
|
||||||
|
// if (TextUtils.isEmpty(str)) {
|
||||||
|
// for (i in 0 until item.list!!.size) {
|
||||||
|
// val packageDec = item.list!![i]
|
||||||
|
// str += "${i + 1}.${packageDec.title}"
|
||||||
|
// if (i != item.list!!.size - 1) {
|
||||||
|
// str += "\n"
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
it.text = item.description
|
||||||
|
View.VISIBLE
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private fun getManyLanguageLimitDec(nameCode: Int): String {
|
||||||
|
return when (nameCode) {
|
||||||
|
ConstantInt.Type1 -> mContext.getString(R.string.txt_package_permission1)
|
||||||
|
ConstantInt.Type2 -> mContext.getString(R.string.txt_package_permission2)
|
||||||
|
ConstantInt.Type3 -> mContext.getString(R.string.txt_package_permission3)
|
||||||
|
else -> ""
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -34,7 +34,7 @@ class CreditCardAdapter(
|
|||||||
}
|
}
|
||||||
primary.visibility = if (item.isPrimary) View.VISIBLE else View.GONE
|
primary.visibility = if (item.isPrimary) View.VISIBLE else View.GONE
|
||||||
holder.getTextView(R.id.tv_credit_card_number_item).apply {
|
holder.getTextView(R.id.tv_credit_card_number_item).apply {
|
||||||
val formatCardNumber = Util.formatCardNumber(item.cardNumber)
|
val formatCardNumber = maskString(Util.formatCardNumber(item.cardNumber))
|
||||||
val cardLogoImageId = Util.getCreditCardType(item.cardNumber)
|
val cardLogoImageId = Util.getCreditCardType(item.cardNumber)
|
||||||
text = formatCardNumber
|
text = formatCardNumber
|
||||||
if (cardLogoImageId == 0) setCompoundDrawablesWithIntrinsicBounds(
|
if (cardLogoImageId == 0) setCompoundDrawablesWithIntrinsicBounds(
|
||||||
@@ -50,4 +50,24 @@ class CreditCardAdapter(
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private fun maskString(input: String): String {
|
||||||
|
if (input.isBlank()) return input
|
||||||
|
// 先去除原有所有空格,统一重新4位分隔
|
||||||
|
val noSpace = input.replace(" ", "")
|
||||||
|
// 每4位分组加空格
|
||||||
|
val splitStr = buildString {
|
||||||
|
for (i in noSpace.indices step 4) {
|
||||||
|
val end = minOf(i + 4, noSpace.length)
|
||||||
|
append(noSpace.substring(i, end))
|
||||||
|
if (end != noSpace.length) append(" ")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 再对分隔后的字符串脱敏(仅最后4位明文,其余非空格变*)
|
||||||
|
if (splitStr.length <= 4) return splitStr
|
||||||
|
val hidePart = splitStr.dropLast(4)
|
||||||
|
val showPart = splitStr.takeLast(4)
|
||||||
|
val maskHide = hidePart.map { if (it == ' ') ' ' else '*' }.joinToString("")
|
||||||
|
return maskHide + showPart
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -1,12 +1,13 @@
|
|||||||
package com.abbidot.tracker.adapter
|
package com.abbidot.tracker.adapter
|
||||||
|
|
||||||
import android.graphics.Typeface
|
import android.graphics.Typeface
|
||||||
import android.widget.ImageView
|
import android.util.TypedValue
|
||||||
import androidx.appcompat.widget.AppCompatImageView
|
import androidx.appcompat.widget.AppCompatImageView
|
||||||
import androidx.core.content.ContextCompat
|
import androidx.core.content.ContextCompat
|
||||||
import com.abbidot.baselibrary.util.AppUtils
|
import com.abbidot.baselibrary.util.AppUtils
|
||||||
import com.abbidot.tracker.R
|
import com.abbidot.tracker.R
|
||||||
import com.abbidot.tracker.bean.MenuTxtBean
|
import com.abbidot.tracker.bean.MenuTxtBean
|
||||||
|
import com.abbidot.tracker.constant.ConstantInt
|
||||||
import com.abbidot.tracker.constant.MultipleEntity
|
import com.abbidot.tracker.constant.MultipleEntity
|
||||||
import com.abbidot.tracker.widget.TypefaceTextView
|
import com.abbidot.tracker.widget.TypefaceTextView
|
||||||
import com.chad.library.adapter.base.BaseMultiItemQuickAdapter
|
import com.chad.library.adapter.base.BaseMultiItemQuickAdapter
|
||||||
@@ -32,6 +33,8 @@ class HelpTextImageTypeAdapter(list: MutableList<MenuTxtBean>?) :
|
|||||||
addItemType(MultipleEntity.IMG_IMG, R.layout.layout_help_title1)
|
addItemType(MultipleEntity.IMG_IMG, R.layout.layout_help_title1)
|
||||||
//显示14sp大小的文字内容
|
//显示14sp大小的文字内容
|
||||||
addItemType(MultipleEntity.IMG_TEXT_IMG, R.layout.layout_help_title2)
|
addItemType(MultipleEntity.IMG_TEXT_IMG, R.layout.layout_help_title2)
|
||||||
|
//显示多大字体,是否粗体,字体颜色
|
||||||
|
addItemType(MultipleEntity.TEXT_TEXT_IMG, R.layout.layout_help_title2)
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun convert(holder: BaseViewHolder, item: MenuTxtBean) {
|
override fun convert(holder: BaseViewHolder, item: MenuTxtBean) {
|
||||||
@@ -67,6 +70,23 @@ class HelpTextImageTypeAdapter(list: MutableList<MenuTxtBean>?) :
|
|||||||
holder.getView<TypefaceTextView>(R.id.tv_help_title_two).text = item.menuName
|
holder.getView<TypefaceTextView>(R.id.tv_help_title_two).text = item.menuName
|
||||||
holder.itemView.setPadding(0, AppUtils.dpToPx(14), 0, 0)
|
holder.itemView.setPadding(0, AppUtils.dpToPx(14), 0, 0)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
MultipleEntity.TEXT_TEXT_IMG -> {
|
||||||
|
holder.getView<TypefaceTextView>(R.id.tv_help_title_two).apply {
|
||||||
|
//是否粗体
|
||||||
|
val typefaceBold =
|
||||||
|
if (item.isSwitch) Typeface.create(Typeface.DEFAULT, Typeface.BOLD)
|
||||||
|
else Typeface.create(Typeface.DEFAULT, Typeface.NORMAL)
|
||||||
|
typeface = typefaceBold
|
||||||
|
text = item.menuName
|
||||||
|
setTextSize(TypedValue.COMPLEX_UNIT_SP, item.state.toFloat())
|
||||||
|
|
||||||
|
val tColor = if (item.colorRedId == ConstantInt.Type0) R.color.data_black_color
|
||||||
|
else item.colorRedId
|
||||||
|
setTextColor(ContextCompat.getColor(context, tColor))
|
||||||
|
}
|
||||||
|
// holder.itemView.setPadding(0, AppUtils.dpToPx(14), 0, 0)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,66 @@
|
|||||||
|
package com.abbidot.tracker.adapter
|
||||||
|
|
||||||
|
import android.content.Context
|
||||||
|
import android.text.format.DateUtils
|
||||||
|
import android.view.View
|
||||||
|
import com.abbidot.baselibrary.list.BaseRecyclerAdapter
|
||||||
|
import com.abbidot.baselibrary.list.RecyclerViewHolder
|
||||||
|
import com.abbidot.baselibrary.util.Utils
|
||||||
|
import com.abbidot.tracker.R
|
||||||
|
import com.abbidot.tracker.bean.MessageBean
|
||||||
|
import com.abbidot.tracker.constant.ConstantInt
|
||||||
|
|
||||||
|
/**
|
||||||
|
*Created by .yzq on 2026/4/10/周五.
|
||||||
|
* @link
|
||||||
|
* @description:
|
||||||
|
*/
|
||||||
|
class HistoryFenceAdapter(
|
||||||
|
ctx: Context, list: MutableList<MessageBean>?
|
||||||
|
) : BaseRecyclerAdapter<MessageBean>(ctx, list) {
|
||||||
|
override fun getEmptyLayoutId(viewType: Int) = 0
|
||||||
|
|
||||||
|
override fun getItemLayoutId(viewType: Int) = R.layout.item_history_fence_layout
|
||||||
|
|
||||||
|
override fun bindData(holder: RecyclerViewHolder?, position: Int, item: MessageBean) {
|
||||||
|
holder?.apply {
|
||||||
|
getImageView(R.id.iv_history_fence_type_image).let {
|
||||||
|
when (item.deviceMessageType) {
|
||||||
|
ConstantInt.Type1, ConstantInt.Type3 -> it.setImageResource(R.drawable.icon_history_danger_fence_image)
|
||||||
|
ConstantInt.Type2 -> it.setImageResource(R.drawable.icon_history_save_fence_image)
|
||||||
|
ConstantInt.Type4 -> it.setImageResource(R.drawable.icon_history_no_save_fence_image)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
getTextView(R.id.tv_history_fence_type_time).text =
|
||||||
|
getRelativeTimeString(item.timeStamp)
|
||||||
|
getTextView(R.id.tv_history_fence_type_content).text = item.message
|
||||||
|
getImageView(R.id.iv_history_fence_type_line).let {
|
||||||
|
it.visibility = if (position == getData().size - 1) View.GONE
|
||||||
|
else View.VISIBLE
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private fun getRelativeTimeString(timeStamp: Long): String {
|
||||||
|
val formatDateStr: String
|
||||||
|
val cTimeStamp = Utils.stringToTimestamp(
|
||||||
|
Utils.formatTime(
|
||||||
|
timeStamp, Utils.DATE_FORMAT_PATTERN_CN2
|
||||||
|
)
|
||||||
|
)
|
||||||
|
formatDateStr = if (DateUtils.isToday(cTimeStamp)) {
|
||||||
|
mContext.getString(R.string.txt_today) + " " + Utils.formatTime(
|
||||||
|
timeStamp, Utils.DATE_FORMAT_PATTERN_EN14
|
||||||
|
)
|
||||||
|
} else if (Utils.isYesterday(cTimeStamp)) {
|
||||||
|
mContext.getString(R.string.txt_yesterday) + " " + Utils.formatTime(
|
||||||
|
timeStamp, Utils.DATE_FORMAT_PATTERN_EN14
|
||||||
|
)
|
||||||
|
} else {
|
||||||
|
Utils.formatTime(
|
||||||
|
timeStamp, Utils.DATE_FORMAT_PATTERN_EN15
|
||||||
|
)
|
||||||
|
}
|
||||||
|
return formatDateStr
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -39,7 +39,7 @@ class HomePetTrackMenuAdapter(
|
|||||||
}
|
}
|
||||||
|
|
||||||
override fun convert(holder: BaseViewHolder, item: MenuTxtBean) {
|
override fun convert(holder: BaseViewHolder, item: MenuTxtBean) {
|
||||||
val position = getItemPosition(item)
|
// val position = getItemPosition(item)
|
||||||
val qMUICommonItemView =
|
val qMUICommonItemView =
|
||||||
holder.getView<QMUICommonListItemView>(R.id.tracker_manage_setting_item).apply {
|
holder.getView<QMUICommonListItemView>(R.id.tracker_manage_setting_item).apply {
|
||||||
ViewUtil.instance.showQMUICommonListItemView(
|
ViewUtil.instance.showQMUICommonListItemView(
|
||||||
@@ -55,12 +55,21 @@ class HomePetTrackMenuAdapter(
|
|||||||
setTextColor(ContextCompat.getColor(context, tColor))
|
setTextColor(ContextCompat.getColor(context, tColor))
|
||||||
}
|
}
|
||||||
qMUICommonItemView.setOnClickListener {
|
qMUICommonItemView.setOnClickListener {
|
||||||
when (position) {
|
when (item.menuName) {
|
||||||
0 -> mHomeTrackFragment.goPetDataActivity(LedLightActivity::class.java)
|
context.getString(R.string.tracker_manage_led) -> mHomeTrackFragment.goPetDataActivity(
|
||||||
1 -> mHomeTrackFragment.goMapDeviceDataActivity(TrackingDurationSetActivity::class.java)
|
LedLightActivity::class.java
|
||||||
2 -> mHomeTrackFragment.goMapDeviceDataActivity(LiveDurationSetActivity::class.java)
|
)
|
||||||
3 -> mHomeTrackFragment.firmwareCheckUpdate()
|
|
||||||
4 -> {
|
context.getString(R.string.tracker_manage_set_duration) -> mHomeTrackFragment.goMapDeviceDataActivity(
|
||||||
|
TrackingDurationSetActivity::class.java
|
||||||
|
)
|
||||||
|
|
||||||
|
context.getString(R.string.txt_live_duration) -> mHomeTrackFragment.goMapDeviceDataActivity(
|
||||||
|
LiveDurationSetActivity::class.java
|
||||||
|
)
|
||||||
|
|
||||||
|
context.getString(R.string.txt_firmware_version) -> mHomeTrackFragment.firmwareCheckUpdate()
|
||||||
|
context.getString(R.string.txt_power_off) -> {
|
||||||
if (item.type == ConstantInt.SpecialType) return@setOnClickListener
|
if (item.type == ConstantInt.SpecialType) return@setOnClickListener
|
||||||
mHomeTrackFragment.goPetDataActivity(PowerOffActivity::class.java)
|
mHomeTrackFragment.goPetDataActivity(PowerOffActivity::class.java)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -9,6 +9,7 @@ import com.abbidot.tracker.R
|
|||||||
import com.abbidot.tracker.bean.MenuTxtBean
|
import com.abbidot.tracker.bean.MenuTxtBean
|
||||||
import com.abbidot.tracker.constant.ConstantInt
|
import com.abbidot.tracker.constant.ConstantInt
|
||||||
import com.abbidot.tracker.constant.MultipleEntity
|
import com.abbidot.tracker.constant.MultipleEntity
|
||||||
|
import com.abbidot.tracker.util.ViewUtil
|
||||||
import com.abbidot.tracker.widget.BatteryView
|
import com.abbidot.tracker.widget.BatteryView
|
||||||
import com.abbidot.tracker.widget.MyBluetoothAnimView
|
import com.abbidot.tracker.widget.MyBluetoothAnimView
|
||||||
import com.abbidot.tracker.widget.TypefaceTextView
|
import com.abbidot.tracker.widget.TypefaceTextView
|
||||||
@@ -27,12 +28,13 @@ class HomePetTrackStateAdapter(
|
|||||||
val stateTextView = holder!!.getView(R.id.tv_home_pet_device_state_item) as TypefaceTextView
|
val stateTextView = holder!!.getView(R.id.tv_home_pet_device_state_item) as TypefaceTextView
|
||||||
stateTextView.text = item.menuName
|
stateTextView.text = item.menuName
|
||||||
|
|
||||||
holder.getTextView(R.id.tv_home_pet_device_state_name_item).apply {
|
val stateName = holder.getTextView(R.id.tv_home_pet_device_state_name_item).apply {
|
||||||
text = item.menuValue
|
text = item.menuValue
|
||||||
val color = if (item.type == ConstantInt.SpecialType) R.color.grey_color
|
val color = if (item.type == ConstantInt.SpecialType) R.color.grey_color
|
||||||
else item.colorRedId
|
else item.colorRedId
|
||||||
setTextColor(ContextCompat.getColor(mContext, color))
|
setTextColor(ContextCompat.getColor(mContext, color))
|
||||||
}
|
}
|
||||||
|
val btnState = holder.getImageView(R.id.iv_home_pet_btn_state)
|
||||||
|
|
||||||
val color = if (item.type == ConstantInt.SpecialType) R.color.grey_color
|
val color = if (item.type == ConstantInt.SpecialType) R.color.grey_color
|
||||||
else R.color.data_black_color
|
else R.color.data_black_color
|
||||||
@@ -43,7 +45,9 @@ class HomePetTrackStateAdapter(
|
|||||||
holder.getView(R.id.mba_home_pet_device_search_anim_item) as MyBluetoothAnimView
|
holder.getView(R.id.mba_home_pet_device_search_anim_item) as MyBluetoothAnimView
|
||||||
when (item.menuType) {
|
when (item.menuType) {
|
||||||
MultipleEntity.IMG_TEXT_IMG -> {
|
MultipleEntity.IMG_TEXT_IMG -> {
|
||||||
|
stateName.visibility = View.VISIBLE
|
||||||
bluetoothAnimView.visibility = View.GONE
|
bluetoothAnimView.visibility = View.GONE
|
||||||
|
btnState.visibility = View.GONE
|
||||||
bv.visibility = View.VISIBLE
|
bv.visibility = View.VISIBLE
|
||||||
bv.setValue(item.imageId)
|
bv.setValue(item.imageId)
|
||||||
bluetoothAnimView.setBluetoothAnimStartAndStop(item.isSwitch)
|
bluetoothAnimView.setBluetoothAnimStartAndStop(item.isSwitch)
|
||||||
@@ -51,8 +55,10 @@ class HomePetTrackStateAdapter(
|
|||||||
}
|
}
|
||||||
|
|
||||||
MultipleEntity.TEXT_TEXT_IMG -> {
|
MultipleEntity.TEXT_TEXT_IMG -> {
|
||||||
|
stateName.visibility = View.VISIBLE
|
||||||
bluetoothAnimView.visibility = View.VISIBLE
|
bluetoothAnimView.visibility = View.VISIBLE
|
||||||
bv.visibility = View.GONE
|
bv.visibility = View.GONE
|
||||||
|
btnState.visibility = View.GONE
|
||||||
bluetoothAnimView.setBluetoothAnimStartAndStop(item.isSwitch)
|
bluetoothAnimView.setBluetoothAnimStartAndStop(item.isSwitch)
|
||||||
stateTextView.setCompoundDrawablesWithIntrinsicBounds(0, 0, 0, 0)
|
stateTextView.setCompoundDrawablesWithIntrinsicBounds(0, 0, 0, 0)
|
||||||
}
|
}
|
||||||
@@ -73,6 +79,16 @@ class HomePetTrackStateAdapter(
|
|||||||
null, drawable, null, null
|
null, drawable, null, null
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
btnState.apply {
|
||||||
|
ViewUtil.instance.viewRotationAnimator(this, true)
|
||||||
|
visibility = if (item.state == ConstantInt.Type1) {
|
||||||
|
stateName.visibility = View.GONE
|
||||||
|
View.VISIBLE
|
||||||
|
} else {
|
||||||
|
stateName.visibility = View.VISIBLE
|
||||||
|
View.GONE
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -47,25 +47,40 @@ class MySubscriptionAdapter(
|
|||||||
holder.setText(R.id.tv_my_subscription_plan_name, item.mealName)
|
holder.setText(R.id.tv_my_subscription_plan_name, item.mealName)
|
||||||
holder.getTextView(R.id.tv_my_subscription_auto_subscription_tips).apply {
|
holder.getTextView(R.id.tv_my_subscription_auto_subscription_tips).apply {
|
||||||
visibility = if (item.subscriptionStatus == ConstantInt.Open) {
|
visibility = if (item.subscriptionStatus == ConstantInt.Open) {
|
||||||
text = if (item.mealUnit == ConstantString.PackageUnitYear) String.format(
|
text = when (item.mealUnit) {
|
||||||
mContext.getString(R.string.txt_auto_subscription_year),
|
ConstantString.PackageUnitYear -> if (item.mealPeriod > 1) String.format(
|
||||||
item.autoRenewPrice.toString()
|
mContext.getString(R.string.txt_auto_subscription_years),
|
||||||
)
|
|
||||||
else if (item.mealUnit == ConstantString.PackageUnitDay) String.format(
|
|
||||||
mContext.getString(R.string.txt_auto_subscription_day),
|
|
||||||
"${item.autoRenewPrice}",
|
"${item.autoRenewPrice}",
|
||||||
"${item.mealPeriod}"
|
"${item.mealPeriod}"
|
||||||
|
) else String.format(
|
||||||
|
mContext.getString(R.string.txt_auto_subscription_year),
|
||||||
|
"${item.autoRenewPrice}"
|
||||||
)
|
)
|
||||||
else String.format(
|
|
||||||
|
ConstantString.PackageUnitDay -> if (item.mealPeriod > 1) String.format(
|
||||||
|
mContext.getString(R.string.txt_auto_subscription_days),
|
||||||
|
"${item.autoRenewPrice}",
|
||||||
|
"${item.mealPeriod}"
|
||||||
|
) else String.format(
|
||||||
|
mContext.getString(R.string.txt_auto_subscription_day),
|
||||||
|
"${item.autoRenewPrice}"
|
||||||
|
)
|
||||||
|
|
||||||
|
else -> if (item.mealPeriod > 1) String.format(
|
||||||
|
mContext.getString(R.string.txt_auto_subscription_months),
|
||||||
|
"${item.autoRenewPrice}",
|
||||||
|
"${item.mealPeriod}"
|
||||||
|
) else String.format(
|
||||||
mContext.getString(R.string.txt_auto_subscription_month),
|
mContext.getString(R.string.txt_auto_subscription_month),
|
||||||
item.autoRenewPrice.toString()
|
"${item.autoRenewPrice}"
|
||||||
)
|
)
|
||||||
|
}
|
||||||
View.VISIBLE
|
View.VISIBLE
|
||||||
} else View.GONE
|
} else View.GONE
|
||||||
}
|
}
|
||||||
holder.setText(
|
holder.setText(
|
||||||
R.id.tv_my_subscription_active_time,
|
R.id.tv_my_subscription_active_time,
|
||||||
Utils.stringToDate(item.updateTime, resultFormat = Utils.DATE_FORMAT_PATTERN_EN6)
|
Utils.formatTime(item.payTime, Utils.DATE_FORMAT_PATTERN_CN4)
|
||||||
)
|
)
|
||||||
|
|
||||||
holder.getTextView(R.id.tv_my_subscription_annual_care).apply {
|
holder.getTextView(R.id.tv_my_subscription_annual_care).apply {
|
||||||
@@ -74,13 +89,17 @@ class MySubscriptionAdapter(
|
|||||||
else mContext.getString(R.string.txt_no)
|
else mContext.getString(R.string.txt_no)
|
||||||
}
|
}
|
||||||
|
|
||||||
// val timestamp = getAfterHowTimestamp(
|
holder.getTextView(R.id.tv_my_subscription_expires_on).apply {
|
||||||
// Utils.stringToTimestamp(item.currentTime), item.surplusDays
|
text = if (item.orderStatus == 6 && item.refundTime > 0L) {
|
||||||
// )
|
Utils.formatTime(item.refundTime, Utils.DATE_FORMAT_PATTERN_CN4)
|
||||||
holder.setText(
|
} else {
|
||||||
R.id.tv_my_subscription_expires_on,
|
Utils.formatTime(
|
||||||
Utils.formatTime(item.endTime, Utils.DATE_FORMAT_PATTERN_EN7)
|
Utils.timestampAddHowTimestamp(
|
||||||
|
item.payTime, item.mealPeriod, item.mealUnit
|
||||||
|
), Utils.DATE_FORMAT_PATTERN_CN
|
||||||
)
|
)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (item.subscriptionStatus == ConstantInt.Close) {
|
if (item.subscriptionStatus == ConstantInt.Close) {
|
||||||
holder.setText(
|
holder.setText(
|
||||||
@@ -93,40 +112,65 @@ class MySubscriptionAdapter(
|
|||||||
mContext.getString(R.string.tracker_manage_set_led_on)
|
mContext.getString(R.string.tracker_manage_set_led_on)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
val cTimeMillis = System.currentTimeMillis()
|
||||||
|
val endTime = if (item.refundTime == 0L) item.endTime else item.refundTime
|
||||||
|
val expiredTime = endTime * 1000 - cTimeMillis
|
||||||
|
//是否过期套餐
|
||||||
|
val isExpired =
|
||||||
|
item.orderStatus == 6 || (item.subscriptionStatus == ConstantInt.Close && expiredTime <= 0)
|
||||||
|
val userId = MMKVUtil.getString(MMKVKey.UserId)
|
||||||
val expiresTitle = holder.getTextView(R.id.tv_my_subscription_expires_title)
|
val expiresTitle = holder.getTextView(R.id.tv_my_subscription_expires_title)
|
||||||
holder.getButton(R.id.btn_my_subscription_recharge).apply {
|
holder.getButton(R.id.btn_my_subscription_recharge).apply {
|
||||||
visibility =
|
visibility = if (isExpired) {
|
||||||
if (item.orderStatus == 6 || (item.surplusDays == 0L && item.subscriptionStatus == ConstantInt.Close)) {
|
|
||||||
setText(R.string.txt_card_recharge)
|
setText(R.string.txt_card_recharge)
|
||||||
expiresTitle.setText(R.string.txt_expires_on2)
|
expiresTitle.setText(R.string.txt_expires_on2)
|
||||||
View.VISIBLE
|
View.VISIBLE
|
||||||
} else if (item.subscriptionStatus == ConstantInt.Close) {
|
} else if (item.subscriptionStatus == ConstantInt.Close) {
|
||||||
setText(R.string.txt_enable_auto_renew)
|
setText(R.string.txt_enable_auto_renew)
|
||||||
expiresTitle.setText(R.string.txt_expires_on1)
|
expiresTitle.setText(R.string.txt_expires_on1)
|
||||||
View.VISIBLE
|
//createUserId不一样就是绑定了其他用户有套餐的设备
|
||||||
|
if (item.createUserId == userId) visibility else View.GONE
|
||||||
} else {
|
} else {
|
||||||
expiresTitle.setText(R.string.txt_expires_on1)
|
expiresTitle.setText(R.string.txt_expires_on1)
|
||||||
View.GONE
|
View.GONE
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//UserId不一样就是共享设备的订单
|
||||||
|
visibility = if (item.userId == userId) visibility else View.GONE
|
||||||
}
|
}
|
||||||
|
|
||||||
holder.getView(R.id.il_my_subscription_count_down).apply {
|
holder.getView(R.id.il_my_subscription_count_down).apply {
|
||||||
visibility =
|
visibility = if (isExpired) {
|
||||||
if (item.orderStatus == 6 || (item.surplusDays == 0L && item.subscriptionStatus == ConstantInt.Close)) {
|
|
||||||
View.GONE
|
View.GONE
|
||||||
} else {
|
} else {
|
||||||
View.VISIBLE
|
View.VISIBLE
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
val times = Utils.getDayToYearMonthDay(item.surplusDays)
|
val times = Utils.differYear(cTimeMillis, item.endTime)
|
||||||
holder.setText(R.id.tv_add_success_device_expires_days, times[0])
|
holder.getTextView(R.id.tv_add_success_device_expires_days).apply {
|
||||||
holder.setText(R.id.tv_add_success_device_expires_hours, times[1])
|
visibility = if (item.subscriptionStatus == ConstantInt.Close) {
|
||||||
holder.setText(R.id.tv_add_success_device_expires_min, times[2])
|
text = times[0]
|
||||||
|
View.VISIBLE
|
||||||
|
} else View.GONE
|
||||||
|
holder.getTextView(R.id.tv_add_device_expires_year_title).visibility = visibility
|
||||||
|
}
|
||||||
|
holder.getTextView(R.id.tv_add_success_device_expires_hours).apply {
|
||||||
|
visibility = if (item.subscriptionStatus == ConstantInt.Close) {
|
||||||
|
text = times[1]
|
||||||
|
View.VISIBLE
|
||||||
|
} else View.GONE
|
||||||
|
holder.getTextView(R.id.tv_add_device_expires_month_title).visibility = visibility
|
||||||
|
}
|
||||||
|
holder.getTextView(R.id.tv_add_success_device_expires_min).apply {
|
||||||
|
visibility = if (item.subscriptionStatus == ConstantInt.Close) {
|
||||||
|
text = times[2]
|
||||||
|
View.VISIBLE
|
||||||
|
} else View.GONE
|
||||||
|
holder.getTextView(R.id.tv_add_device_expires_day_title).visibility = visibility
|
||||||
|
}
|
||||||
|
|
||||||
holder.getView(R.id.fl_my_subscription_btn_layout).apply {
|
holder.getView(R.id.fl_my_subscription_btn_layout).apply {
|
||||||
val userId = MMKVUtil.getString(MMKVKey.UserId)
|
|
||||||
//UserId不一样就是共享设备的订单
|
//UserId不一样就是共享设备的订单
|
||||||
visibility = if (item.userId == userId) {
|
visibility = if (item.userId == userId) {
|
||||||
setOnClickListener {
|
setOnClickListener {
|
||||||
@@ -137,7 +181,7 @@ class MySubscriptionAdapter(
|
|||||||
}
|
}
|
||||||
//充值
|
//充值
|
||||||
holder.setClickListener(R.id.btn_my_subscription_recharge) {
|
holder.setClickListener(R.id.btn_my_subscription_recharge) {
|
||||||
if (item.surplusDays == 0L && item.subscriptionStatus == ConstantInt.Close) {
|
if (item.subscriptionStatus == ConstantInt.Close && expiredTime <= 0) {
|
||||||
Intent(mContext, SubscriptionPlanActivity::class.java).let {
|
Intent(mContext, SubscriptionPlanActivity::class.java).let {
|
||||||
it.putExtra(ConstantString.LkSetMeal, item)
|
it.putExtra(ConstantString.LkSetMeal, item)
|
||||||
it.putExtra(ConstantString.RechargeType, ConstantInt.Type2)
|
it.putExtra(ConstantString.RechargeType, ConstantInt.Type2)
|
||||||
@@ -162,15 +206,18 @@ class MySubscriptionAdapter(
|
|||||||
setOnClickListener {
|
setOnClickListener {
|
||||||
qMUIPopups.dismiss()
|
qMUIPopups.dismiss()
|
||||||
Intent(mContext, SubscriptionHistoryActivity::class.java).let {
|
Intent(mContext, SubscriptionHistoryActivity::class.java).let {
|
||||||
it.putExtra(ConstantString.DeviceId, item.deviceId)
|
it.putExtra(ConstantString.Id, item.subscriptionId)
|
||||||
mMySubscriptionActivity.startActivity(it)
|
mMySubscriptionActivity.startActivity(it)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//升级套餐
|
//升级套餐
|
||||||
view.findViewById<TypefaceTextView>(R.id.tv_pop_my_subscription_auto_renew).apply {
|
view.findViewById<TypefaceTextView>(R.id.tv_pop_my_subscription_auto_renew).apply {
|
||||||
|
val cTimeMillis = System.currentTimeMillis()
|
||||||
|
val endTime = if (item.refundTime == 0L) item.endTime else item.refundTime
|
||||||
|
val expiredTime = endTime * 1000 - cTimeMillis
|
||||||
visibility =
|
visibility =
|
||||||
if (item.planCategory == "Premium" || (item.surplusDays == 0L && item.subscriptionStatus == ConstantInt.Close)) {
|
if (item.planCategory == "Premium" || (item.subscriptionStatus == ConstantInt.Close && expiredTime <= 0)) {
|
||||||
View.GONE
|
View.GONE
|
||||||
} else {
|
} else {
|
||||||
View.VISIBLE
|
View.VISIBLE
|
||||||
|
|||||||
@@ -12,6 +12,7 @@ import com.abbidot.tracker.constant.ConstantInt
|
|||||||
import com.abbidot.tracker.ui.activity.device.AddNewTracker1Activity
|
import com.abbidot.tracker.ui.activity.device.AddNewTracker1Activity
|
||||||
import com.abbidot.tracker.ui.activity.device.MyTrackerV2Activity
|
import com.abbidot.tracker.ui.activity.device.MyTrackerV2Activity
|
||||||
import com.abbidot.tracker.ui.activity.pet.PetProfileActivity
|
import com.abbidot.tracker.ui.activity.pet.PetProfileActivity
|
||||||
|
import com.abbidot.tracker.util.Util
|
||||||
import com.abbidot.tracker.util.ViewUtil
|
import com.abbidot.tracker.util.ViewUtil
|
||||||
import com.qmuiteam.qmui.widget.QMUIRadiusImageView
|
import com.qmuiteam.qmui.widget.QMUIRadiusImageView
|
||||||
|
|
||||||
@@ -100,6 +101,7 @@ class MyTrackerV2Adapter(
|
|||||||
trackerImageView.visibility = View.VISIBLE
|
trackerImageView.visibility = View.VISIBLE
|
||||||
trackerName.visibility = View.VISIBLE
|
trackerName.visibility = View.VISIBLE
|
||||||
|
|
||||||
|
trackerImageView.setImageResource(Util.getDeviceTypeImage(item.deviceType))
|
||||||
trackerName.text = item.deviceOutId
|
trackerName.text = item.deviceOutId
|
||||||
val battery = "${item.batteryCapacity} "
|
val battery = "${item.batteryCapacity} "
|
||||||
batteryTextView.text = battery
|
batteryTextView.text = battery
|
||||||
@@ -114,7 +116,7 @@ class MyTrackerV2Adapter(
|
|||||||
petName.visibility = View.VISIBLE
|
petName.visibility = View.VISIBLE
|
||||||
item.pet?.let {
|
item.pet?.let {
|
||||||
petName.text = it.petName
|
petName.text = it.petName
|
||||||
ViewUtil.instance.setPetTypeHead(petHead, it.imgurl, it.petType)
|
ViewUtil.instance.setPetTypeHead(mContext, petHead, it.imgurl, it.petType)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -10,6 +10,7 @@ import com.abbidot.baselibrary.list.RecyclerViewHolder
|
|||||||
import com.abbidot.baselibrary.util.Utils
|
import com.abbidot.baselibrary.util.Utils
|
||||||
import com.abbidot.tracker.R
|
import com.abbidot.tracker.R
|
||||||
import com.abbidot.tracker.bean.MessageBean
|
import com.abbidot.tracker.bean.MessageBean
|
||||||
|
import com.abbidot.tracker.constant.ConstantInt
|
||||||
import com.abbidot.tracker.widget.TypefaceRoundButton
|
import com.abbidot.tracker.widget.TypefaceRoundButton
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -28,7 +29,7 @@ class NotificationV2Adapter(
|
|||||||
override fun bindData(holder: RecyclerViewHolder?, position: Int, item: MessageBean) {
|
override fun bindData(holder: RecyclerViewHolder?, position: Int, item: MessageBean) {
|
||||||
val roundButton =
|
val roundButton =
|
||||||
holder!!.getView(R.id.iv_home_route_notification_state) as TypefaceRoundButton
|
holder!!.getView(R.id.iv_home_route_notification_state) as TypefaceRoundButton
|
||||||
val textColor = if (item.isRead) {
|
val textColor = if (item.isRead == ConstantInt.Type1) {
|
||||||
roundButton.visibility = View.GONE
|
roundButton.visibility = View.GONE
|
||||||
R.color.black70
|
R.color.black70
|
||||||
} else {
|
} else {
|
||||||
@@ -51,22 +52,30 @@ class NotificationV2Adapter(
|
|||||||
setTextColor(ContextCompat.getColor(mContext, textColor))
|
setTextColor(ContextCompat.getColor(mContext, textColor))
|
||||||
}
|
}
|
||||||
holder.getTextView(R.id.tv_home_route_notification_date).apply {
|
holder.getTextView(R.id.tv_home_route_notification_date).apply {
|
||||||
text = getRelativeTimeString(Utils.stringToTimestamp(item.sendTime))
|
text = getRelativeTimeString(item.timeStamp)
|
||||||
setTextColor(ContextCompat.getColor(mContext, textColor))
|
setTextColor(ContextCompat.getColor(mContext, textColor))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun getRelativeTimeString(time: Long): String {
|
private fun getRelativeTimeString(timeStamp: Long): String {
|
||||||
var formatDateStr = ""
|
val formatDateStr: String
|
||||||
val now = System.currentTimeMillis()
|
val cTimeStamp = Utils.stringToTimestamp(
|
||||||
formatDateStr = if (DateUtils.isToday(time)) {
|
Utils.formatTime(
|
||||||
mContext.getString(R.string.txt_today) + " " + Utils.formatTime(
|
timeStamp, Utils.DATE_FORMAT_PATTERN_CN2
|
||||||
time, Utils.DATE_FORMAT_PATTERN_EN8
|
)
|
||||||
|
)
|
||||||
|
formatDateStr = if (DateUtils.isToday(cTimeStamp)) {
|
||||||
|
mContext.getString(R.string.txt_today) + " " + Utils.formatTime(
|
||||||
|
timeStamp, Utils.DATE_FORMAT_PATTERN_EN14
|
||||||
|
)
|
||||||
|
} else if (Utils.isYesterday(cTimeStamp)) {
|
||||||
|
mContext.getString(R.string.txt_yesterday) + " " + Utils.formatTime(
|
||||||
|
timeStamp, Utils.DATE_FORMAT_PATTERN_EN14
|
||||||
)
|
)
|
||||||
} else if (now - time < (48 * 60 * 60 * 1000)) {
|
|
||||||
mContext.getString(R.string.txt_yesterday)
|
|
||||||
} else {
|
} else {
|
||||||
Utils.formatTime(time, Utils.DATE_FORMAT_PATTERN_EN9)
|
Utils.formatTime(
|
||||||
|
timeStamp, Utils.DATE_FORMAT_PATTERN_CN2
|
||||||
|
)
|
||||||
}
|
}
|
||||||
return formatDateStr
|
return formatDateStr
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ import com.abbidot.baselibrary.list.BaseRecyclerAdapter
|
|||||||
import com.abbidot.baselibrary.list.RecyclerViewHolder
|
import com.abbidot.baselibrary.list.RecyclerViewHolder
|
||||||
import com.abbidot.tracker.R
|
import com.abbidot.tracker.R
|
||||||
import com.abbidot.tracker.bean.DeviceBean
|
import com.abbidot.tracker.bean.DeviceBean
|
||||||
|
import com.abbidot.tracker.util.Util
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*Created by .yzq on 2025/12/19/周五.
|
*Created by .yzq on 2025/12/19/周五.
|
||||||
@@ -39,6 +40,8 @@ class ScanDeviceAdapter(
|
|||||||
holder.getView(R.id.ld_add_new_tracker3_connect_state).visibility =
|
holder.getView(R.id.ld_add_new_tracker3_connect_state).visibility =
|
||||||
if (item.conState == ConState.CONNECTING) View.VISIBLE
|
if (item.conState == ConState.CONNECTING) View.VISIBLE
|
||||||
else View.GONE
|
else View.GONE
|
||||||
|
holder.getImageView(R.id.iv_add_new_tracker3_device_image)
|
||||||
|
.setImageResource(Util.getDeviceTypeImage(item.type))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1,5 +1,6 @@
|
|||||||
package com.abbidot.tracker.adapter
|
package com.abbidot.tracker.adapter
|
||||||
|
|
||||||
|
import android.content.Context
|
||||||
import android.content.Intent
|
import android.content.Intent
|
||||||
import android.view.View
|
import android.view.View
|
||||||
import android.widget.TextView
|
import android.widget.TextView
|
||||||
@@ -16,6 +17,8 @@ import com.abbidot.tracker.ui.activity.subscribe.SubscriptionHistoryActivity
|
|||||||
import com.abbidot.tracker.widget.TypefaceRoundButton
|
import com.abbidot.tracker.widget.TypefaceRoundButton
|
||||||
import com.chad.library.adapter.base.BaseMultiItemQuickAdapter
|
import com.chad.library.adapter.base.BaseMultiItemQuickAdapter
|
||||||
import com.chad.library.adapter.base.viewholder.BaseViewHolder
|
import com.chad.library.adapter.base.viewholder.BaseViewHolder
|
||||||
|
import com.hjq.toast.Toaster
|
||||||
|
import com.qmuiteam.qmui.widget.roundwidget.QMUIRoundButtonDrawable
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*Created by .yzq on 2024/8/19/019.
|
*Created by .yzq on 2024/8/19/019.
|
||||||
@@ -46,30 +49,37 @@ class SubscriptionHistoryAdapter(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 保险订单
|
||||||
|
*/
|
||||||
private fun bindAnnualCareData(holder: BaseViewHolder, item: SubscriptionsOrderBean) {
|
private fun bindAnnualCareData(holder: BaseViewHolder, item: SubscriptionsOrderBean) {
|
||||||
holder.setText(
|
holder.setText(
|
||||||
R.id.tv_subscription_annual_care_order_id,
|
R.id.tv_subscription_annual_care_order_id,
|
||||||
context.getString(R.string.txt_order_id) + item.orderNum
|
context.getString(R.string.txt_order_id) + item.orderNum
|
||||||
)
|
)
|
||||||
|
val cTimeMillis = System.currentTimeMillis()
|
||||||
|
val endTime = if (item.refundTime == 0L) item.endTime else item.refundTime
|
||||||
|
val expiredTime = endTime * 1000 - cTimeMillis
|
||||||
val state =
|
val state =
|
||||||
if (item.enabled == ConstantInt.Type0 || (item.surplusDays == 0L && item.subscriptionStatus == ConstantInt.Close)) {
|
if (item.enabled == ConstantInt.Type0 || (item.subscriptionStatus == ConstantInt.Close && expiredTime <= 0)) {
|
||||||
context.getString(R.string.txt_expired)
|
context.getString(R.string.txt_expired)
|
||||||
} else {
|
} else {
|
||||||
context.getString(R.string.txt_active)
|
context.getString(R.string.txt_active)
|
||||||
}
|
}
|
||||||
holder.setText(R.id.tv_subscription_annual_care_state, state)
|
holder.setText(R.id.tv_subscription_annual_care_state, state)
|
||||||
holder.setText(
|
holder.setText(
|
||||||
R.id.tv_subscription_annual_care_active_time,
|
R.id.tv_subscription_annual_care_active_time, Utils.formatTime(
|
||||||
Utils.stringToDate(item.createTime, resultFormat = Utils.DATE_FORMAT_PATTERN_EN7)
|
item.payTime, Utils.DATE_FORMAT_PATTERN_CN
|
||||||
|
)
|
||||||
)
|
)
|
||||||
//保险时长,不足一年按12个月算
|
//保险时长,不足一年按12个月算
|
||||||
val insuranceTime =
|
val insuranceTime =
|
||||||
if (item.mealUnit == ConstantString.PackageUnitYear) item.mealPeriod else 1
|
if (item.mealUnit == ConstantString.PackageUnitYear) item.mealPeriod else 1
|
||||||
holder.setText(
|
holder.setText(
|
||||||
R.id.tv_subscription_annual_care_expiry_time, Utils.formatTime(
|
R.id.tv_subscription_annual_care_expiry_time, Utils.formatTime(
|
||||||
Utils.getAfterHowTimestamp(
|
Utils.timestampAddHowTimestamp(
|
||||||
Utils.stringToTimestamp(item.createTime), insuranceTime * 365L
|
item.payTime, insuranceTime, ConstantString.PackageUnitYear
|
||||||
), Utils.DATE_FORMAT_PATTERN_EN7
|
), Utils.DATE_FORMAT_PATTERN_CN
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
holder.setText(
|
holder.setText(
|
||||||
@@ -85,11 +95,11 @@ class SubscriptionHistoryAdapter(
|
|||||||
private fun bindOrderData(holder: BaseViewHolder, item: SubscriptionsOrderBean) {
|
private fun bindOrderData(holder: BaseViewHolder, item: SubscriptionsOrderBean) {
|
||||||
holder.setText(
|
holder.setText(
|
||||||
R.id.tv_subscription_history_order_id,
|
R.id.tv_subscription_history_order_id,
|
||||||
context.getString(R.string.txt_order_id) + item.orderNum
|
context.getString(R.string.txt_order_id) + item.renewNum
|
||||||
)
|
)
|
||||||
holder.setText(
|
holder.setText(
|
||||||
R.id.tv_subscription_history_order_time,
|
R.id.tv_subscription_history_order_time,
|
||||||
Utils.stringToDate(item.createTime, resultFormat = Utils.DATE_FORMAT_PATTERN_EN10)
|
Utils.formatTime(item.payTime, Utils.DATE_FORMAT_PATTERN_CN2)
|
||||||
)
|
)
|
||||||
holder.setText(R.id.tv_subscription_history_package_name, item.mealName)
|
holder.setText(R.id.tv_subscription_history_package_name, item.mealName)
|
||||||
holder.setText(
|
holder.setText(
|
||||||
@@ -107,29 +117,39 @@ class SubscriptionHistoryAdapter(
|
|||||||
visibility = View.VISIBLE
|
visibility = View.VISIBLE
|
||||||
when (item.orderStatus) {
|
when (item.orderStatus) {
|
||||||
1 -> {
|
1 -> {
|
||||||
val updateTimestamp = Utils.stringToTimestamp(item.updateTime)
|
if (item.isAutoRenewal == ConstantInt.Type1) {
|
||||||
val nowTimestamp = System.currentTimeMillis()
|
|
||||||
// val nowTimestamp = Utils.stringToTimestamp(item.currentTime)
|
|
||||||
if (item.mealUnit == ConstantString.PackageUnitMonth) {
|
|
||||||
val day7Timestamp = 7 * 24 * 60 * 60 * 1000L
|
|
||||||
//套餐超出7天不能退款
|
|
||||||
if (nowTimestamp - updateTimestamp <= day7Timestamp) {
|
|
||||||
visibility = View.VISIBLE
|
|
||||||
setText(R.string.txt_refund)
|
|
||||||
} else {
|
|
||||||
visibility = View.GONE
|
visibility = View.GONE
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
val day30Timestamp = 30 * 24 * 60 * 60 * 1000L
|
setRefundState(context, item.isRefundable, this)
|
||||||
//套餐超出30天不能退款
|
|
||||||
if (nowTimestamp - updateTimestamp <= day30Timestamp) {
|
|
||||||
visibility = View.VISIBLE
|
|
||||||
setText(R.string.txt_refund)
|
|
||||||
} else {
|
|
||||||
visibility = View.GONE
|
|
||||||
}
|
}
|
||||||
}
|
|
||||||
setTextColor(ContextCompat.getColor(context, R.color.select_color))
|
// val updateTimestamp = Utils.stringToTimestamp(item.updateTime, isUtc = true)
|
||||||
|
// val nowTimestamp = System.currentTimeMillis()
|
||||||
|
// if (item.enabled == ConstantInt.Type0 || (item.surplusDays == 0L && item.subscriptionStatus == ConstantInt.Close)) {
|
||||||
|
// visibility = View.GONE
|
||||||
|
// } else if (item.mealUnit == ConstantString.PackageUnitDay) {
|
||||||
|
// visibility = View.VISIBLE
|
||||||
|
// setText(R.string.txt_refund)
|
||||||
|
// } else if (item.mealUnit == ConstantString.PackageUnitMonth) {
|
||||||
|
// val day7Timestamp = 7 * 24 * 60 * 60 * 1000L
|
||||||
|
// //套餐超出7天不能退款
|
||||||
|
// if (nowTimestamp - updateTimestamp <= day7Timestamp) {
|
||||||
|
// visibility = View.VISIBLE
|
||||||
|
// setText(R.string.txt_refund)
|
||||||
|
// } else {
|
||||||
|
// visibility = View.GONE
|
||||||
|
// }
|
||||||
|
// } else {
|
||||||
|
// val day30Timestamp = 30 * 24 * 60 * 60 * 1000L
|
||||||
|
// //套餐超出30天不能退款
|
||||||
|
// if (nowTimestamp - updateTimestamp <= day30Timestamp) {
|
||||||
|
// visibility = View.VISIBLE
|
||||||
|
// setText(R.string.txt_refund)
|
||||||
|
// } else {
|
||||||
|
// visibility = View.GONE
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// setTextColor(ContextCompat.getColor(context, R.color.select_color))
|
||||||
}
|
}
|
||||||
|
|
||||||
4 -> setText(R.string.txt_waiting)
|
4 -> setText(R.string.txt_waiting)
|
||||||
@@ -147,6 +167,10 @@ class SubscriptionHistoryAdapter(
|
|||||||
setChangeAlphaWhenPress(true)
|
setChangeAlphaWhenPress(true)
|
||||||
setOnClickListener {
|
setOnClickListener {
|
||||||
if (item.orderStatus == ConstantInt.Type1) {
|
if (item.orderStatus == ConstantInt.Type1) {
|
||||||
|
if (item.isRefundable == ConstantInt.Type0) {
|
||||||
|
Toaster.show(R.string.txt_refund_expired)
|
||||||
|
return@setOnClickListener
|
||||||
|
}
|
||||||
Intent(context, RequestRefundActivity::class.java).apply {
|
Intent(context, RequestRefundActivity::class.java).apply {
|
||||||
putExtra(ConstantString.SetMeal, item)
|
putExtra(ConstantString.SetMeal, item)
|
||||||
mHistoryActivity.startActivity(this)
|
mHistoryActivity.startActivity(this)
|
||||||
@@ -155,8 +179,10 @@ class SubscriptionHistoryAdapter(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
val state =
|
val cTimeMillis = System.currentTimeMillis()
|
||||||
if (item.enabled == ConstantInt.Type0 || (item.surplusDays == 0L && item.subscriptionStatus == ConstantInt.Close)) {
|
val endTime = if (item.refundTime == 0L) item.endTime else item.refundTime
|
||||||
|
val expiredTime = endTime * 1000 - cTimeMillis
|
||||||
|
val state = if (item.enabled == ConstantInt.Type0 || (expiredTime <= 0)) {
|
||||||
context.getString(R.string.txt_expired)
|
context.getString(R.string.txt_expired)
|
||||||
} else {
|
} else {
|
||||||
context.getString(R.string.txt_active)
|
context.getString(R.string.txt_active)
|
||||||
@@ -170,4 +196,24 @@ class SubscriptionHistoryAdapter(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private fun setRefundState(
|
||||||
|
context: Context, isRefundable: Int, roundButton: TypefaceRoundButton
|
||||||
|
) {
|
||||||
|
roundButton.apply {
|
||||||
|
var textColor = R.color.select_color
|
||||||
|
val strokeColor = if (isRefundable == ConstantInt.Type1) {
|
||||||
|
R.color.block_color
|
||||||
|
} else {
|
||||||
|
textColor = R.color.line_color1
|
||||||
|
R.color.permission_no_check_color
|
||||||
|
}
|
||||||
|
(background as QMUIRoundButtonDrawable).let {
|
||||||
|
it.setStroke(
|
||||||
|
it.strokeWidth, ContextCompat.getColor(context, strokeColor)
|
||||||
|
)
|
||||||
|
}
|
||||||
|
setTextColor(ContextCompat.getColor(context, textColor))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -0,0 +1,41 @@
|
|||||||
|
package com.abbidot.tracker.adapter;
|
||||||
|
|
||||||
|
import android.content.Context;
|
||||||
|
import android.view.View;
|
||||||
|
|
||||||
|
import androidx.recyclerview.widget.LinearLayoutManager;
|
||||||
|
import androidx.recyclerview.widget.RecyclerView;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Created by .yzq on 2026/4/13/周一.
|
||||||
|
*
|
||||||
|
* @link
|
||||||
|
* @description:
|
||||||
|
*/
|
||||||
|
public class TopSlideLayoutManager extends LinearLayoutManager {
|
||||||
|
private int mTopOffset;
|
||||||
|
|
||||||
|
public TopSlideLayoutManager(Context context, int orientation, boolean reverseLayout) {
|
||||||
|
super(context, orientation, reverseLayout);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTopOffset(int topOffset) {
|
||||||
|
mTopOffset = topOffset;
|
||||||
|
requestLayout();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onLayoutChildren(RecyclerView.Recycler recycler, RecyclerView.State state) {
|
||||||
|
super.onLayoutChildren(recycler, state);
|
||||||
|
// 可以在这里调整子项的位置,例如将顶部几个项上移
|
||||||
|
if (getChildCount() > 0) {
|
||||||
|
View firstChild = getChildAt(0);
|
||||||
|
if (firstChild != null) {
|
||||||
|
int top = getDecoratedTop(firstChild) - mTopOffset;
|
||||||
|
layoutDecoratedWithMargins(firstChild, firstChild.getLeft(), top,
|
||||||
|
firstChild.getRight(), top + firstChild.getHeight());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user