Commit 103093f3 by chengchong

firsh

parents
*.iml
.gradle
/local.properties
/.idea/caches
/.idea/libraries
/.idea/modules.xml
/.idea/workspace.xml
/.idea/navEditor.xml
/.idea/assetWizardSettings.xml
.DS_Store
/build
/captures
.externalNativeBuild
.cxx
<component name="ProjectCodeStyleConfiguration">
<code_scheme name="Project" version="173">
<codeStyleSettings language="XML">
<indentOptions>
<option name="CONTINUATION_INDENT_SIZE" value="4" />
</indentOptions>
<arrangement>
<rules>
<section>
<rule>
<match>
<AND>
<NAME>xmlns:android</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>xmlns:.*</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
<order>BY_NAME</order>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*:id</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*:name</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>name</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>style</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
<order>BY_NAME</order>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
</AND>
</match>
<order>ANDROID_ATTRIBUTE_ORDER</order>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>.*</XML_NAMESPACE>
</AND>
</match>
<order>BY_NAME</order>
</rule>
</section>
</rules>
</arrangement>
</codeStyleSettings>
</code_scheme>
</component>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="GradleMigrationSettings" migrationVersion="1" />
<component name="GradleSettings">
<option name="linkedExternalProjectsSettings">
<GradleProjectSettings>
<option name="delegatedBuild" value="false" />
<option name="testRunner" value="PLATFORM" />
<option name="distributionType" value="DEFAULT_WRAPPED" />
<option name="externalProjectPath" value="$PROJECT_DIR$" />
<option name="gradleHome" value="$PROJECT_DIR$/../gradle-5.4.1" />
<option name="gradleJvm" value="1.8" />
<option name="modules">
<set>
<option value="$PROJECT_DIR$" />
<option value="$PROJECT_DIR$/FastBleLib" />
<option value="$PROJECT_DIR$/app" />
</set>
</option>
<option name="resolveModulePerSourceSet" value="false" />
</GradleProjectSettings>
</option>
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="RemoteRepositoriesConfiguration">
<remote-repository>
<option name="id" value="central" />
<option name="name" value="Maven Central repository" />
<option name="url" value="https://repo1.maven.org/maven2" />
</remote-repository>
<remote-repository>
<option name="id" value="jboss.community" />
<option name="name" value="JBoss Community repository" />
<option name="url" value="https://repository.jboss.org/nexus/content/repositories/public/" />
</remote-repository>
<remote-repository>
<option name="id" value="BintrayJCenter" />
<option name="name" value="BintrayJCenter" />
<option name="url" value="https://jcenter.bintray.com/" />
</remote-repository>
<remote-repository>
<option name="id" value="Google" />
<option name="name" value="Google" />
<option name="url" value="https://dl.google.com/dl/android/maven2/" />
</remote-repository>
<remote-repository>
<option name="id" value="MavenRepo" />
<option name="name" value="MavenRepo" />
<option name="url" value="https://repo.maven.apache.org/maven2/" />
</remote-repository>
<remote-repository>
<option name="id" value="maven2" />
<option name="name" value="maven2" />
<option name="url" value="https://maven.aliyun.com/repository/public" />
</remote-repository>
<remote-repository>
<option name="id" value="maven" />
<option name="name" value="maven" />
<option name="url" value="https://maven.aliyun.com/repository/google" />
</remote-repository>
<remote-repository>
<option name="id" value="maven3" />
<option name="name" value="maven3" />
<option name="url" value="https://jitpack.io" />
</remote-repository>
<remote-repository>
<option name="id" value="maven3" />
<option name="name" value="maven3" />
<option name="url" value="http://maven.aliyun.com/nexus/content/groups/public/" />
</remote-repository>
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" project-jdk-name="1.8" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/build/classes" />
</component>
<component name="ProjectType">
<option name="id" value="Android" />
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="RunConfigurationProducerService">
<option name="ignoredProducers">
<set>
<option value="org.jetbrains.plugins.gradle.execution.test.runner.AllInPackageGradleConfigurationProducer" />
<option value="org.jetbrains.plugins.gradle.execution.test.runner.TestClassGradleConfigurationProducer" />
<option value="org.jetbrains.plugins.gradle.execution.test.runner.TestMethodGradleConfigurationProducer" />
</set>
</option>
</component>
</project>
\ No newline at end of file
apply plugin: 'com.android.library'
android {
compileSdkVersion 26
buildToolsVersion '26.0.2'
defaultConfig {
minSdkVersion 14
targetSdkVersion 30
versionCode 232
versionName "2.3.2"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
buildTypes {
}
}
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
}
/**
* Automatically generated file. DO NOT MODIFY
*/
package com.clj.fastble;
public final class BuildConfig {
public static final boolean DEBUG = Boolean.parseBoolean("true");
public static final String LIBRARY_PACKAGE_NAME = "com.clj.fastble";
public static final String BUILD_TYPE = "debug";
public static final int VERSION_CODE = 232;
public static final String VERSION_NAME = "2.3.2";
}
/**
* Automatically generated file. DO NOT MODIFY
*/
package com.clj.fastble;
public final class BuildConfig {
public static final boolean DEBUG = false;
public static final String LIBRARY_PACKAGE_NAME = "com.clj.fastble";
/**
* @deprecated APPLICATION_ID is misleading in libraries. For the library package name use LIBRARY_PACKAGE_NAME
*/
@Deprecated
public static final String APPLICATION_ID = "com.clj.fastble";
public static final String BUILD_TYPE = "release";
public static final String FLAVOR = "";
public static final int VERSION_CODE = 232;
public static final String VERSION_NAME = "2.3.2";
}
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.clj.fastble"
android:versionCode="232"
android:versionName="2.3.2" >
<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="30" />
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
</manifest>
\ No newline at end of file
{
"version": 1,
"applicationId": "com.clj.fastble",
"variantType": "LIBRARY",
"elements": [
{
"outputType": {
"type": "AAPT_FRIENDLY_MERGED_MANIFESTS"
},
"apkData": {
"type": "MAIN",
"splits": [],
"versionCode": 232,
"versionName": "2.3.2",
"outputFile": "FastBleLib-debug.aar",
"fullName": "debug",
"baseName": "debug",
"dirName": ""
},
"path": "AndroidManifest.xml",
"properties": {
"packageId": "com.clj.fastble",
"split": ""
}
}
]
}
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.clj.fastble"
android:versionCode="232"
android:versionName="2.3.2" >
<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="22" />
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
</manifest>
\ No newline at end of file
[{"outputType":{"type":"AAPT_FRIENDLY_MERGED_MANIFESTS"},"apkData":{"type":"MAIN","splits":[],"versionCode":232,"versionName":"2.3.2","enabled":true,"outputFile":"FastBleLib-release.aar","fullName":"release","baseName":"release","dirName":""},"path":"AndroidManifest.xml","properties":{"packageId":"com.clj.fastble","split":""}}]
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<merger version="3"><dataSet config="main" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="D:\androidProject\BluToysApplication\FastBleLib\src\main\jniLibs"/></dataSet><dataSet config="debug" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="D:\androidProject\BluToysApplication\FastBleLib\src\debug\jniLibs"/></dataSet></merger>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<merger version="3"><dataSet config="main" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="D:\androidProject\BluToysApplication\FastBleLib\src\main\shaders"/></dataSet><dataSet config="debug" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="D:\androidProject\BluToysApplication\FastBleLib\src\debug\shaders"/></dataSet></merger>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<merger version="3"><dataSet config="main" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/jniLibs"/></dataSet><dataSet config="release" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/release/jniLibs"/></dataSet></merger>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<merger version="3"><dataSet config="main" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/shaders"/></dataSet><dataSet config="release" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/release/shaders"/></dataSet></merger>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<merger version="3"><dataSet config="main" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="D:\androidProject\BluToysApplication\FastBleLib\src\main\assets"/><source path="D:\androidProject\BluToysApplication\FastBleLib\build\intermediates\shader_assets\debug\out"/></dataSet><dataSet config="debug" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="D:\androidProject\BluToysApplication\FastBleLib\src\debug\assets"/></dataSet></merger>
\ No newline at end of file
<?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:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="D:\androidProject\BluToysApplication\FastBleLib\src\main\res"/><source path="D:\androidProject\BluToysApplication\FastBleLib\build\generated\res\rs\debug"/><source path="D:\androidProject\BluToysApplication\FastBleLib\build\generated\res\resValues\debug"/></dataSet><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="main" generated-set="main$Generated" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="D:\androidProject\BluToysApplication\FastBleLib\src\main\res"/><source path="D:\androidProject\BluToysApplication\FastBleLib\build\generated\res\rs\debug"/><source path="D:\androidProject\BluToysApplication\FastBleLib\build\generated\res\resValues\debug"/></dataSet><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="debug$Generated" generated="true" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="D:\androidProject\BluToysApplication\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:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="D:\androidProject\BluToysApplication\FastBleLib\src\debug\res"/></dataSet><mergedItems/></merger>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<merger version="3"><dataSet config="main" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/assets"/><source path="/Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/build/intermediates/shader_assets/release/out"/></dataSet><dataSet config="release" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/release/assets"/></dataSet></merger>
\ No newline at end of file
<?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:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/res"/><source path="/Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/build/generated/res/rs/release"/><source path="/Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/build/generated/res/resValues/release"/></dataSet><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="main" generated-set="main$Generated" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/res"/><source path="/Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/build/generated/res/rs/release"/><source path="/Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/build/generated/res/resValues/release"/></dataSet><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="release$Generated" generated="true" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/release/res"/></dataSet><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="release" generated-set="release$Generated" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/release/res"/></dataSet><mergedItems/></merger>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.clj.fastble"
android:versionCode="232"
android:versionName="2.3.2" >
<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="30" />
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
</manifest>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.clj.fastble"
android:versionCode="232"
android:versionName="2.3.2" >
<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="22" />
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
</manifest>
\ No newline at end of file
R_DEF: Internal format may change without notice
local
R_DEF: Internal format may change without notice
local
1<?xml version="1.0" encoding="utf-8"?>
2<manifest xmlns:android="http://schemas.android.com/apk/res/android"
3 package="com.clj.fastble"
4 android:versionCode="232"
5 android:versionName="2.3.2" >
6
7 <uses-sdk
8 android:minSdkVersion="14"
8-->D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml
9 android:targetSdkVersion="30" />
9-->D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml
10
11 <uses-permission android:name="android.permission.BLUETOOTH" />
11-->D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml:4:5-68
11-->D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml:4:22-65
12 <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
12-->D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml:5:5-74
12-->D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml:5:22-71
13 <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
13-->D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml:6:5-81
13-->D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml:6:22-78
14 <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
14-->D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml:7:5-79
14-->D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml:7:22-76
15
16</manifest>
1<?xml version="1.0" encoding="utf-8"?>
2<manifest xmlns:android="http://schemas.android.com/apk/res/android"
3 package="com.clj.fastble"
4 android:versionCode="232"
5 android:versionName="2.3.2" >
6
7 <uses-sdk
8 android:minSdkVersion="14"
8-->/Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml
9 android:targetSdkVersion="22" />
9-->/Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml
10
11 <uses-permission android:name="android.permission.BLUETOOTH" />
11-->/Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml:4:5-68
11-->/Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml:4:22-65
12 <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
12-->/Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml:5:5-74
12-->/Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml:5:22-71
13 <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
13-->/Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml:6:5-81
13-->/Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml:6:22-78
14 <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
14-->/Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml:7:5-79
14-->/Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml:7:22-76
15
16</manifest>
{
"version": 1,
"applicationId": "com.clj.fastble",
"variantType": "LIBRARY",
"elements": [
{
"outputType": {
"type": "MERGED_MANIFESTS"
},
"apkData": {
"type": "MAIN",
"splits": [],
"versionCode": 232,
"versionName": "2.3.2",
"outputFile": "FastBleLib-debug.aar",
"fullName": "debug",
"baseName": "debug",
"dirName": ""
},
"path": "../../library_manifest/debug/AndroidManifest.xml",
"properties": {
"packageId": "com.clj.fastble",
"split": ""
}
}
]
}
\ No newline at end of file
[{"outputType":{"type":"MERGED_MANIFESTS"},"apkData":{"type":"MAIN","splits":[],"versionCode":232,"versionName":"2.3.2","enabled":true,"outputFile":"FastBleLib-release.aar","fullName":"release","baseName":"release","dirName":""},"path":"../../library_manifest/release/AndroidManifest.xml","properties":{"packageId":"com.clj.fastble","split":""}}]
\ No newline at end of file
-- Merging decision tree log ---
manifest
ADDED from D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml:1:1-9:12
INJECTED from D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml:1:1-9:12
INJECTED from D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml:1:1-9:12
INJECTED from D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml:1:1-9:12
INJECTED from D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml:1:1-9:12
INJECTED from D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml:1:1-9:12
INJECTED from D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml:1:1-9:12
package
ADDED from D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml:2:5-30
INJECTED from D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml
INJECTED from D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml
android:versionName
INJECTED from D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml
ADDED from D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml:1:1-9:12
INJECTED from D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml
android:versionCode
INJECTED from D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml
ADDED from D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml:1:1-9:12
INJECTED from D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml
xmlns:android
ADDED from D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml:1:11-69
uses-permission#android.permission.BLUETOOTH
ADDED from D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml:4:5-68
android:name
ADDED from D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml:4:22-65
uses-permission#android.permission.BLUETOOTH_ADMIN
ADDED from D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml:5:5-74
android:name
ADDED from D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml:5:22-71
uses-permission#android.permission.ACCESS_COARSE_LOCATION
ADDED from D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml:6:5-81
android:name
ADDED from D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml:6:22-78
uses-permission#android.permission.ACCESS_FINE_LOCATION
ADDED from D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml:7:5-79
android:name
ADDED from D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml:7:22-76
uses-sdk
INJECTED from D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml reason: use-sdk injection requested
INJECTED from D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml
INJECTED from D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml
INJECTED from D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml
INJECTED from D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml
android:targetSdkVersion
INJECTED from D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml
ADDED from D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml
INJECTED from D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml
android:minSdkVersion
INJECTED from D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml
ADDED from D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml
INJECTED from D:\androidProject\BluToysApplication\FastBleLib\src\main\AndroidManifest.xml
-- Merging decision tree log ---
manifest
ADDED from /Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml:1:1-9:12
INJECTED from /Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml:1:1-9:12
INJECTED from /Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml:1:1-9:12
INJECTED from /Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml:1:1-9:12
INJECTED from /Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml:1:1-9:12
INJECTED from /Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml:1:1-9:12
INJECTED from /Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml:1:1-9:12
package
ADDED from /Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml:2:5-30
INJECTED from /Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml
INJECTED from /Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml
android:versionName
INJECTED from /Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml
ADDED from /Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml:1:1-9:12
INJECTED from /Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml
android:versionCode
INJECTED from /Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml
ADDED from /Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml:1:1-9:12
INJECTED from /Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml
xmlns:android
ADDED from /Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml:1:11-69
uses-permission#android.permission.BLUETOOTH
ADDED from /Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml:4:5-68
android:name
ADDED from /Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml:4:22-65
uses-permission#android.permission.BLUETOOTH_ADMIN
ADDED from /Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml:5:5-74
android:name
ADDED from /Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml:5:22-71
uses-permission#android.permission.ACCESS_COARSE_LOCATION
ADDED from /Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml:6:5-81
android:name
ADDED from /Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml:6:22-78
uses-permission#android.permission.ACCESS_FINE_LOCATION
ADDED from /Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml:7:5-79
android:name
ADDED from /Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml:7:22-76
uses-sdk
INJECTED from /Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml reason: use-sdk injection requested
INJECTED from /Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml
INJECTED from /Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml
INJECTED from /Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml
INJECTED from /Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml
android:targetSdkVersion
INJECTED from /Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml
ADDED from /Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml
INJECTED from /Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml
android:minSdkVersion
INJECTED from /Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml
ADDED from /Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml
INJECTED from /Users/liuxiaojie/Documents/work/android/bluetooth-voice/FastBleLib/src/main/AndroidManifest.xml
# Add project specific ProGuard rules here.
# By default, the flags in this file are appended to flags specified
# in D:\development\AppData\sdk/tools/proguard/proguard-android.txt
# 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:
# If your project uses WebView with JS, uncomment the following
# and specify the fully qualified class name to the JavaScript interface
# class:
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
# public *;
#}
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.clj.fastble">
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
</manifest>
package com.clj.fastble;
import android.annotation.TargetApi;
import android.app.Application;
import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothDevice;
import android.bluetooth.BluetoothGatt;
import android.bluetooth.BluetoothGattCharacteristic;
import android.bluetooth.BluetoothGattService;
import android.bluetooth.BluetoothManager;
import android.bluetooth.BluetoothProfile;
import android.bluetooth.le.ScanRecord;
import android.bluetooth.le.ScanResult;
import android.content.Context;
import android.content.pm.PackageManager;
import android.os.Build;
import android.os.Looper;
import android.util.Log;
import com.clj.fastble.bluetooth.BleBluetooth;
import com.clj.fastble.bluetooth.MultipleBluetoothController;
import com.clj.fastble.bluetooth.SplitWriter;
import com.clj.fastble.callback.BleGattCallback;
import com.clj.fastble.callback.BleIndicateCallback;
import com.clj.fastble.callback.BleMtuChangedCallback;
import com.clj.fastble.callback.BleNotifyCallback;
import com.clj.fastble.callback.BleReadCallback;
import com.clj.fastble.callback.BleRssiCallback;
import com.clj.fastble.callback.BleScanAndConnectCallback;
import com.clj.fastble.callback.BleScanCallback;
import com.clj.fastble.callback.BleWriteCallback;
import com.clj.fastble.data.BleDevice;
import com.clj.fastble.data.BleScanState;
import com.clj.fastble.exception.OtherException;
import com.clj.fastble.scan.BleScanRuleConfig;
import com.clj.fastble.scan.BleScanner;
import com.clj.fastble.utils.BleLog;
import java.util.List;
import java.util.UUID;
@TargetApi(Build.VERSION_CODES.JELLY_BEAN_MR2)
public class BleManager {
private Application context;
private BleScanRuleConfig bleScanRuleConfig;
private BluetoothAdapter bluetoothAdapter;
private MultipleBluetoothController multipleBluetoothController;
private BluetoothManager bluetoothManager;
public static final int DEFAULT_SCAN_TIME = 10000;
private static final int DEFAULT_MAX_MULTIPLE_DEVICE = 7;
private static final int DEFAULT_OPERATE_TIME = 5000;
private static final int DEFAULT_CONNECT_RETRY_COUNT = 0;
private static final int DEFAULT_CONNECT_RETRY_INTERVAL = 5000;
private static final int DEFAULT_MTU = 23;
private static final int DEFAULT_MAX_MTU = 512;
private static final int DEFAULT_WRITE_DATA_SPLIT_COUNT = 20;
private static final int DEFAULT_CONNECT_OVER_TIME = 10000;
private int maxConnectCount = DEFAULT_MAX_MULTIPLE_DEVICE;
private int operateTimeout = DEFAULT_OPERATE_TIME;
private int reConnectCount = DEFAULT_CONNECT_RETRY_COUNT;
private long reConnectInterval = DEFAULT_CONNECT_RETRY_INTERVAL;
private int splitWriteNum = DEFAULT_WRITE_DATA_SPLIT_COUNT;
private long connectOverTime = DEFAULT_CONNECT_OVER_TIME;
public static BleManager getInstance() {
return BleManagerHolder.sBleManager;
}
private static class BleManagerHolder {
private static final BleManager sBleManager = new BleManager();
}
public void init(Application app) {
if (context == null && app != null) {
context = app;
if (isSupportBle()) {
bluetoothManager = (BluetoothManager) context.getSystemService(Context.BLUETOOTH_SERVICE);
}
bluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
// bluetoothAdapter = bluetoothManager.getAdapter();
multipleBluetoothController = new MultipleBluetoothController();
bleScanRuleConfig = new BleScanRuleConfig();
}
}
/**
* Get the Context
*
* @return
*/
public Context getContext() {
return context;
}
/**
* Get the BluetoothManager
*
* @return
*/
public BluetoothManager getBluetoothManager() {
return bluetoothManager;
}
/**
* Get the BluetoothAdapter
*
* @return
*/
public BluetoothAdapter getBluetoothAdapter() {
return bluetoothAdapter;
}
/**
* get the ScanRuleConfig
*
* @return
*/
public BleScanRuleConfig getScanRuleConfig() {
return bleScanRuleConfig;
}
/**
* Get the multiple Bluetooth Controller
*
* @return
*/
public MultipleBluetoothController getMultipleBluetoothController() {
return multipleBluetoothController;
}
/**
* Configure scan and connection properties
*
* @param config
*/
public void initScanRule(BleScanRuleConfig config) {
this.bleScanRuleConfig = config;
}
/**
* Get the maximum number of connections
*
* @return
*/
public int getMaxConnectCount() {
return maxConnectCount;
}
/**
* Set the maximum number of connections
*
* @param count
* @return BleManager
*/
public BleManager setMaxConnectCount(int count) {
if (count > DEFAULT_MAX_MULTIPLE_DEVICE)
count = DEFAULT_MAX_MULTIPLE_DEVICE;
this.maxConnectCount = count;
return this;
}
/**
* Get operate timeout
*
* @return
*/
public int getOperateTimeout() {
return operateTimeout;
}
/**
* Set operate timeout
*
* @param count
* @return BleManager
*/
public BleManager setOperateTimeout(int count) {
this.operateTimeout = count;
return this;
}
/**
* Get connect retry count
*
* @return
*/
public int getReConnectCount() {
return reConnectCount;
}
/**
* Get connect retry interval
*
* @return
*/
public long getReConnectInterval() {
return reConnectInterval;
}
/**
* Set connect retry count and interval
*
* @param count
* @return BleManager
*/
public BleManager setReConnectCount(int count) {
return setReConnectCount(count, DEFAULT_CONNECT_RETRY_INTERVAL);
}
/**
* Set connect retry count and interval
*
* @param count
* @return BleManager
*/
public BleManager setReConnectCount(int count, long interval) {
if (count > 10)
count = 10;
if (interval < 0)
interval = 0;
this.reConnectCount = count;
this.reConnectInterval = interval;
return this;
}
/**
* Get operate split Write Num
*
* @return
*/
public int getSplitWriteNum() {
return splitWriteNum;
}
/**
* Set split Writ eNum
*
* @param num
* @return BleManager
*/
public BleManager setSplitWriteNum(int num) {
if (num > 0) {
this.splitWriteNum = num;
}
return this;
}
/**
* Get operate connect Over Time
*
* @return
*/
public long getConnectOverTime() {
return connectOverTime;
}
/**
* Set connect Over Time
*
* @param time
* @return BleManager
*/
public BleManager setConnectOverTime(long time) {
if (time <= 0) {
time = 100;
}
this.connectOverTime = time;
return this;
}
/**
* print log?
*
* @param enable
* @return BleManager
*/
public BleManager enableLog(boolean enable) {
BleLog.isPrint = enable;
return this;
}
/**
* scan device around
*
* @param callback
*/
public void scan(BleScanCallback callback) {
try {
if (callback == null) {
throw new IllegalArgumentException("BleScanCallback can not be Null!");
}
if (!isBlueEnable()) {
BleLog.e("Bluetooth not enable!");
callback.onScanStarted(false);
return;
}
UUID[] serviceUuids = bleScanRuleConfig.getServiceUuids();
String[] deviceNames = bleScanRuleConfig.getDeviceNames();
String deviceMac = bleScanRuleConfig.getDeviceMac();
boolean fuzzy = bleScanRuleConfig.isFuzzy();
long timeOut = bleScanRuleConfig.getScanTimeOut();
BleScanner.getInstance().scan(serviceUuids, deviceNames, deviceMac, fuzzy, timeOut, callback);
}catch (Exception e){
Log.i("mkk",e.getMessage());
}
}
/**
* scan device then connect
*
* @param callback
*/
public void scanAndConnect(BleScanAndConnectCallback callback) {
if (callback == null) {
throw new IllegalArgumentException("BleScanAndConnectCallback can not be Null!");
}
if (!isBlueEnable()) {
BleLog.e("Bluetooth not enable!");
callback.onScanStarted(false);
return;
}
UUID[] serviceUuids = bleScanRuleConfig.getServiceUuids();
String[] deviceNames = bleScanRuleConfig.getDeviceNames();
String deviceMac = bleScanRuleConfig.getDeviceMac();
boolean fuzzy = bleScanRuleConfig.isFuzzy();
long timeOut = bleScanRuleConfig.getScanTimeOut();
BleScanner.getInstance().scanAndConnect(serviceUuids, deviceNames, deviceMac, fuzzy, timeOut, callback);
}
/**
* connect a known device
*
* @param bleDevice
* @param bleGattCallback
* @return
*/
public BluetoothGatt connect(BleDevice bleDevice, BleGattCallback bleGattCallback) {
try {
if (bleGattCallback == null) {
throw new IllegalArgumentException("BleGattCallback can not be Null!");
}
if (!isBlueEnable()) {
BleLog.e("Bluetooth not enable!");
bleGattCallback.onConnectFail(bleDevice, new OtherException("Bluetooth not enable!"));
return null;
}
if (Looper.myLooper() == null || Looper.myLooper() != Looper.getMainLooper()) {
BleLog.w("Be careful: currentThread is not MainThread!");
}
if (bleDevice == null || bleDevice.getDevice() == null) {
bleGattCallback.onConnectFail(bleDevice, new OtherException("Not Found Device Exception Occurred!"));
} else {
BleBluetooth bleBluetooth = multipleBluetoothController.buildConnectingBle(bleDevice);
boolean autoConnect = bleScanRuleConfig.isAutoConnect();
return bleBluetooth.connect(bleDevice, autoConnect, bleGattCallback);
}
}catch (Exception e){
Log.i("mkk",e.getMessage());
}
return null;
}
/**
* connect a device through its mac without scan,whether or not it has been connected
*
* @param mac
* @param bleGattCallback
* @return
*/
public BluetoothGatt connect(String mac, BleGattCallback bleGattCallback) {
BluetoothDevice bluetoothDevice = getBluetoothAdapter().getRemoteDevice(mac);
BleDevice bleDevice = new BleDevice(bluetoothDevice, 0, null, 0);
return connect(bleDevice, bleGattCallback);
}
/**
* Cancel scan
*/
public void cancelScan() {
BleScanner.getInstance().stopLeScan();
}
/**
* notify
*
* @param bleDevice
* @param uuid_service
* @param uuid_notify
* @param callback
*/
public void notify(BleDevice bleDevice,
String uuid_service,
String uuid_notify,
BleNotifyCallback callback) {
notify(bleDevice, uuid_service, uuid_notify, false, callback);
}
/**
* notify
*
* @param bleDevice
* @param uuid_service
* @param uuid_notify
* @param useCharacteristicDescriptor
* @param callback
*/
public void notify(BleDevice bleDevice,
String uuid_service,
String uuid_notify,
boolean useCharacteristicDescriptor,
BleNotifyCallback callback) {
if (callback == null) {
throw new IllegalArgumentException("BleNotifyCallback can not be Null!");
}
BleBluetooth bleBluetooth = multipleBluetoothController.getBleBluetooth(bleDevice);
if (bleBluetooth == null) {
callback.onNotifyFailure(new OtherException("This device not connect!"));
} else {
bleBluetooth.newBleConnector()
.withUUIDString(uuid_service, uuid_notify)
.enableCharacteristicNotify(callback, uuid_notify, useCharacteristicDescriptor);
}
}
/**
* indicate
*
* @param bleDevice
* @param uuid_service
* @param uuid_indicate
* @param callback
*/
public void indicate(BleDevice bleDevice,
String uuid_service,
String uuid_indicate,
BleIndicateCallback callback) {
indicate(bleDevice, uuid_service, uuid_indicate, false, callback);
}
/**
* indicate
*
* @param bleDevice
* @param uuid_service
* @param uuid_indicate
* @param useCharacteristicDescriptor
* @param callback
*/
public void indicate(BleDevice bleDevice,
String uuid_service,
String uuid_indicate,
boolean useCharacteristicDescriptor,
BleIndicateCallback callback) {
if (callback == null) {
throw new IllegalArgumentException("BleIndicateCallback can not be Null!");
}
BleBluetooth bleBluetooth = multipleBluetoothController.getBleBluetooth(bleDevice);
if (bleBluetooth == null) {
callback.onIndicateFailure(new OtherException("This device not connect!"));
} else {
bleBluetooth.newBleConnector()
.withUUIDString(uuid_service, uuid_indicate)
.enableCharacteristicIndicate(callback, uuid_indicate, useCharacteristicDescriptor);
}
}
/**
* stop notify, remove callback
*
* @param bleDevice
* @param uuid_service
* @param uuid_notify
* @return
*/
public boolean stopNotify(BleDevice bleDevice,
String uuid_service,
String uuid_notify) {
return stopNotify(bleDevice, uuid_service, uuid_notify, false);
}
/**
* stop notify, remove callback
*
* @param bleDevice
* @param uuid_service
* @param uuid_notify
* @param useCharacteristicDescriptor
* @return
*/
public boolean stopNotify(BleDevice bleDevice,
String uuid_service,
String uuid_notify,
boolean useCharacteristicDescriptor) {
BleBluetooth bleBluetooth = multipleBluetoothController.getBleBluetooth(bleDevice);
if (bleBluetooth == null) {
return false;
}
boolean success = bleBluetooth.newBleConnector()
.withUUIDString(uuid_service, uuid_notify)
.disableCharacteristicNotify(useCharacteristicDescriptor);
if (success) {
bleBluetooth.removeNotifyCallback(uuid_notify);
}
return success;
}
/**
* stop indicate, remove callback
*
* @param bleDevice
* @param uuid_service
* @param uuid_indicate
* @return
*/
public boolean stopIndicate(BleDevice bleDevice,
String uuid_service,
String uuid_indicate) {
return stopIndicate(bleDevice, uuid_service, uuid_indicate, false);
}
/**
* stop indicate, remove callback
*
* @param bleDevice
* @param uuid_service
* @param uuid_indicate
* @param useCharacteristicDescriptor
* @return
*/
public boolean stopIndicate(BleDevice bleDevice,
String uuid_service,
String uuid_indicate,
boolean useCharacteristicDescriptor) {
BleBluetooth bleBluetooth = multipleBluetoothController.getBleBluetooth(bleDevice);
if (bleBluetooth == null) {
return false;
}
boolean success = bleBluetooth.newBleConnector()
.withUUIDString(uuid_service, uuid_indicate)
.disableCharacteristicIndicate(useCharacteristicDescriptor);
if (success) {
bleBluetooth.removeIndicateCallback(uuid_indicate);
}
return success;
}
/**
* write
*
* @param bleDevice
* @param uuid_service
* @param uuid_write
* @param data
* @param callback
*/
public void write(BleDevice bleDevice,
String uuid_service,
String uuid_write,
byte[] data,
BleWriteCallback callback) {
write(bleDevice, uuid_service, uuid_write, data, true, callback);
}
/**
* write
*
* @param bleDevice
* @param uuid_service
* @param uuid_write
* @param data
* @param split
* @param callback
*/
public void write(BleDevice bleDevice,
String uuid_service,
String uuid_write,
byte[] data,
boolean split,
BleWriteCallback callback) {
write(bleDevice, uuid_service, uuid_write, data, split, true, 0, callback);
}
/**
* write
*
* @param bleDevice
* @param uuid_service
* @param uuid_write
* @param data
* @param split
* @param sendNextWhenLastSuccess
* @param intervalBetweenTwoPackage
* @param callback
*/
public void write(BleDevice bleDevice,
String uuid_service,
String uuid_write,
byte[] data,
boolean split,
boolean sendNextWhenLastSuccess,
long intervalBetweenTwoPackage,
BleWriteCallback callback) {
if (callback == null) {
throw new IllegalArgumentException("BleWriteCallback can not be Null!");
}
if (data == null) {
BleLog.e("data is Null!");
callback.onWriteFailure(new OtherException("data is Null!"));
return;
}
if (data.length > 20 && !split) {
BleLog.w("Be careful: data's length beyond 20! Ensure MTU higher than 23, or use spilt write!");
}
BleBluetooth bleBluetooth = multipleBluetoothController.getBleBluetooth(bleDevice);
if (bleBluetooth == null) {
callback.onWriteFailure(new OtherException("This device not connect!"));
} else {
if (split && data.length > getSplitWriteNum()) {
new SplitWriter().splitWrite(bleBluetooth, uuid_service, uuid_write, data,
sendNextWhenLastSuccess, intervalBetweenTwoPackage, callback);
} else {
bleBluetooth.newBleConnector()
.withUUIDString(uuid_service, uuid_write)
.writeCharacteristic(data, callback, uuid_write);
}
}
}
/**
* read
*
* @param bleDevice
* @param uuid_service
* @param uuid_read
* @param callback
*/
public void read(BleDevice bleDevice,
String uuid_service,
String uuid_read,
BleReadCallback callback) {
if (callback == null) {
throw new IllegalArgumentException("BleReadCallback can not be Null!");
}
BleBluetooth bleBluetooth = multipleBluetoothController.getBleBluetooth(bleDevice);
if (bleBluetooth == null) {
callback.onReadFailure(new OtherException("This device is not connected!"));
} else {
bleBluetooth.newBleConnector()
.withUUIDString(uuid_service, uuid_read)
.readCharacteristic(callback, uuid_read);
}
}
/**
* read Rssi
*
* @param bleDevice
* @param callback
*/
public void readRssi(BleDevice bleDevice,
BleRssiCallback callback) {
if (callback == null) {
throw new IllegalArgumentException("BleRssiCallback can not be Null!");
}
BleBluetooth bleBluetooth = multipleBluetoothController.getBleBluetooth(bleDevice);
if (bleBluetooth == null) {
callback.onRssiFailure(new OtherException("This device is not connected!"));
} else {
bleBluetooth.newBleConnector().readRemoteRssi(callback);
}
}
/**
* set Mtu
*
* @param bleDevice
* @param mtu
* @param callback
*/
public void setMtu(BleDevice bleDevice,
int mtu,
BleMtuChangedCallback callback) {
if (callback == null) {
throw new IllegalArgumentException("BleMtuChangedCallback can not be Null!");
}
if (mtu > DEFAULT_MAX_MTU) {
BleLog.e("requiredMtu should lower than 512 !");
callback.onSetMTUFailure(new OtherException("requiredMtu should lower than 512 !"));
return;
}
if (mtu < DEFAULT_MTU) {
BleLog.e("requiredMtu should higher than 23 !");
callback.onSetMTUFailure(new OtherException("requiredMtu should higher than 23 !"));
return;
}
BleBluetooth bleBluetooth = multipleBluetoothController.getBleBluetooth(bleDevice);
if (bleBluetooth == null) {
callback.onSetMTUFailure(new OtherException("This device is not connected!"));
} else {
bleBluetooth.newBleConnector().setMtu(mtu, callback);
}
}
/**
* requestConnectionPriority
*
* @param connectionPriority Request a specific connection priority. Must be one of
* {@link BluetoothGatt#CONNECTION_PRIORITY_BALANCED},
* {@link BluetoothGatt#CONNECTION_PRIORITY_HIGH}
* or {@link BluetoothGatt#CONNECTION_PRIORITY_LOW_POWER}.
* @throws IllegalArgumentException If the parameters are outside of their
* specified range.
*/
public boolean requestConnectionPriority(BleDevice bleDevice, int connectionPriority) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
BleBluetooth bleBluetooth = multipleBluetoothController.getBleBluetooth(bleDevice);
if (bleBluetooth == null) {
return false;
} else {
return bleBluetooth.newBleConnector().requestConnectionPriority(connectionPriority);
}
}
return false;
}
/**
* is support ble?
*
* @return
*/
public boolean isSupportBle() {
return Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR2
&& context.getApplicationContext().getPackageManager().hasSystemFeature(PackageManager.FEATURE_BLUETOOTH_LE);
}
/**
* Open bluetooth
*/
public void enableBluetooth() {
if (bluetoothAdapter != null) {
bluetoothAdapter.enable();
}
}
/**
* Disable bluetooth
*/
public void disableBluetooth() {
if (bluetoothAdapter != null) {
if (bluetoothAdapter.isEnabled())
bluetoothAdapter.disable();
}
}
/**
* judge Bluetooth is enable
*
* @return
*/
public boolean isBlueEnable() {
return bluetoothAdapter != null && bluetoothAdapter.isEnabled();
}
public BleDevice convertBleDevice(BluetoothDevice bluetoothDevice) {
return new BleDevice(bluetoothDevice);
}
@TargetApi(Build.VERSION_CODES.LOLLIPOP)
public BleDevice convertBleDevice(ScanResult scanResult) {
if (scanResult == null) {
throw new IllegalArgumentException("scanResult can not be Null!");
}
BluetoothDevice bluetoothDevice = scanResult.getDevice();
int rssi = scanResult.getRssi();
ScanRecord scanRecord = scanResult.getScanRecord();
byte[] bytes = null;
if (scanRecord != null)
bytes = scanRecord.getBytes();
long timestampNanos = scanResult.getTimestampNanos();
return new BleDevice(bluetoothDevice, rssi, bytes, timestampNanos);
}
public BleBluetooth getBleBluetooth(BleDevice bleDevice) {
if (multipleBluetoothController != null) {
return multipleBluetoothController.getBleBluetooth(bleDevice);
}
return null;
}
public BluetoothGatt getBluetoothGatt(BleDevice bleDevice) {
BleBluetooth bleBluetooth = getBleBluetooth(bleDevice);
if (bleBluetooth != null)
return bleBluetooth.getBluetoothGatt();
return null;
}
public List<BluetoothGattService> getBluetoothGattServices(BleDevice bleDevice) {
BluetoothGatt gatt = getBluetoothGatt(bleDevice);
if (gatt != null) {
return gatt.getServices();
}
return null;
}
public List<BluetoothGattCharacteristic> getBluetoothGattCharacteristics(BluetoothGattService service) {
return service.getCharacteristics();
}
public void removeConnectGattCallback(BleDevice bleDevice) {
BleBluetooth bleBluetooth = getBleBluetooth(bleDevice);
if (bleBluetooth != null)
bleBluetooth.removeConnectGattCallback();
}
public void removeRssiCallback(BleDevice bleDevice) {
BleBluetooth bleBluetooth = getBleBluetooth(bleDevice);
if (bleBluetooth != null)
bleBluetooth.removeRssiCallback();
}
public void removeMtuChangedCallback(BleDevice bleDevice) {
BleBluetooth bleBluetooth = getBleBluetooth(bleDevice);
if (bleBluetooth != null)
bleBluetooth.removeMtuChangedCallback();
}
public void removeNotifyCallback(BleDevice bleDevice, String uuid_notify) {
BleBluetooth bleBluetooth = getBleBluetooth(bleDevice);
if (bleBluetooth != null)
bleBluetooth.removeNotifyCallback(uuid_notify);
}
public void removeIndicateCallback(BleDevice bleDevice, String uuid_indicate) {
BleBluetooth bleBluetooth = getBleBluetooth(bleDevice);
if (bleBluetooth != null)
bleBluetooth.removeIndicateCallback(uuid_indicate);
}
public void removeWriteCallback(BleDevice bleDevice, String uuid_write) {
BleBluetooth bleBluetooth = getBleBluetooth(bleDevice);
if (bleBluetooth != null)
bleBluetooth.removeWriteCallback(uuid_write);
}
public void removeReadCallback(BleDevice bleDevice, String uuid_read) {
BleBluetooth bleBluetooth = getBleBluetooth(bleDevice);
if (bleBluetooth != null)
bleBluetooth.removeReadCallback(uuid_read);
}
public void clearCharacterCallback(BleDevice bleDevice) {
BleBluetooth bleBluetooth = getBleBluetooth(bleDevice);
if (bleBluetooth != null)
bleBluetooth.clearCharacterCallback();
}
public BleScanState getScanSate() {
return BleScanner.getInstance().getScanState();
}
public List<BleDevice> getAllConnectedDevice() {
if (multipleBluetoothController == null)
return null;
return multipleBluetoothController.getDeviceList();
}
/**
* @param bleDevice
* @return State of the profile connection. One of
* {@link BluetoothProfile#STATE_CONNECTED},
* {@link BluetoothProfile#STATE_CONNECTING},
* {@link BluetoothProfile#STATE_DISCONNECTED},
* {@link BluetoothProfile#STATE_DISCONNECTING}
*/
public int getConnectState(BleDevice bleDevice) {
if (bleDevice != null) {
return bluetoothManager.getConnectionState(bleDevice.getDevice(), BluetoothProfile.GATT);
} else {
return BluetoothProfile.STATE_DISCONNECTED;
}
}
public boolean isConnected(BleDevice bleDevice) {
return getConnectState(bleDevice) == BluetoothProfile.STATE_CONNECTED;
}
public boolean isConnected(String mac) {
List<BleDevice> list = getAllConnectedDevice();
for (BleDevice bleDevice : list) {
if (bleDevice != null) {
if (bleDevice.getMac().equals(mac)) {
return true;
}
}
}
return false;
}
public void disconnect(BleDevice bleDevice) {
if (multipleBluetoothController != null) {
multipleBluetoothController.disconnect(bleDevice);
}
}
public void disconnectAllDevice() {
if (multipleBluetoothController != null) {
multipleBluetoothController.disconnectAllDevice();
}
}
public void destroy() {
if (multipleBluetoothController != null) {
multipleBluetoothController.destroy();
}
}
}
package com.clj.fastble.bluetooth;
import android.annotation.TargetApi;
import android.bluetooth.BluetoothGatt;
import android.bluetooth.BluetoothGattCallback;
import android.bluetooth.BluetoothGattCharacteristic;
import android.bluetooth.BluetoothGattDescriptor;
import android.bluetooth.BluetoothProfile;
import android.os.Build;
import android.os.Bundle;
import android.os.Handler;
import android.os.Looper;
import android.os.Message;
import android.util.Log;
import com.clj.fastble.BleManager;
import com.clj.fastble.callback.BleGattCallback;
import com.clj.fastble.callback.BleIndicateCallback;
import com.clj.fastble.callback.BleMtuChangedCallback;
import com.clj.fastble.callback.BleNotifyCallback;
import com.clj.fastble.callback.BleReadCallback;
import com.clj.fastble.callback.BleRssiCallback;
import com.clj.fastble.callback.BleWriteCallback;
import com.clj.fastble.data.BleConnectStateParameter;
import com.clj.fastble.data.BleDevice;
import com.clj.fastble.data.BleMsg;
import com.clj.fastble.exception.ConnectException;
import com.clj.fastble.exception.OtherException;
import com.clj.fastble.exception.TimeoutException;
import com.clj.fastble.utils.BleLog;
import java.lang.reflect.Method;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import static android.bluetooth.BluetoothDevice.TRANSPORT_LE;
@TargetApi(Build.VERSION_CODES.JELLY_BEAN_MR2)
public class BleBluetooth {
private BleGattCallback bleGattCallback;
private BleRssiCallback bleRssiCallback;
private BleMtuChangedCallback bleMtuChangedCallback;
private HashMap<String, BleNotifyCallback> bleNotifyCallbackHashMap = new HashMap<>();
private HashMap<String, BleIndicateCallback> bleIndicateCallbackHashMap = new HashMap<>();
private HashMap<String, BleWriteCallback> bleWriteCallbackHashMap = new HashMap<>();
private HashMap<String, BleReadCallback> bleReadCallbackHashMap = new HashMap<>();
private LastState lastState;
private boolean isActiveDisconnect = false;
private BleDevice bleDevice;
private BluetoothGatt bluetoothGatt;
private MainHandler mainHandler = new MainHandler(Looper.getMainLooper());
private int connectRetryCount = 0;
public BleBluetooth(BleDevice bleDevice) {
this.bleDevice = bleDevice;
}
public BleConnector newBleConnector() {
return new BleConnector(this);
}
public synchronized void addConnectGattCallback(BleGattCallback callback) {
bleGattCallback = callback;
}
public synchronized void removeConnectGattCallback() {
bleGattCallback = null;
}
public synchronized void addNotifyCallback(String uuid, BleNotifyCallback bleNotifyCallback) {
bleNotifyCallbackHashMap.put(uuid, bleNotifyCallback);
}
public synchronized void addIndicateCallback(String uuid, BleIndicateCallback bleIndicateCallback) {
bleIndicateCallbackHashMap.put(uuid, bleIndicateCallback);
}
public synchronized void addWriteCallback(String uuid, BleWriteCallback bleWriteCallback) {
bleWriteCallbackHashMap.put(uuid, bleWriteCallback);
}
public synchronized void addReadCallback(String uuid, BleReadCallback bleReadCallback) {
bleReadCallbackHashMap.put(uuid, bleReadCallback);
}
public synchronized void removeNotifyCallback(String uuid) {
if (bleNotifyCallbackHashMap.containsKey(uuid))
bleNotifyCallbackHashMap.remove(uuid);
}
public synchronized void removeIndicateCallback(String uuid) {
if (bleIndicateCallbackHashMap.containsKey(uuid))
bleIndicateCallbackHashMap.remove(uuid);
}
public synchronized void removeWriteCallback(String uuid) {
if (bleWriteCallbackHashMap.containsKey(uuid))
bleWriteCallbackHashMap.remove(uuid);
}
public synchronized void removeReadCallback(String uuid) {
if (bleReadCallbackHashMap.containsKey(uuid))
bleReadCallbackHashMap.remove(uuid);
}
public synchronized void clearCharacterCallback() {
if (bleNotifyCallbackHashMap != null)
bleNotifyCallbackHashMap.clear();
if (bleIndicateCallbackHashMap != null)
bleIndicateCallbackHashMap.clear();
if (bleWriteCallbackHashMap != null)
bleWriteCallbackHashMap.clear();
if (bleReadCallbackHashMap != null)
bleReadCallbackHashMap.clear();
}
public synchronized void addRssiCallback(BleRssiCallback callback) {
bleRssiCallback = callback;
}
public synchronized void removeRssiCallback() {
bleRssiCallback = null;
}
public synchronized void addMtuChangedCallback(BleMtuChangedCallback callback) {
bleMtuChangedCallback = callback;
}
public synchronized void removeMtuChangedCallback() {
bleMtuChangedCallback = null;
}
public String getDeviceKey() {
return bleDevice.getKey();
}
public BleDevice getDevice() {
return bleDevice;
}
public BluetoothGatt getBluetoothGatt() {
return bluetoothGatt;
}
public synchronized BluetoothGatt connect(BleDevice bleDevice,
boolean autoConnect,
BleGattCallback callback) {
return connect(bleDevice, autoConnect, callback, 0);
}
public synchronized BluetoothGatt connect(BleDevice bleDevice,
boolean autoConnect,
BleGattCallback callback,
int connectRetryCount) {
BleLog.i("connect device: " + bleDevice.getName()
+ "\nmac: " + bleDevice.getMac()
+ "\nautoConnect: " + autoConnect
+ "\ncurrentThread: " + Thread.currentThread().getId()
+ "\nconnectCount:" + (connectRetryCount + 1));
if (connectRetryCount == 0) {
this.connectRetryCount = 0;
}
addConnectGattCallback(callback);
lastState = LastState.CONNECT_CONNECTING;
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
bluetoothGatt = bleDevice.getDevice().connectGatt(BleManager.getInstance().getContext(),
autoConnect, coreGattCallback, TRANSPORT_LE);
} else {
bluetoothGatt = bleDevice.getDevice().connectGatt(BleManager.getInstance().getContext(),
autoConnect, coreGattCallback);
}
if (bluetoothGatt != null) {
if (bleGattCallback != null) {
bleGattCallback.onStartConnect();
}
Message message = mainHandler.obtainMessage();
message.what = BleMsg.MSG_CONNECT_OVER_TIME;
mainHandler.sendMessageDelayed(message, BleManager.getInstance().getConnectOverTime());
} else {
disconnectGatt();
refreshDeviceCache();
closeBluetoothGatt();
lastState = LastState.CONNECT_FAILURE;
BleManager.getInstance().getMultipleBluetoothController().removeConnectingBle(BleBluetooth.this);
if (bleGattCallback != null)
bleGattCallback.onConnectFail(bleDevice, new OtherException("GATT connect exception occurred!"));
}
return bluetoothGatt;
}
public synchronized void disconnect() {
isActiveDisconnect = true;
disconnectGatt();
}
public synchronized void destroy() {
lastState = LastState.CONNECT_IDLE;
disconnectGatt();
refreshDeviceCache();
closeBluetoothGatt();
removeConnectGattCallback();
removeRssiCallback();
removeMtuChangedCallback();
clearCharacterCallback();
mainHandler.removeCallbacksAndMessages(null);
}
private synchronized void disconnectGatt() {
if (bluetoothGatt != null) {
bluetoothGatt.disconnect();
}
}
private synchronized void refreshDeviceCache() {
try {
final Method refresh = BluetoothGatt.class.getMethod("refresh");
if (refresh != null && bluetoothGatt != null) {
boolean success = (Boolean) refresh.invoke(bluetoothGatt);
BleLog.i("refreshDeviceCache, is success: " + success);
}
} catch (Exception e) {
BleLog.i("exception occur while refreshing device: " + e.getMessage());
e.printStackTrace();
}
}
private synchronized void closeBluetoothGatt() {
if (bluetoothGatt != null) {
bluetoothGatt.close();
}
}
private final class MainHandler extends Handler {
MainHandler(Looper looper) {
super(looper);
}
@Override
public void handleMessage(Message msg) {
switch (msg.what) {
case BleMsg.MSG_CONNECT_FAIL: {
try {
disconnectGatt();
refreshDeviceCache();
closeBluetoothGatt();
if (connectRetryCount < BleManager.getInstance().getReConnectCount()) {
BleLog.e("Connect fail, try reconnect " + BleManager.getInstance().getReConnectInterval() + " millisecond later");
++connectRetryCount;
Message message = mainHandler.obtainMessage();
message.what = BleMsg.MSG_RECONNECT;
mainHandler.sendMessageDelayed(message, BleManager.getInstance().getReConnectInterval());
} else {
lastState = LastState.CONNECT_FAILURE;
BleManager.getInstance().getMultipleBluetoothController().removeConnectingBle(BleBluetooth.this);
BleConnectStateParameter para = (BleConnectStateParameter) msg.obj;
int status = para.getStatus();
if (bleGattCallback != null)
bleGattCallback.onConnectFail(bleDevice, new ConnectException(bluetoothGatt, status));
}
}catch (Exception e){
Log.i("mkk",e.getMessage());
}
}
break;
case BleMsg.MSG_DISCONNECTED: {
try {
lastState = LastState.CONNECT_DISCONNECT;
BleManager.getInstance().getMultipleBluetoothController().removeBleBluetooth(BleBluetooth.this);
disconnect();
refreshDeviceCache();
closeBluetoothGatt();
removeRssiCallback();
removeMtuChangedCallback();
clearCharacterCallback();
mainHandler.removeCallbacksAndMessages(null);
BleConnectStateParameter para = (BleConnectStateParameter) msg.obj;
boolean isActive = para.isActive();
int status = para.getStatus();
if (bleGattCallback != null)
bleGattCallback.onDisConnected(isActive, bleDevice, bluetoothGatt, status);
}catch (Exception e){
Log.i("mkk",e.getMessage());
}
}
break;
case BleMsg.MSG_RECONNECT: {
connect(bleDevice, false, bleGattCallback, connectRetryCount);
}
break;
case BleMsg.MSG_CONNECT_OVER_TIME: {
disconnectGatt();
refreshDeviceCache();
closeBluetoothGatt();
lastState = LastState.CONNECT_FAILURE;
BleManager.getInstance().getMultipleBluetoothController().removeConnectingBle(BleBluetooth.this);
if (bleGattCallback != null)
bleGattCallback.onConnectFail(bleDevice, new TimeoutException());
}
break;
case BleMsg.MSG_DISCOVER_SERVICES: {
if (bluetoothGatt != null) {
boolean discoverServiceResult = bluetoothGatt.discoverServices();
if (!discoverServiceResult) {
Message message = mainHandler.obtainMessage();
message.what = BleMsg.MSG_DISCOVER_FAIL;
mainHandler.sendMessage(message);
}
} else {
Message message = mainHandler.obtainMessage();
message.what = BleMsg.MSG_DISCOVER_FAIL;
mainHandler.sendMessage(message);
}
}
break;
case BleMsg.MSG_DISCOVER_FAIL: {
try {
disconnectGatt();
refreshDeviceCache();
closeBluetoothGatt();
lastState = LastState.CONNECT_FAILURE;
BleManager.getInstance().getMultipleBluetoothController().removeConnectingBle(BleBluetooth.this);
if (bleGattCallback != null)
bleGattCallback.onConnectFail(bleDevice,
new OtherException("GATT discover services exception occurred!"));
}catch (Exception e){
Log.i("mkk",e.getMessage());
}
}
break;
case BleMsg.MSG_DISCOVER_SUCCESS: {
try {
lastState = LastState.CONNECT_CONNECTED;
isActiveDisconnect = false;
BleManager.getInstance().getMultipleBluetoothController().removeConnectingBle(BleBluetooth.this);
BleManager.getInstance().getMultipleBluetoothController().addBleBluetooth(BleBluetooth.this);
BleConnectStateParameter para = (BleConnectStateParameter) msg.obj;
int status = para.getStatus();
if (bleGattCallback != null)
bleGattCallback.onConnectSuccess(bleDevice, bluetoothGatt, status);
}catch (Exception e){
Log.i("mkk",e.getMessage());
}
}
break;
default:
super.handleMessage(msg);
break;
}
}
}
private BluetoothGattCallback coreGattCallback = new BluetoothGattCallback() {
@Override
public void onConnectionStateChange(BluetoothGatt gatt, int status, int newState) {
super.onConnectionStateChange(gatt, status, newState);
BleLog.i("BluetoothGattCallback:onConnectionStateChange "
+ '\n' + "status: " + status
+ '\n' + "newState: " + newState
+ '\n' + "currentThread: " + Thread.currentThread().getId());
bluetoothGatt = gatt;
mainHandler.removeMessages(BleMsg.MSG_CONNECT_OVER_TIME);
if (newState == BluetoothProfile.STATE_CONNECTED) {
Message message = mainHandler.obtainMessage();
message.what = BleMsg.MSG_DISCOVER_SERVICES;
mainHandler.sendMessageDelayed(message, 500);
} else if (newState == BluetoothProfile.STATE_DISCONNECTED) {
if (lastState == LastState.CONNECT_CONNECTING) {
Message message = mainHandler.obtainMessage();
message.what = BleMsg.MSG_CONNECT_FAIL;
message.obj = new BleConnectStateParameter(status);
mainHandler.sendMessage(message);
} else if (lastState == LastState.CONNECT_CONNECTED) {
Message message = mainHandler.obtainMessage();
message.what = BleMsg.MSG_DISCONNECTED;
BleConnectStateParameter para = new BleConnectStateParameter(status);
para.setActive(isActiveDisconnect);
message.obj = para;
mainHandler.sendMessage(message);
}
}
}
@Override
public void onServicesDiscovered(BluetoothGatt gatt, int status) {
super.onServicesDiscovered(gatt, status);
BleLog.i("BluetoothGattCallback:onServicesDiscovered "
+ '\n' + "status: " + status
+ '\n' + "currentThread: " + Thread.currentThread().getId());
bluetoothGatt = gatt;
if (status == BluetoothGatt.GATT_SUCCESS) {
Message message = mainHandler.obtainMessage();
message.what = BleMsg.MSG_DISCOVER_SUCCESS;
message.obj = new BleConnectStateParameter(status);
mainHandler.sendMessage(message);
} else {
Message message = mainHandler.obtainMessage();
message.what = BleMsg.MSG_DISCOVER_FAIL;
mainHandler.sendMessage(message);
}
}
@Override
public void onCharacteristicChanged(BluetoothGatt gatt, BluetoothGattCharacteristic characteristic) {
super.onCharacteristicChanged(gatt, characteristic);
Iterator iterator = bleNotifyCallbackHashMap.entrySet().iterator();
while (iterator.hasNext()) {
Map.Entry entry = (Map.Entry) iterator.next();
Object callback = entry.getValue();
if (callback instanceof BleNotifyCallback) {
BleNotifyCallback bleNotifyCallback = (BleNotifyCallback) callback;
if (characteristic.getUuid().toString().equalsIgnoreCase(bleNotifyCallback.getKey())) {
Handler handler = bleNotifyCallback.getHandler();
if (handler != null) {
Message message = handler.obtainMessage();
message.what = BleMsg.MSG_CHA_NOTIFY_DATA_CHANGE;
message.obj = bleNotifyCallback;
Bundle bundle = new Bundle();
bundle.putByteArray(BleMsg.KEY_NOTIFY_BUNDLE_VALUE, characteristic.getValue());
message.setData(bundle);
handler.sendMessage(message);
}
}
}
}
iterator = bleIndicateCallbackHashMap.entrySet().iterator();
while (iterator.hasNext()) {
Map.Entry entry = (Map.Entry) iterator.next();
Object callback = entry.getValue();
if (callback instanceof BleIndicateCallback) {
BleIndicateCallback bleIndicateCallback = (BleIndicateCallback) callback;
if (characteristic.getUuid().toString().equalsIgnoreCase(bleIndicateCallback.getKey())) {
Handler handler = bleIndicateCallback.getHandler();
if (handler != null) {
Message message = handler.obtainMessage();
message.what = BleMsg.MSG_CHA_INDICATE_DATA_CHANGE;
message.obj = bleIndicateCallback;
Bundle bundle = new Bundle();
bundle.putByteArray(BleMsg.KEY_INDICATE_BUNDLE_VALUE, characteristic.getValue());
message.setData(bundle);
handler.sendMessage(message);
}
}
}
}
}
@Override
public void onDescriptorWrite(BluetoothGatt gatt, BluetoothGattDescriptor descriptor, int status) {
super.onDescriptorWrite(gatt, descriptor, status);
Iterator iterator = bleNotifyCallbackHashMap.entrySet().iterator();
while (iterator.hasNext()) {
Map.Entry entry = (Map.Entry) iterator.next();
Object callback = entry.getValue();
if (callback instanceof BleNotifyCallback) {
BleNotifyCallback bleNotifyCallback = (BleNotifyCallback) callback;
if (descriptor.getCharacteristic().getUuid().toString().equalsIgnoreCase(bleNotifyCallback.getKey())) {
Handler handler = bleNotifyCallback.getHandler();
if (handler != null) {
Message message = handler.obtainMessage();
message.what = BleMsg.MSG_CHA_NOTIFY_RESULT;
message.obj = bleNotifyCallback;
Bundle bundle = new Bundle();
bundle.putInt(BleMsg.KEY_NOTIFY_BUNDLE_STATUS, status);
message.setData(bundle);
handler.sendMessage(message);
}
}
}
}
iterator = bleIndicateCallbackHashMap.entrySet().iterator();
while (iterator.hasNext()) {
Map.Entry entry = (Map.Entry) iterator.next();
Object callback = entry.getValue();
if (callback instanceof BleIndicateCallback) {
BleIndicateCallback bleIndicateCallback = (BleIndicateCallback) callback;
if (descriptor.getCharacteristic().getUuid().toString().equalsIgnoreCase(bleIndicateCallback.getKey())) {
Handler handler = bleIndicateCallback.getHandler();
if (handler != null) {
Message message = handler.obtainMessage();
message.what = BleMsg.MSG_CHA_INDICATE_RESULT;
message.obj = bleIndicateCallback;
Bundle bundle = new Bundle();
bundle.putInt(BleMsg.KEY_INDICATE_BUNDLE_STATUS, status);
message.setData(bundle);
handler.sendMessage(message);
}
}
}
}
}
@Override
public void onCharacteristicWrite(BluetoothGatt gatt, BluetoothGattCharacteristic characteristic, int status) {
super.onCharacteristicWrite(gatt, characteristic, status);
Iterator iterator = bleWriteCallbackHashMap.entrySet().iterator();
while (iterator.hasNext()) {
Map.Entry entry = (Map.Entry) iterator.next();
Object callback = entry.getValue();
if (callback instanceof BleWriteCallback) {
BleWriteCallback bleWriteCallback = (BleWriteCallback) callback;
if (characteristic.getUuid().toString().equalsIgnoreCase(bleWriteCallback.getKey())) {
Handler handler = bleWriteCallback.getHandler();
if (handler != null) {
Message message = handler.obtainMessage();
message.what = BleMsg.MSG_CHA_WRITE_RESULT;
message.obj = bleWriteCallback;
Bundle bundle = new Bundle();
bundle.putInt(BleMsg.KEY_WRITE_BUNDLE_STATUS, status);
bundle.putByteArray(BleMsg.KEY_WRITE_BUNDLE_VALUE, characteristic.getValue());
message.setData(bundle);
handler.sendMessage(message);
}
}
}
}
}
@Override
public void onCharacteristicRead(BluetoothGatt gatt, BluetoothGattCharacteristic characteristic, int status) {
super.onCharacteristicRead(gatt, characteristic, status);
Iterator iterator = bleReadCallbackHashMap.entrySet().iterator();
while (iterator.hasNext()) {
Map.Entry entry = (Map.Entry) iterator.next();
Object callback = entry.getValue();
if (callback instanceof BleReadCallback) {
BleReadCallback bleReadCallback = (BleReadCallback) callback;
if (characteristic.getUuid().toString().equalsIgnoreCase(bleReadCallback.getKey())) {
Handler handler = bleReadCallback.getHandler();
if (handler != null) {
Message message = handler.obtainMessage();
message.what = BleMsg.MSG_CHA_READ_RESULT;
message.obj = bleReadCallback;
Bundle bundle = new Bundle();
bundle.putInt(BleMsg.KEY_READ_BUNDLE_STATUS, status);
bundle.putByteArray(BleMsg.KEY_READ_BUNDLE_VALUE, characteristic.getValue());
message.setData(bundle);
handler.sendMessage(message);
}
}
}
}
}
@Override
public void onReadRemoteRssi(BluetoothGatt gatt, int rssi, int status) {
super.onReadRemoteRssi(gatt, rssi, status);
if (bleRssiCallback != null) {
Handler handler = bleRssiCallback.getHandler();
if (handler != null) {
Message message = handler.obtainMessage();
message.what = BleMsg.MSG_READ_RSSI_RESULT;
message.obj = bleRssiCallback;
Bundle bundle = new Bundle();
bundle.putInt(BleMsg.KEY_READ_RSSI_BUNDLE_STATUS, status);
bundle.putInt(BleMsg.KEY_READ_RSSI_BUNDLE_VALUE, rssi);
message.setData(bundle);
handler.sendMessage(message);
}
}
}
@Override
public void onMtuChanged(BluetoothGatt gatt, int mtu, int status) {
super.onMtuChanged(gatt, mtu, status);
if (bleMtuChangedCallback != null) {
Handler handler = bleMtuChangedCallback.getHandler();
if (handler != null) {
Message message = handler.obtainMessage();
message.what = BleMsg.MSG_SET_MTU_RESULT;
message.obj = bleMtuChangedCallback;
Bundle bundle = new Bundle();
bundle.putInt(BleMsg.KEY_SET_MTU_BUNDLE_STATUS, status);
bundle.putInt(BleMsg.KEY_SET_MTU_BUNDLE_VALUE, mtu);
message.setData(bundle);
handler.sendMessage(message);
}
}
}
};
enum LastState {
CONNECT_IDLE,
CONNECT_CONNECTING,
CONNECT_CONNECTED,
CONNECT_FAILURE,
CONNECT_DISCONNECT
}
}
package com.clj.fastble.bluetooth;
import android.annotation.TargetApi;
import android.bluetooth.BluetoothGatt;
import android.bluetooth.BluetoothGattCharacteristic;
import android.bluetooth.BluetoothGattDescriptor;
import android.bluetooth.BluetoothGattService;
import android.os.Build;
import android.os.Bundle;
import android.os.Handler;
import android.os.Looper;
import android.os.Message;
import com.clj.fastble.BleManager;
import com.clj.fastble.callback.BleIndicateCallback;
import com.clj.fastble.callback.BleMtuChangedCallback;
import com.clj.fastble.callback.BleNotifyCallback;
import com.clj.fastble.callback.BleReadCallback;
import com.clj.fastble.callback.BleRssiCallback;
import com.clj.fastble.callback.BleWriteCallback;
import com.clj.fastble.data.BleMsg;
import com.clj.fastble.data.BleWriteState;
import com.clj.fastble.exception.GattException;
import com.clj.fastble.exception.OtherException;
import com.clj.fastble.exception.TimeoutException;
import java.util.UUID;
@TargetApi(Build.VERSION_CODES.JELLY_BEAN_MR2)
public class BleConnector {
private static final String UUID_CLIENT_CHARACTERISTIC_CONFIG_DESCRIPTOR = "00002902-0000-1000-8000-00805f9b34fb";
private BluetoothGatt mBluetoothGatt;
private BluetoothGattService mGattService;
private BluetoothGattCharacteristic mCharacteristic;
private BleBluetooth mBleBluetooth;
private Handler mHandler;
BleConnector(BleBluetooth bleBluetooth) {
this.mBleBluetooth = bleBluetooth;
this.mBluetoothGatt = bleBluetooth.getBluetoothGatt();
this.mHandler = new Handler(Looper.getMainLooper()) {
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
switch (msg.what) {
case BleMsg.MSG_CHA_NOTIFY_START: {
BleNotifyCallback notifyCallback = (BleNotifyCallback) msg.obj;
if (notifyCallback != null)
notifyCallback.onNotifyFailure(new TimeoutException());
break;
}
case BleMsg.MSG_CHA_NOTIFY_RESULT: {
notifyMsgInit();
BleNotifyCallback notifyCallback = (BleNotifyCallback) msg.obj;
Bundle bundle = msg.getData();
int status = bundle.getInt(BleMsg.KEY_NOTIFY_BUNDLE_STATUS);
if (notifyCallback != null) {
if (status == BluetoothGatt.GATT_SUCCESS) {
notifyCallback.onNotifySuccess();
} else {
notifyCallback.onNotifyFailure(new GattException(status));
}
}
break;
}
case BleMsg.MSG_CHA_NOTIFY_DATA_CHANGE: {
BleNotifyCallback notifyCallback = (BleNotifyCallback) msg.obj;
Bundle bundle = msg.getData();
byte[] value = bundle.getByteArray(BleMsg.KEY_NOTIFY_BUNDLE_VALUE);
if (notifyCallback != null) {
notifyCallback.onCharacteristicChanged(value);
}
break;
}
case BleMsg.MSG_CHA_INDICATE_START: {
BleIndicateCallback indicateCallback = (BleIndicateCallback) msg.obj;
if (indicateCallback != null)
indicateCallback.onIndicateFailure(new TimeoutException());
break;
}
case BleMsg.MSG_CHA_INDICATE_RESULT: {
indicateMsgInit();
BleIndicateCallback indicateCallback = (BleIndicateCallback) msg.obj;
Bundle bundle = msg.getData();
int status = bundle.getInt(BleMsg.KEY_INDICATE_BUNDLE_STATUS);
if (indicateCallback != null) {
if (status == BluetoothGatt.GATT_SUCCESS) {
indicateCallback.onIndicateSuccess();
} else {
indicateCallback.onIndicateFailure(new GattException(status));
}
}
break;
}
case BleMsg.MSG_CHA_INDICATE_DATA_CHANGE: {
BleIndicateCallback indicateCallback = (BleIndicateCallback) msg.obj;
Bundle bundle = msg.getData();
byte[] value = bundle.getByteArray(BleMsg.KEY_INDICATE_BUNDLE_VALUE);
if (indicateCallback != null) {
indicateCallback.onCharacteristicChanged(value);
}
break;
}
case BleMsg.MSG_CHA_WRITE_START: {
BleWriteCallback writeCallback = (BleWriteCallback) msg.obj;
if (writeCallback != null) {
writeCallback.onWriteFailure(new TimeoutException());
}
break;
}
case BleMsg.MSG_CHA_WRITE_RESULT: {
writeMsgInit();
BleWriteCallback writeCallback = (BleWriteCallback) msg.obj;
Bundle bundle = msg.getData();
int status = bundle.getInt(BleMsg.KEY_WRITE_BUNDLE_STATUS);
byte[] value = bundle.getByteArray(BleMsg.KEY_WRITE_BUNDLE_VALUE);
if (writeCallback != null) {
if (status == BluetoothGatt.GATT_SUCCESS) {
writeCallback.onWriteSuccess(BleWriteState.DATA_WRITE_SINGLE, BleWriteState.DATA_WRITE_SINGLE, value);
} else {
writeCallback.onWriteFailure(new GattException(status));
}
}
break;
}
case BleMsg.MSG_CHA_READ_START: {
BleReadCallback readCallback = (BleReadCallback) msg.obj;
if (readCallback != null)
readCallback.onReadFailure(new TimeoutException());
break;
}
case BleMsg.MSG_CHA_READ_RESULT: {
readMsgInit();
BleReadCallback readCallback = (BleReadCallback) msg.obj;
Bundle bundle = msg.getData();
int status = bundle.getInt(BleMsg.KEY_READ_BUNDLE_STATUS);
byte[] value = bundle.getByteArray(BleMsg.KEY_READ_BUNDLE_VALUE);
if (readCallback != null) {
if (status == BluetoothGatt.GATT_SUCCESS) {
readCallback.onReadSuccess(value);
} else {
readCallback.onReadFailure(new GattException(status));
}
}
break;
}
case BleMsg.MSG_READ_RSSI_START: {
BleRssiCallback rssiCallback = (BleRssiCallback) msg.obj;
if (rssiCallback != null)
rssiCallback.onRssiFailure(new TimeoutException());
break;
}
case BleMsg.MSG_READ_RSSI_RESULT: {
rssiMsgInit();
BleRssiCallback rssiCallback = (BleRssiCallback) msg.obj;
Bundle bundle = msg.getData();
int status = bundle.getInt(BleMsg.KEY_READ_RSSI_BUNDLE_STATUS);
int value = bundle.getInt(BleMsg.KEY_READ_RSSI_BUNDLE_VALUE);
if (rssiCallback != null) {
if (status == BluetoothGatt.GATT_SUCCESS) {
rssiCallback.onRssiSuccess(value);
} else {
rssiCallback.onRssiFailure(new GattException(status));
}
}
break;
}
case BleMsg.MSG_SET_MTU_START: {
BleMtuChangedCallback mtuChangedCallback = (BleMtuChangedCallback) msg.obj;
if (mtuChangedCallback != null)
mtuChangedCallback.onSetMTUFailure(new TimeoutException());
break;
}
case BleMsg.MSG_SET_MTU_RESULT: {
mtuChangedMsgInit();
BleMtuChangedCallback mtuChangedCallback = (BleMtuChangedCallback) msg.obj;
Bundle bundle = msg.getData();
int status = bundle.getInt(BleMsg.KEY_SET_MTU_BUNDLE_STATUS);
int value = bundle.getInt(BleMsg.KEY_SET_MTU_BUNDLE_VALUE);
if (mtuChangedCallback != null) {
if (status == BluetoothGatt.GATT_SUCCESS) {
mtuChangedCallback.onMtuChanged(value);
} else {
mtuChangedCallback.onSetMTUFailure(new GattException(status));
}
}
break;
}
}
}
};
}
private BleConnector withUUID(UUID serviceUUID, UUID characteristicUUID) {
if (serviceUUID != null && mBluetoothGatt != null) {
mGattService = mBluetoothGatt.getService(serviceUUID);
}
if (mGattService != null && characteristicUUID != null) {
mCharacteristic = mGattService.getCharacteristic(characteristicUUID);
}
return this;
}
public BleConnector withUUIDString(String serviceUUID, String characteristicUUID) {
return withUUID(formUUID(serviceUUID), formUUID(characteristicUUID));
}
private UUID formUUID(String uuid) {
return uuid == null ? null : UUID.fromString(uuid);
}
/*------------------------------- main operation ----------------------------------- */
/**
* notify
*/
public void enableCharacteristicNotify(BleNotifyCallback bleNotifyCallback, String uuid_notify,
boolean userCharacteristicDescriptor) {
if (mCharacteristic != null
&& (mCharacteristic.getProperties() | BluetoothGattCharacteristic.PROPERTY_NOTIFY) > 0) {
handleCharacteristicNotifyCallback(bleNotifyCallback, uuid_notify);
setCharacteristicNotification(mBluetoothGatt, mCharacteristic, userCharacteristicDescriptor, true, bleNotifyCallback);
} else {
if (bleNotifyCallback != null)
bleNotifyCallback.onNotifyFailure(new OtherException("this characteristic not support notify!"));
}
}
/**
* stop notify
*/
public boolean disableCharacteristicNotify(boolean useCharacteristicDescriptor) {
if (mCharacteristic != null
&& (mCharacteristic.getProperties() | BluetoothGattCharacteristic.PROPERTY_NOTIFY) > 0) {
return setCharacteristicNotification(mBluetoothGatt, mCharacteristic,
useCharacteristicDescriptor, false, null);
} else {
return false;
}
}
/**
* notify setting
*/
private boolean setCharacteristicNotification(BluetoothGatt gatt,
BluetoothGattCharacteristic characteristic,
boolean useCharacteristicDescriptor,
boolean enable,
BleNotifyCallback bleNotifyCallback) {
if (gatt == null || characteristic == null) {
notifyMsgInit();
if (bleNotifyCallback != null)
bleNotifyCallback.onNotifyFailure(new OtherException("gatt or characteristic equal null"));
return false;
}
boolean success1 = gatt.setCharacteristicNotification(characteristic, enable);
if (!success1) {
notifyMsgInit();
if (bleNotifyCallback != null)
bleNotifyCallback.onNotifyFailure(new OtherException("gatt setCharacteristicNotification fail"));
return false;
}
BluetoothGattDescriptor descriptor;
if (useCharacteristicDescriptor) {
descriptor = characteristic.getDescriptor(characteristic.getUuid());
} else {
descriptor = characteristic.getDescriptor(formUUID(UUID_CLIENT_CHARACTERISTIC_CONFIG_DESCRIPTOR));
}
if (descriptor == null) {
notifyMsgInit();
if (bleNotifyCallback != null)
bleNotifyCallback.onNotifyFailure(new OtherException("descriptor equals null"));
return false;
} else {
descriptor.setValue(enable ? BluetoothGattDescriptor.ENABLE_NOTIFICATION_VALUE :
BluetoothGattDescriptor.DISABLE_NOTIFICATION_VALUE);
boolean success2 = gatt.writeDescriptor(descriptor);
if (!success2) {
notifyMsgInit();
if (bleNotifyCallback != null)
bleNotifyCallback.onNotifyFailure(new OtherException("gatt writeDescriptor fail"));
}
return success2;
}
}
/**
* indicate
*/
public void enableCharacteristicIndicate(BleIndicateCallback bleIndicateCallback, String uuid_indicate,
boolean useCharacteristicDescriptor) {
if (mCharacteristic != null
&& (mCharacteristic.getProperties() | BluetoothGattCharacteristic.PROPERTY_NOTIFY) > 0) {
handleCharacteristicIndicateCallback(bleIndicateCallback, uuid_indicate);
setCharacteristicIndication(mBluetoothGatt, mCharacteristic,
useCharacteristicDescriptor, true, bleIndicateCallback);
} else {
if (bleIndicateCallback != null)
bleIndicateCallback.onIndicateFailure(new OtherException("this characteristic not support indicate!"));
}
}
/**
* stop indicate
*/
public boolean disableCharacteristicIndicate(boolean userCharacteristicDescriptor) {
if (mCharacteristic != null
&& (mCharacteristic.getProperties() | BluetoothGattCharacteristic.PROPERTY_NOTIFY) > 0) {
return setCharacteristicIndication(mBluetoothGatt, mCharacteristic,
userCharacteristicDescriptor, false, null);
} else {
return false;
}
}
/**
* indicate setting
*/
private boolean setCharacteristicIndication(BluetoothGatt gatt,
BluetoothGattCharacteristic characteristic,
boolean useCharacteristicDescriptor,
boolean enable,
BleIndicateCallback bleIndicateCallback) {
if (gatt == null || characteristic == null) {
indicateMsgInit();
if (bleIndicateCallback != null)
bleIndicateCallback.onIndicateFailure(new OtherException("gatt or characteristic equal null"));
return false;
}
boolean success1 = gatt.setCharacteristicNotification(characteristic, enable);
if (!success1) {
indicateMsgInit();
if (bleIndicateCallback != null)
bleIndicateCallback.onIndicateFailure(new OtherException("gatt setCharacteristicNotification fail"));
return false;
}
BluetoothGattDescriptor descriptor;
if (useCharacteristicDescriptor) {
descriptor = characteristic.getDescriptor(characteristic.getUuid());
} else {
descriptor = characteristic.getDescriptor(formUUID(UUID_CLIENT_CHARACTERISTIC_CONFIG_DESCRIPTOR));
}
if (descriptor == null) {
indicateMsgInit();
if (bleIndicateCallback != null)
bleIndicateCallback.onIndicateFailure(new OtherException("descriptor equals null"));
return false;
} else {
descriptor.setValue(enable ? BluetoothGattDescriptor.ENABLE_INDICATION_VALUE :
BluetoothGattDescriptor.DISABLE_NOTIFICATION_VALUE);
boolean success2 = gatt.writeDescriptor(descriptor);
if (!success2) {
indicateMsgInit();
if (bleIndicateCallback != null)
bleIndicateCallback.onIndicateFailure(new OtherException("gatt writeDescriptor fail"));
}
return success2;
}
}
/**
* write
*/
public void writeCharacteristic(byte[] data, BleWriteCallback bleWriteCallback, String uuid_write) {
if (data == null || data.length <= 0) {
if (bleWriteCallback != null)
bleWriteCallback.onWriteFailure(new OtherException("the data to be written is empty"));
return;
}
if (mCharacteristic == null
|| (mCharacteristic.getProperties() & (BluetoothGattCharacteristic.PROPERTY_WRITE | BluetoothGattCharacteristic.PROPERTY_WRITE_NO_RESPONSE)) == 0) {
if (bleWriteCallback != null)
bleWriteCallback.onWriteFailure(new OtherException("this characteristic not support write!"));
return;
}
if (mCharacteristic.setValue(data)) {
handleCharacteristicWriteCallback(bleWriteCallback, uuid_write);
if (!mBluetoothGatt.writeCharacteristic(mCharacteristic)) {
writeMsgInit();
if (bleWriteCallback != null)
bleWriteCallback.onWriteFailure(new OtherException("gatt writeCharacteristic fail"));
}
} else {
if (bleWriteCallback != null)
bleWriteCallback.onWriteFailure(new OtherException("Updates the locally stored value of this characteristic fail"));
}
}
/**
* read
*/
public void readCharacteristic(BleReadCallback bleReadCallback, String uuid_read) {
if (mCharacteristic != null
&& (mCharacteristic.getProperties() & BluetoothGattCharacteristic.PROPERTY_READ) > 0) {
handleCharacteristicReadCallback(bleReadCallback, uuid_read);
if (!mBluetoothGatt.readCharacteristic(mCharacteristic)) {
readMsgInit();
if (bleReadCallback != null)
bleReadCallback.onReadFailure(new OtherException("gatt readCharacteristic fail"));
}
} else {
if (bleReadCallback != null)
bleReadCallback.onReadFailure(new OtherException("this characteristic not support read!"));
}
}
/**
* rssi
*/
public void readRemoteRssi(BleRssiCallback bleRssiCallback) {
handleRSSIReadCallback(bleRssiCallback);
if (!mBluetoothGatt.readRemoteRssi()) {
rssiMsgInit();
if (bleRssiCallback != null)
bleRssiCallback.onRssiFailure(new OtherException("gatt readRemoteRssi fail"));
}
}
/**
* set mtu
*/
public void setMtu(int requiredMtu, BleMtuChangedCallback bleMtuChangedCallback) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
handleSetMtuCallback(bleMtuChangedCallback);
if (!mBluetoothGatt.requestMtu(requiredMtu)) {
mtuChangedMsgInit();
if (bleMtuChangedCallback != null)
bleMtuChangedCallback.onSetMTUFailure(new OtherException("gatt requestMtu fail"));
}
} else {
if (bleMtuChangedCallback != null)
bleMtuChangedCallback.onSetMTUFailure(new OtherException("API level lower than 21"));
}
}
/**
* requestConnectionPriority
*
* @param connectionPriority Request a specific connection priority. Must be one of
* {@link BluetoothGatt#CONNECTION_PRIORITY_BALANCED},
* {@link BluetoothGatt#CONNECTION_PRIORITY_HIGH}
* or {@link BluetoothGatt#CONNECTION_PRIORITY_LOW_POWER}.
* @throws IllegalArgumentException If the parameters are outside of their
* specified range.
*/
public boolean requestConnectionPriority(int connectionPriority) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
return mBluetoothGatt.requestConnectionPriority(connectionPriority);
}
return false;
}
/**************************************** Handle call back ******************************************/
/**
* notify
*/
private void handleCharacteristicNotifyCallback(BleNotifyCallback bleNotifyCallback,
String uuid_notify) {
if (bleNotifyCallback != null) {
notifyMsgInit();
bleNotifyCallback.setKey(uuid_notify);
bleNotifyCallback.setHandler(mHandler);
mBleBluetooth.addNotifyCallback(uuid_notify, bleNotifyCallback);
mHandler.sendMessageDelayed(
mHandler.obtainMessage(BleMsg.MSG_CHA_NOTIFY_START, bleNotifyCallback),
BleManager.getInstance().getOperateTimeout());
}
}
/**
* indicate
*/
private void handleCharacteristicIndicateCallback(BleIndicateCallback bleIndicateCallback,
String uuid_indicate) {
if (bleIndicateCallback != null) {
indicateMsgInit();
bleIndicateCallback.setKey(uuid_indicate);
bleIndicateCallback.setHandler(mHandler);
mBleBluetooth.addIndicateCallback(uuid_indicate, bleIndicateCallback);
mHandler.sendMessageDelayed(
mHandler.obtainMessage(BleMsg.MSG_CHA_INDICATE_START, bleIndicateCallback),
BleManager.getInstance().getOperateTimeout());
}
}
/**
* write
*/
private void handleCharacteristicWriteCallback(BleWriteCallback bleWriteCallback,
String uuid_write) {
if (bleWriteCallback != null) {
writeMsgInit();
bleWriteCallback.setKey(uuid_write);
bleWriteCallback.setHandler(mHandler);
mBleBluetooth.addWriteCallback(uuid_write, bleWriteCallback);
mHandler.sendMessageDelayed(
mHandler.obtainMessage(BleMsg.MSG_CHA_WRITE_START, bleWriteCallback),
BleManager.getInstance().getOperateTimeout());
}
}
/**
* read
*/
private void handleCharacteristicReadCallback(BleReadCallback bleReadCallback,
String uuid_read) {
if (bleReadCallback != null) {
readMsgInit();
bleReadCallback.setKey(uuid_read);
bleReadCallback.setHandler(mHandler);
mBleBluetooth.addReadCallback(uuid_read, bleReadCallback);
mHandler.sendMessageDelayed(
mHandler.obtainMessage(BleMsg.MSG_CHA_READ_START, bleReadCallback),
BleManager.getInstance().getOperateTimeout());
}
}
/**
* rssi
*/
private void handleRSSIReadCallback(BleRssiCallback bleRssiCallback) {
if (bleRssiCallback != null) {
rssiMsgInit();
bleRssiCallback.setHandler(mHandler);
mBleBluetooth.addRssiCallback(bleRssiCallback);
mHandler.sendMessageDelayed(
mHandler.obtainMessage(BleMsg.MSG_READ_RSSI_START, bleRssiCallback),
BleManager.getInstance().getOperateTimeout());
}
}
/**
* set mtu
*/
private void handleSetMtuCallback(BleMtuChangedCallback bleMtuChangedCallback) {
if (bleMtuChangedCallback != null) {
mtuChangedMsgInit();
bleMtuChangedCallback.setHandler(mHandler);
mBleBluetooth.addMtuChangedCallback(bleMtuChangedCallback);
mHandler.sendMessageDelayed(
mHandler.obtainMessage(BleMsg.MSG_SET_MTU_START, bleMtuChangedCallback),
BleManager.getInstance().getOperateTimeout());
}
}
public void notifyMsgInit() {
mHandler.removeMessages(BleMsg.MSG_CHA_NOTIFY_START);
}
public void indicateMsgInit() {
mHandler.removeMessages(BleMsg.MSG_CHA_INDICATE_START);
}
public void writeMsgInit() {
mHandler.removeMessages(BleMsg.MSG_CHA_WRITE_START);
}
public void readMsgInit() {
mHandler.removeMessages(BleMsg.MSG_CHA_READ_START);
}
public void rssiMsgInit() {
mHandler.removeMessages(BleMsg.MSG_READ_RSSI_START);
}
public void mtuChangedMsgInit() {
mHandler.removeMessages(BleMsg.MSG_SET_MTU_START);
}
}
package com.clj.fastble.bluetooth;
import android.bluetooth.BluetoothDevice;
import android.os.Build;
import android.util.Log;
import com.clj.fastble.BleManager;
import com.clj.fastble.data.BleDevice;
import com.clj.fastble.utils.BleLruHashMap;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class MultipleBluetoothController {
private BleLruHashMap<String, BleBluetooth> bleLruHashMap;
private HashMap<String, BleBluetooth> bleTempHashMap;
public MultipleBluetoothController() {
bleLruHashMap = new BleLruHashMap<>(BleManager.getInstance().getMaxConnectCount());
bleTempHashMap = new HashMap<>();
}
public BleBluetooth buildConnectingBle(BleDevice bleDevice) {
BleBluetooth bleBluetooth = new BleBluetooth(bleDevice);
if (!bleTempHashMap.containsKey(bleBluetooth.getDeviceKey())) {
bleTempHashMap.put(bleBluetooth.getDeviceKey(), bleBluetooth);
}
return bleBluetooth;
}
public void removeConnectingBle(BleBluetooth bleBluetooth) {
if (bleBluetooth == null) {
return;
}
if (bleTempHashMap.containsKey(bleBluetooth.getDeviceKey())) {
bleTempHashMap.remove(bleBluetooth.getDeviceKey());
}
}
public void addBleBluetooth(BleBluetooth bleBluetooth) {
if (bleBluetooth == null) {
return;
}
if (!bleLruHashMap.containsKey(bleBluetooth.getDeviceKey())) {
bleLruHashMap.put(bleBluetooth.getDeviceKey(), bleBluetooth);
}
}
public void removeBleBluetooth(BleBluetooth bleBluetooth) {
if (bleBluetooth == null) {
return;
}
if (bleLruHashMap.containsKey(bleBluetooth.getDeviceKey())) {
bleLruHashMap.remove(bleBluetooth.getDeviceKey());
}
}
public boolean isContainDevice(BleDevice bleDevice) {
return bleDevice != null && bleLruHashMap.containsKey(bleDevice.getKey());
}
public boolean isContainDevice(BluetoothDevice bluetoothDevice) {
return bluetoothDevice != null && bleLruHashMap.containsKey(bluetoothDevice.getName() + bluetoothDevice.getAddress());
}
public BleBluetooth getBleBluetooth(BleDevice bleDevice) {
if (bleDevice != null) {
if (bleLruHashMap.containsKey(bleDevice.getKey())) {
return bleLruHashMap.get(bleDevice.getKey());
}
}
return null;
}
public void disconnect(BleDevice bleDevice) {
if (isContainDevice(bleDevice)) {
getBleBluetooth(bleDevice).disconnect();
}
}
public void disconnectAllDevice() {
Log.i("mkk", "断连接大活动===");
for (Map.Entry<String, BleBluetooth> stringBleBluetoothEntry : bleLruHashMap.entrySet()) {
stringBleBluetoothEntry.getValue().disconnect();
}
bleLruHashMap.clear();
}
public void destroy() {
Log.i("mkk", "清除大活动===");
for (Map.Entry<String, BleBluetooth> stringBleBluetoothEntry : bleLruHashMap.entrySet()) {
stringBleBluetoothEntry.getValue().destroy();
}
bleLruHashMap.clear();
for (Map.Entry<String, BleBluetooth> stringBleBluetoothEntry : bleTempHashMap.entrySet()) {
stringBleBluetoothEntry.getValue().destroy();
}
bleTempHashMap.clear();
}
public List<BleBluetooth> getBleBluetoothList() {
List<BleBluetooth> bleBluetoothList = new ArrayList<>(bleLruHashMap.values());
Collections.sort(bleBluetoothList, new Comparator<BleBluetooth>() {
@Override
public int compare(BleBluetooth lhs, BleBluetooth rhs) {
return lhs.getDeviceKey().compareToIgnoreCase(rhs.getDeviceKey());
}
});
return bleBluetoothList;
}
public List<BleDevice> getDeviceList() {
refreshConnectedDevice();
List<BleDevice> deviceList = new ArrayList<>();
for (BleBluetooth BleBluetooth : getBleBluetoothList()) {
if (BleBluetooth != null) {
deviceList.add(BleBluetooth.getDevice());
}
}
return deviceList;
}
public void refreshConnectedDevice() {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR2) {
List<BleBluetooth> bluetoothList = getBleBluetoothList();
for (int i = 0; bluetoothList != null && i < bluetoothList.size(); i++) {
BleBluetooth bleBluetooth = bluetoothList.get(i);
if (!BleManager.getInstance().isConnected(bleBluetooth.getDevice())) {
removeBleBluetooth(bleBluetooth);
}
}
}
}
}
package com.clj.fastble.bluetooth;
import android.os.Handler;
import android.os.HandlerThread;
import android.os.Message;
import com.clj.fastble.BleManager;
import com.clj.fastble.callback.BleWriteCallback;
import com.clj.fastble.data.BleMsg;
import com.clj.fastble.exception.BleException;
import com.clj.fastble.exception.OtherException;
import com.clj.fastble.utils.BleLog;
import java.util.LinkedList;
import java.util.Queue;
public class SplitWriter {
private HandlerThread mHandlerThread;
private Handler mHandler;
private BleBluetooth mBleBluetooth;
private String mUuid_service;
private String mUuid_write;
private byte[] mData;
private int mCount;
private boolean mSendNextWhenLastSuccess;
private long mIntervalBetweenTwoPackage;
private BleWriteCallback mCallback;
private Queue<byte[]> mDataQueue;
private int mTotalNum;
public SplitWriter() {
mHandlerThread = new HandlerThread("splitWriter");
mHandlerThread.start();
mHandler = new Handler(mHandlerThread.getLooper()) {
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
if (msg.what == BleMsg.MSG_SPLIT_WRITE_NEXT) {
write();
}
}
};
}
public void splitWrite(BleBluetooth bleBluetooth,
String uuid_service,
String uuid_write,
byte[] data,
boolean sendNextWhenLastSuccess,
long intervalBetweenTwoPackage,
BleWriteCallback callback) {
mBleBluetooth = bleBluetooth;
mUuid_service = uuid_service;
mUuid_write = uuid_write;
mData = data;
mSendNextWhenLastSuccess = sendNextWhenLastSuccess;
mIntervalBetweenTwoPackage = intervalBetweenTwoPackage;
mCount = BleManager.getInstance().getSplitWriteNum();
mCallback = callback;
splitWrite();
}
private void splitWrite() {
if (mData == null) {
throw new IllegalArgumentException("data is Null!");
}
if (mCount < 1) {
throw new IllegalArgumentException("split count should higher than 0!");
}
mDataQueue = splitByte(mData, mCount);
mTotalNum = mDataQueue.size();
write();
}
private void write() {
if (mDataQueue.peek() == null) {
release();
return;
}
byte[] data = mDataQueue.poll();
mBleBluetooth.newBleConnector()
.withUUIDString(mUuid_service, mUuid_write)
.writeCharacteristic(
data,
new BleWriteCallback() {
@Override
public void onWriteSuccess(int current, int total, byte[] justWrite) {
int position = mTotalNum - mDataQueue.size();
if (mCallback != null) {
mCallback.onWriteSuccess(position, mTotalNum, justWrite);
}
if (mSendNextWhenLastSuccess) {
Message message = mHandler.obtainMessage(BleMsg.MSG_SPLIT_WRITE_NEXT);
mHandler.sendMessageDelayed(message, mIntervalBetweenTwoPackage);
}
}
@Override
public void onWriteFailure(BleException exception) {
if (mCallback != null) {
mCallback.onWriteFailure(new OtherException("exception occur while writing: " + exception.getDescription()));
}
if (mSendNextWhenLastSuccess) {
Message message = mHandler.obtainMessage(BleMsg.MSG_SPLIT_WRITE_NEXT);
mHandler.sendMessageDelayed(message, mIntervalBetweenTwoPackage);
}
}
},
mUuid_write);
if (!mSendNextWhenLastSuccess) {
Message message = mHandler.obtainMessage(BleMsg.MSG_SPLIT_WRITE_NEXT);
mHandler.sendMessageDelayed(message, mIntervalBetweenTwoPackage);
}
}
private void release() {
mHandlerThread.quit();
mHandler.removeCallbacksAndMessages(null);
}
// private static Queue<byte[]> splitByte(byte[] data, int count) {
// if (count > 20) {
// BleLog.w("Be careful: split count beyond 20! Ensure MTU higher than 23!");
// }
// Queue<byte[]> byteQueue = new LinkedList<>();
// if (data != null) {
// int index = 0;
// do {
// byte[] rawData = new byte[data.length - index];
// byte[] newData;
// System.arraycopy(data, index, rawData, 0, data.length - index);
// if (rawData.length <= count) {
// newData = new byte[rawData.length];
// System.arraycopy(rawData, 0, newData, 0, rawData.length);
// index += rawData.length;
// } else {
// newData = new byte[count];
// System.arraycopy(data, index, newData, 0, count);
// index += count;
// }
// byteQueue.offer(newData);
// } while (index < data.length);
// }
// return byteQueue;
// }
private static Queue<byte[]> splitByte(byte[] data, int count) {
if (count > 20) {
BleLog.w("Be careful: split count beyond 20! Ensure MTU higher than 23!");
}
Queue<byte[]> byteQueue = new LinkedList<>();
int pkgCount;
if (data.length % count == 0) {
pkgCount = data.length / count;
} else {
pkgCount = Math.round(data.length / count + 1);
}
if (pkgCount > 0) {
for (int i = 0; i < pkgCount; i++) {
byte[] dataPkg;
int j;
if (pkgCount == 1 || i == pkgCount - 1) {
j = data.length % count == 0 ? count : data.length % count;
System.arraycopy(data, i * count, dataPkg = new byte[j], 0, j);
} else {
System.arraycopy(data, i * count, dataPkg = new byte[count], 0, count);
}
byteQueue.offer(dataPkg);
}
}
return byteQueue;
}
}
package com.clj.fastble.callback;
import android.os.Handler;
public abstract class BleBaseCallback {
private String key;
private Handler handler;
public String getKey() {
return key;
}
public void setKey(String key) {
this.key = key;
}
public Handler getHandler() {
return handler;
}
public void setHandler(Handler handler) {
this.handler = handler;
}
}
package com.clj.fastble.callback;
import android.annotation.TargetApi;
import android.bluetooth.BluetoothGatt;
import android.bluetooth.BluetoothGattCallback;
import android.os.Build;
import com.clj.fastble.data.BleDevice;
import com.clj.fastble.exception.BleException;
@TargetApi(Build.VERSION_CODES.JELLY_BEAN_MR2)
public abstract class BleGattCallback extends BluetoothGattCallback {
public abstract void onStartConnect();
public abstract void onConnectFail(BleDevice bleDevice, BleException exception);
public abstract void onConnectSuccess(BleDevice bleDevice, BluetoothGatt gatt, int status);
public abstract void onDisConnected(boolean isActiveDisConnected, BleDevice device, BluetoothGatt gatt, int status);
}
\ No newline at end of file
package com.clj.fastble.callback;
import com.clj.fastble.exception.BleException;
public abstract class BleIndicateCallback extends BleBaseCallback{
public abstract void onIndicateSuccess();
public abstract void onIndicateFailure(BleException exception);
public abstract void onCharacteristicChanged(byte[] data);
}
package com.clj.fastble.callback;
import com.clj.fastble.exception.BleException;
public abstract class BleMtuChangedCallback extends BleBaseCallback {
public abstract void onSetMTUFailure(BleException exception);
public abstract void onMtuChanged(int mtu);
}
package com.clj.fastble.callback;
import com.clj.fastble.exception.BleException;
public abstract class BleNotifyCallback extends BleBaseCallback {
public abstract void onNotifySuccess();
public abstract void onNotifyFailure(BleException exception);
public abstract void onCharacteristicChanged(byte[] data);
}
package com.clj.fastble.callback;
import com.clj.fastble.exception.BleException;
public abstract class BleReadCallback extends BleBaseCallback {
public abstract void onReadSuccess(byte[] data);
public abstract void onReadFailure(BleException exception);
}
package com.clj.fastble.callback;
import com.clj.fastble.exception.BleException;
public abstract class BleRssiCallback extends BleBaseCallback{
public abstract void onRssiFailure(BleException exception);
public abstract void onRssiSuccess(int rssi);
}
\ No newline at end of file
package com.clj.fastble.callback;
import com.clj.fastble.data.BleDevice;
public abstract class BleScanAndConnectCallback extends BleGattCallback implements BleScanPresenterImp {
public abstract void onScanFinished(BleDevice scanResult);
public void onLeScan(BleDevice bleDevice) {
}
}
package com.clj.fastble.callback;
import com.clj.fastble.data.BleDevice;
import java.util.List;
public abstract class BleScanCallback implements BleScanPresenterImp {
public abstract void onScanFinished(List<BleDevice> scanResultList);
public void onLeScan(BleDevice bleDevice) {
}
}
package com.clj.fastble.callback;
import com.clj.fastble.data.BleDevice;
public interface BleScanPresenterImp {
void onScanStarted(boolean success);
void onScanning(BleDevice bleDevice);
}
package com.clj.fastble.callback;
import com.clj.fastble.exception.BleException;
public abstract class BleWriteCallback extends BleBaseCallback{
public abstract void onWriteSuccess(int current, int total, byte[] justWrite);
public abstract void onWriteFailure(BleException exception);
}
package com.clj.fastble.data;
public class BleConnectStateParameter {
private int status;
private boolean isActive;
public BleConnectStateParameter(int status) {
this.status = status;
}
public int getStatus() {
return status;
}
public void setStatus(int status) {
this.status = status;
}
public boolean isActive() {
return isActive;
}
public void setActive(boolean active) {
isActive = active;
}
}
package com.clj.fastble.data;
import android.bluetooth.BluetoothDevice;
import android.os.Parcel;
import android.os.Parcelable;
public class BleDevice implements Parcelable {
private BluetoothDevice mDevice;
private byte[] mScanRecord;
private int mRssi;
private long mTimestampNanos;
public BleDevice(BluetoothDevice device) {
mDevice = device;
}
public BleDevice(BluetoothDevice device, int rssi, byte[] scanRecord, long timestampNanos) {
mDevice = device;
mScanRecord = scanRecord;
mRssi = rssi;
mTimestampNanos = timestampNanos;
}
protected BleDevice(Parcel in) {
mDevice = in.readParcelable(BluetoothDevice.class.getClassLoader());
mScanRecord = in.createByteArray();
mRssi = in.readInt();
mTimestampNanos = in.readLong();
}
@Override
public void writeToParcel(Parcel dest, int flags) {
dest.writeParcelable(mDevice, flags);
dest.writeByteArray(mScanRecord);
dest.writeInt(mRssi);
dest.writeLong(mTimestampNanos);
}
@Override
public int describeContents() {
return 0;
}
public static final Creator<BleDevice> CREATOR = new Creator<BleDevice>() {
@Override
public BleDevice createFromParcel(Parcel in) {
return new BleDevice(in);
}
@Override
public BleDevice[] newArray(int size) {
return new BleDevice[size];
}
};
public String getName() {
if (mDevice != null)
return mDevice.getName();
return null;
}
public String getMac() {
if (mDevice != null)
return mDevice.getAddress();
return null;
}
public String getKey() {
if (mDevice != null)
return mDevice.getName() + mDevice.getAddress();
return "";
}
public BluetoothDevice getDevice() {
return mDevice;
}
public void setDevice(BluetoothDevice device) {
this.mDevice = device;
}
public byte[] getScanRecord() {
return mScanRecord;
}
public void setScanRecord(byte[] scanRecord) {
this.mScanRecord = scanRecord;
}
public int getRssi() {
return mRssi;
}
public void setRssi(int rssi) {
this.mRssi = rssi;
}
public long getTimestampNanos() {
return mTimestampNanos;
}
public void setTimestampNanos(long timestampNanos) {
this.mTimestampNanos = timestampNanos;
}
}
package com.clj.fastble.data;
public class BleMsg {
// Scan
public static final int MSG_SCAN_DEVICE = 0X00;
// Connect
public static final int MSG_CONNECT_FAIL = 0x01;
public static final int MSG_DISCONNECTED = 0x02;
public static final int MSG_RECONNECT = 0x03;
public static final int MSG_DISCOVER_SERVICES = 0x04;
public static final int MSG_DISCOVER_FAIL = 0x05;
public static final int MSG_DISCOVER_SUCCESS = 0x06;
public static final int MSG_CONNECT_OVER_TIME = 0x07;
// Notify
public static final int MSG_CHA_NOTIFY_START = 0x11;
public static final int MSG_CHA_NOTIFY_RESULT = 0x12;
public static final int MSG_CHA_NOTIFY_DATA_CHANGE = 0x13;
public static final String KEY_NOTIFY_BUNDLE_STATUS = "notify_status";
public static final String KEY_NOTIFY_BUNDLE_VALUE = "notify_value";
// Indicate
public static final int MSG_CHA_INDICATE_START = 0x21;
public static final int MSG_CHA_INDICATE_RESULT = 0x22;
public static final int MSG_CHA_INDICATE_DATA_CHANGE = 0x23;
public static final String KEY_INDICATE_BUNDLE_STATUS = "indicate_status";
public static final String KEY_INDICATE_BUNDLE_VALUE = "indicate_value";
// Write
public static final int MSG_CHA_WRITE_START = 0x31;
public static final int MSG_CHA_WRITE_RESULT = 0x32;
public static final int MSG_SPLIT_WRITE_NEXT = 0x33;
public static final String KEY_WRITE_BUNDLE_STATUS = "write_status";
public static final String KEY_WRITE_BUNDLE_VALUE = "write_value";
// Read
public static final int MSG_CHA_READ_START = 0x41;
public static final int MSG_CHA_READ_RESULT = 0x42;
public static final String KEY_READ_BUNDLE_STATUS = "read_status";
public static final String KEY_READ_BUNDLE_VALUE = "read_value";
// Rssi
public static final int MSG_READ_RSSI_START = 0x51;
public static final int MSG_READ_RSSI_RESULT = 0x52;
public static final String KEY_READ_RSSI_BUNDLE_STATUS = "rssi_status";
public static final String KEY_READ_RSSI_BUNDLE_VALUE = "rssi_value";
// Mtu
public static final int MSG_SET_MTU_START = 0x61;
public static final int MSG_SET_MTU_RESULT = 0x62;
public static final String KEY_SET_MTU_BUNDLE_STATUS = "mtu_status";
public static final String KEY_SET_MTU_BUNDLE_VALUE = "mtu_value";
}
package com.clj.fastble.data;
public enum BleScanState {
STATE_IDLE(-1),
STATE_SCANNING(0X01);
private int code;
BleScanState(int code) {
this.code = code;
}
public int getCode() {
return code;
}
}
package com.clj.fastble.data;
public class BleWriteState {
public static final int DATA_WRITE_SINGLE = 1;
}
package com.clj.fastble.exception;
import java.io.Serializable;
public abstract class BleException implements Serializable {
private static final long serialVersionUID = 8004414918500865564L;
public static final int ERROR_CODE_TIMEOUT = 100;
public static final int ERROR_CODE_GATT = 101;
public static final int ERROR_CODE_OTHER = 102;
private int code;
private String description;
public BleException(int code, String description) {
this.code = code;
this.description = description;
}
public int getCode() {
return code;
}
public BleException setCode(int code) {
this.code = code;
return this;
}
public String getDescription() {
return description;
}
public BleException setDescription(String description) {
this.description = description;
return this;
}
@Override
public String toString() {
return "BleException { " +
"code=" + code +
", description='" + description + '\'' +
'}';
}
}
package com.clj.fastble.exception;
import android.bluetooth.BluetoothGatt;
public class ConnectException extends BleException {
private BluetoothGatt bluetoothGatt;
private int gattStatus;
public ConnectException(BluetoothGatt bluetoothGatt, int gattStatus) {
super(ERROR_CODE_GATT, "Gatt Exception Occurred! ");
this.bluetoothGatt = bluetoothGatt;
this.gattStatus = gattStatus;
}
public int getGattStatus() {
return gattStatus;
}
public ConnectException setGattStatus(int gattStatus) {
this.gattStatus = gattStatus;
return this;
}
public BluetoothGatt getBluetoothGatt() {
return bluetoothGatt;
}
public ConnectException setBluetoothGatt(BluetoothGatt bluetoothGatt) {
this.bluetoothGatt = bluetoothGatt;
return this;
}
@Override
public String toString() {
return "ConnectException{" +
"gattStatus=" + gattStatus +
", bluetoothGatt=" + bluetoothGatt +
"} " + super.toString();
}
}
package com.clj.fastble.exception;
public class GattException extends BleException {
private int gattStatus;
public GattException(int gattStatus) {
super(ERROR_CODE_GATT, "Gatt Exception Occurred! ");
this.gattStatus = gattStatus;
}
public int getGattStatus() {
return gattStatus;
}
public GattException setGattStatus(int gattStatus) {
this.gattStatus = gattStatus;
return this;
}
@Override
public String toString() {
return "GattException{" +
"gattStatus=" + gattStatus +
"} " + super.toString();
}
}
package com.clj.fastble.exception;
public class OtherException extends BleException {
public OtherException(String description) {
super(ERROR_CODE_OTHER, description);
}
}
package com.clj.fastble.exception;
public class TimeoutException extends BleException {
public TimeoutException() {
super(ERROR_CODE_TIMEOUT, "Timeout Exception Occurred!");
}
}
package com.clj.fastble.scan;
import android.annotation.TargetApi;
import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothDevice;
import android.os.Build;
import android.os.Handler;
import android.os.HandlerThread;
import android.os.Looper;
import android.os.Message;
import android.text.TextUtils;
import android.util.Log;
import com.clj.fastble.callback.BleScanPresenterImp;
import com.clj.fastble.data.BleDevice;
import com.clj.fastble.data.BleMsg;
import com.clj.fastble.utils.BleLog;
import com.clj.fastble.utils.HexUtil;
import java.lang.ref.WeakReference;
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.atomic.AtomicBoolean;
@TargetApi(Build.VERSION_CODES.JELLY_BEAN_MR2)
public abstract class BleScanPresenter implements BluetoothAdapter.LeScanCallback {
private String[] mDeviceNames;
private String mDeviceMac;
private boolean mFuzzy;
private boolean mNeedConnect;
private long mScanTimeout;
private BleScanPresenterImp mBleScanPresenterImp;
private List<BleDevice> mBleDeviceList = new ArrayList<>();
private Handler mMainHandler = new Handler(Looper.getMainLooper());
private HandlerThread mHandlerThread;
private Handler mHandler;
private boolean mHandling;
private static final class ScanHandler extends Handler {
private final WeakReference<BleScanPresenter> mBleScanPresenter;
ScanHandler(Looper looper, BleScanPresenter bleScanPresenter) {
super(looper);
mBleScanPresenter = new WeakReference<>(bleScanPresenter);
}
@Override
public void handleMessage(Message msg) {
BleScanPresenter bleScanPresenter = mBleScanPresenter.get();
if (bleScanPresenter != null) {
if (msg.what == BleMsg.MSG_SCAN_DEVICE) {
final BleDevice bleDevice = (BleDevice) msg.obj;
if (bleDevice != null) {
bleScanPresenter.handleResult(bleDevice);
}
}
}
}
}
private void handleResult(final BleDevice bleDevice) {
mMainHandler.post(new Runnable() {
@Override
public void run() {
onLeScan(bleDevice);
}
});
checkDevice(bleDevice);
}
public void prepare(String[] names, String mac, boolean fuzzy, boolean needConnect,
long timeOut, BleScanPresenterImp bleScanPresenterImp) {
mDeviceNames = names;
mDeviceMac = mac;
mFuzzy = fuzzy;
mNeedConnect = needConnect;
mScanTimeout = timeOut;
mBleScanPresenterImp = bleScanPresenterImp;
mHandlerThread = new HandlerThread(BleScanPresenter.class.getSimpleName());
mHandlerThread.start();
mHandler = new ScanHandler(mHandlerThread.getLooper(), this);
mHandling = true;
}
public boolean ismNeedConnect() {
return mNeedConnect;
}
public BleScanPresenterImp getBleScanPresenterImp() {
return mBleScanPresenterImp;
}
@Override
public void onLeScan(BluetoothDevice device, int rssi, byte[] scanRecord) {
if (device == null)
return;
if (!mHandling)
return;
Message message = mHandler.obtainMessage();
message.what = BleMsg.MSG_SCAN_DEVICE;
message.obj = new BleDevice(device, rssi, scanRecord, System.currentTimeMillis());
mHandler.sendMessage(message);
}
private void checkDevice(BleDevice bleDevice) {
if (TextUtils.isEmpty(mDeviceMac) && (mDeviceNames == null || mDeviceNames.length < 1)) {
correctDeviceAndNextStep(bleDevice);
return;
}
if (!TextUtils.isEmpty(mDeviceMac)) {
if (!mDeviceMac.equalsIgnoreCase(bleDevice.getMac()))
return;
}
if (mDeviceNames != null && mDeviceNames.length > 0) {
AtomicBoolean equal = new AtomicBoolean(false);
for (String name : mDeviceNames) {
String remoteName = bleDevice.getName();
if (remoteName == null)
remoteName = "";
if (mFuzzy ? remoteName.contains(name) : remoteName.equals(name)) {
equal.set(true);
}
}
if (!equal.get()) {
return;
}
}
correctDeviceAndNextStep(bleDevice);
}
private void correctDeviceAndNextStep(final BleDevice bleDevice) {
if (mNeedConnect) {
BleLog.i("devices detected ------"
+ " name:" + bleDevice.getName()
+ " mac:" + bleDevice.getMac()
+ " Rssi:" + bleDevice.getRssi()
+ " scanRecord:" + HexUtil.formatHexString(bleDevice.getScanRecord()));
mBleDeviceList.add(bleDevice);
mMainHandler.post(new Runnable() {
@Override
public void run() {
BleScanner.getInstance().stopLeScan();
}
});
} else {
AtomicBoolean hasFound = new AtomicBoolean(false);
for (BleDevice result : mBleDeviceList) {
if (result.getDevice().equals(bleDevice.getDevice())) {
hasFound.set(true);
}
}
if (!hasFound.get()) {
BleLog.i("device detected ------"
+ " name: " + bleDevice.getName()
+ " mac: " + bleDevice.getMac()
+ " Rssi: " + bleDevice.getRssi()
+ " scanRecord: " + HexUtil.formatHexString(bleDevice.getScanRecord(), true));
mBleDeviceList.add(bleDevice);
mMainHandler.post(new Runnable() {
@Override
public void run() {
onScanning(bleDevice);
}
});
}
}
}
public final void notifyScanStarted(final boolean success) {
mBleDeviceList.clear();
removeHandlerMsg();
if (success && mScanTimeout > 0) {
mMainHandler.postDelayed(new Runnable() {
@Override
public void run() {
BleScanner.getInstance().stopLeScan();
}
}, mScanTimeout);
}
mMainHandler.post(new Runnable() {
@Override
public void run() {
onScanStarted(success);
}
});
}
public final void notifyScanStopped() {
mHandling = false;
mHandlerThread.quit();
removeHandlerMsg();
mMainHandler.post(new Runnable() {
@Override
public void run() {
onScanFinished(mBleDeviceList);
}
});
}
public final void removeHandlerMsg() {
mMainHandler.removeCallbacksAndMessages(null);
mHandler.removeCallbacksAndMessages(null);
}
public abstract void onScanStarted(boolean success);
public abstract void onLeScan(BleDevice bleDevice);
public abstract void onScanning(BleDevice bleDevice);
public abstract void onScanFinished(List<BleDevice> bleDeviceList);
}
package com.clj.fastble.scan;
import com.clj.fastble.BleManager;
import java.util.UUID;
public class BleScanRuleConfig {
private UUID[] mServiceUuids = null;
private String[] mDeviceNames = null;
private String mDeviceMac = null;
private boolean mAutoConnect = false;
private boolean mFuzzy = false;
private long mScanTimeOut = BleManager.DEFAULT_SCAN_TIME;
public UUID[] getServiceUuids() {
return mServiceUuids;
}
public String[] getDeviceNames() {
return mDeviceNames;
}
public String getDeviceMac() {
return mDeviceMac;
}
public boolean isAutoConnect() {
return mAutoConnect;
}
public boolean isFuzzy() {
return mFuzzy;
}
public long getScanTimeOut() {
return mScanTimeOut;
}
public static class Builder {
private UUID[] mServiceUuids = null;
private String[] mDeviceNames = null;
private String mDeviceMac = null;
private boolean mAutoConnect = false;
private boolean mFuzzy = false;
private long mTimeOut = BleManager.DEFAULT_SCAN_TIME;
public Builder setServiceUuids(UUID[] uuids) {
this.mServiceUuids = uuids;
return this;
}
public Builder setDeviceName(boolean fuzzy, String... name) {
this.mFuzzy = fuzzy;
this.mDeviceNames = name;
return this;
}
public Builder setDeviceMac(String mac) {
this.mDeviceMac = mac;
return this;
}
public Builder setAutoConnect(boolean autoConnect) {
this.mAutoConnect = autoConnect;
return this;
}
public Builder setScanTimeOut(long timeOut) {
this.mTimeOut = timeOut;
return this;
}
void applyConfig(BleScanRuleConfig config) {
config.mServiceUuids = this.mServiceUuids;
config.mDeviceNames = this.mDeviceNames;
config.mDeviceMac = this.mDeviceMac;
config.mAutoConnect = this.mAutoConnect;
config.mFuzzy = this.mFuzzy;
config.mScanTimeOut = this.mTimeOut;
}
public BleScanRuleConfig build() {
BleScanRuleConfig config = new BleScanRuleConfig();
applyConfig(config);
return config;
}
}
}
package com.clj.fastble.scan;
import android.annotation.TargetApi;
import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothDevice;
import android.os.Build;
import android.os.Handler;
import android.os.Looper;
import android.util.Log;
import com.clj.fastble.BleManager;
import com.clj.fastble.callback.BleScanAndConnectCallback;
import com.clj.fastble.callback.BleScanCallback;
import com.clj.fastble.callback.BleScanPresenterImp;
import com.clj.fastble.data.BleDevice;
import com.clj.fastble.data.BleScanState;
import com.clj.fastble.utils.BleLog;
import java.util.List;
import java.util.UUID;
@TargetApi(Build.VERSION_CODES.JELLY_BEAN_MR2)
public class BleScanner {
public static BleScanner getInstance() {
return BleScannerHolder.sBleScanner;
}
private static class BleScannerHolder {
private static final BleScanner sBleScanner = new BleScanner();
}
private BleScanState mBleScanState = BleScanState.STATE_IDLE;
private BleScanPresenter mBleScanPresenter = new BleScanPresenter() {
@Override
public void onScanStarted(boolean success) {
BleScanPresenterImp callback = mBleScanPresenter.getBleScanPresenterImp();
if (callback != null) {
callback.onScanStarted(success);
}
}
@Override
public void onLeScan(BleDevice bleDevice) {
if (mBleScanPresenter.ismNeedConnect()) {
BleScanAndConnectCallback callback = (BleScanAndConnectCallback)
mBleScanPresenter.getBleScanPresenterImp();
if (callback != null) {
callback.onLeScan(bleDevice);
}
} else {
BleScanCallback callback = (BleScanCallback) mBleScanPresenter.getBleScanPresenterImp();
if (callback != null) {
callback.onLeScan(bleDevice);
}
}
}
@Override
public void onScanning(BleDevice result) {
BleScanPresenterImp callback = mBleScanPresenter.getBleScanPresenterImp();
if (callback != null) {
callback.onScanning(result);
}
}
@Override
public void onScanFinished(List<BleDevice> bleDeviceList) {
if (mBleScanPresenter.ismNeedConnect()) {
final BleScanAndConnectCallback callback = (BleScanAndConnectCallback)
mBleScanPresenter.getBleScanPresenterImp();
if (bleDeviceList == null || bleDeviceList.size() < 1) {
if (callback != null) {
callback.onScanFinished(null);
}
} else {
if (callback != null) {
callback.onScanFinished(bleDeviceList.get(0));
}
final List<BleDevice> list = bleDeviceList;
new Handler(Looper.getMainLooper()).postDelayed(new Runnable() {
@Override
public void run() {
BleManager.getInstance().connect(list.get(0), callback);
}
}, 100);
}
} else {
BleScanCallback callback = (BleScanCallback) mBleScanPresenter.getBleScanPresenterImp();
if (callback != null) {
callback.onScanFinished(bleDeviceList);
}
}
}
};
public void scan(UUID[] serviceUuids, String[] names, String mac, boolean fuzzy,
long timeOut, final BleScanCallback callback) {
startLeScan(serviceUuids, names, mac, fuzzy, false, timeOut, callback);
}
public void scanAndConnect(UUID[] serviceUuids, String[] names, String mac, boolean fuzzy,
long timeOut, BleScanAndConnectCallback callback) {
startLeScan(serviceUuids, names, mac, fuzzy, true, timeOut, callback);
}
private synchronized void startLeScan(UUID[] serviceUuids, String[] names, String mac, boolean fuzzy,
boolean needConnect, long timeOut, BleScanPresenterImp imp) {
if (mBleScanState != BleScanState.STATE_IDLE) {
BleLog.w("scan action already exists, complete the previous scan action first");
if (imp != null) {
imp.onScanStarted(false);
}
return;
}
mBleScanPresenter.prepare(names, mac, fuzzy, needConnect, timeOut, imp);
try {
boolean success = BleManager.getInstance().getBluetoothAdapter()
.startLeScan(serviceUuids, mBleScanPresenter);
mBleScanState = success ? BleScanState.STATE_SCANNING : BleScanState.STATE_IDLE;
mBleScanPresenter.notifyScanStarted(success);
} catch (Exception e) {
e.printStackTrace();
}
}
public synchronized void stopLeScan() {
BleManager.getInstance().getBluetoothAdapter().stopLeScan(mBleScanPresenter);
mBleScanState = BleScanState.STATE_IDLE;
mBleScanPresenter.notifyScanStopped();
}
public BleScanState getScanState() {
return mBleScanState;
}
}
package com.clj.fastble.utils;
import android.util.Log;
public final class BleLog {
public static boolean isPrint = true;
private static String defaultTag = "FastBle";
public static void d(String msg) {
if (isPrint && msg != null)
Log.d(defaultTag, msg);
}
public static void i(String msg) {
if (isPrint && msg != null)
Log.i(defaultTag, msg);
}
public static void w(String msg) {
if (isPrint && msg != null)
Log.w(defaultTag, msg);
}
public static void e(String msg) {
if (isPrint && msg != null)
Log.e(defaultTag, msg);
}
}
package com.clj.fastble.utils;
import com.clj.fastble.bluetooth.BleBluetooth;
import java.util.LinkedHashMap;
public class BleLruHashMap<K, V> extends LinkedHashMap<K, V> {
private final int MAX_SIZE;
public BleLruHashMap(int saveSize) {
super((int) Math.ceil(saveSize / 0.75) + 1, 0.75f, true);
MAX_SIZE = saveSize;
}
@Override
protected boolean removeEldestEntry(java.util.Map.Entry eldest) {
if (size() > MAX_SIZE && eldest.getValue() instanceof BleBluetooth) {
((BleBluetooth) eldest.getValue()).disconnect();
}
return size() > MAX_SIZE;
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
for (Entry<K, V> entry : entrySet()) {
sb.append(String.format("%s:%s ", entry.getKey(), entry.getValue()));
}
return sb.toString();
}
}
package com.clj.fastble.utils;
public class HexUtil {
private static final char[] DIGITS_LOWER = {'0', '1', '2', '3', '4', '5',
'6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'};
private static final char[] DIGITS_UPPER = {'0', '1', '2', '3', '4', '5',
'6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'};
public static char[] encodeHex(byte[] data) {
return encodeHex(data, true);
}
public static char[] encodeHex(byte[] data, boolean toLowerCase) {
return encodeHex(data, toLowerCase ? DIGITS_LOWER : DIGITS_UPPER);
}
protected static char[] encodeHex(byte[] data, char[] toDigits) {
if (data == null)
return null;
int l = data.length;
char[] out = new char[l << 1];
for (int i = 0, j = 0; i < l; i++) {
out[j++] = toDigits[(0xF0 & data[i]) >>> 4];
out[j++] = toDigits[0x0F & data[i]];
}
return out;
}
public static String encodeHexStr(byte[] data) {
return encodeHexStr(data, true);
}
public static String encodeHexStr(byte[] data, boolean toLowerCase) {
return encodeHexStr(data, toLowerCase ? DIGITS_LOWER : DIGITS_UPPER);
}
protected static String encodeHexStr(byte[] data, char[] toDigits) {
return new String(encodeHex(data, toDigits));
}
public static String formatHexString(byte[] data) {
return formatHexString(data, false);
}
public static String formatHexString(byte[] data, boolean addSpace) {
if (data == null || data.length < 1)
return null;
StringBuilder sb = new StringBuilder();
for (int i = 0; i < data.length; i++) {
String hex = Integer.toHexString(data[i] & 0xFF);
if (hex.length() == 1) {
hex = '0' + hex;
}
sb.append(hex);
if (addSpace)
sb.append(" ");
}
return sb.toString().trim();
}
public static byte[] decodeHex(char[] data) {
int len = data.length;
if ((len & 0x01) != 0) {
throw new RuntimeException("Odd number of characters.");
}
byte[] out = new byte[len >> 1];
// two characters form the hex value.
for (int i = 0, j = 0; j < len; i++) {
int f = toDigit(data[j], j) << 4;
j++;
f = f | toDigit(data[j], j);
j++;
out[i] = (byte) (f & 0xFF);
}
return out;
}
protected static int toDigit(char ch, int index) {
int digit = Character.digit(ch, 16);
if (digit == -1) {
throw new RuntimeException("Illegal hexadecimal character " + ch
+ " at index " + index);
}
return digit;
}
public static byte[] hexStringToBytes(String hexString) {
if (hexString == null || hexString.equals("")) {
return null;
}
hexString = hexString.trim();
hexString = hexString.toUpperCase();
int length = hexString.length() / 2;
char[] hexChars = hexString.toCharArray();
byte[] d = new byte[length];
for (int i = 0; i < length; i++) {
int pos = i * 2;
d[i] = (byte) (charToByte(hexChars[pos]) << 4 | charToByte(hexChars[pos + 1]));
}
return d;
}
public static byte charToByte(char c) {
return (byte) "0123456789ABCDEF".indexOf(c);
}
public static String extractData(byte[] data, int position) {
return HexUtil.formatHexString(new byte[]{data[position]});
}
}
/build
\ No newline at end of file
apply plugin: 'com.android.application'
android {
compileSdkVersion 30
buildToolsVersion "30.0.2"
defaultConfig {
applicationId "com.example.blu.toys"
minSdkVersion 19
targetSdkVersion 30
versionCode 1
versionName "1.0"
multiDexEnabled true
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
lintOptions {
checkReleaseBuilds false
// Or, if you prefer, you can continue to checkforerrorsinrelease builds,
// but continue the build even whenerrorsarefound:
abortOnError false
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
buildTypes {
buildTypes {
debug {
buildConfigField "int", "myInt", "0"
buildConfigField "String", "myStr", "\"hello\""
buildConfigField "boolean", "LOG_DEBUG", "true"
}
release {
buildConfigField "int", "myInt", "1"
buildConfigField "String", "myStr", "\"world\""
buildConfigField "boolean", "LOG_DEBUG", "false"
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
}
compileOptions {
coreLibraryDesugaringEnabled true
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
dependencies {
implementation fileTree(dir: "libs", include: ["*.jar"])
implementation 'androidx.appcompat:appcompat:1.2.0'
implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
implementation project(path: ':FastBleLib')
testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test.ext:junit:1.1.2'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:1.0.9'
implementation 'com.squareup.okhttp3:okhttp:4.8.1'
implementation 'com.squareup.okhttp3:logging-interceptor:4.8.1'
implementation 'com.google.code.gson:gson:2.8.6'
// //数据传递
implementation 'org.greenrobot:eventbus:3.2.0'
implementation 'com.hjq:xxpermissions:8.6'
implementation "androidx.multidex:multidex:2.0.0"
/// implementation 'com.github.tbruyelle:rxpermissions:0.12'
//下拉刷新
implementation 'com.scwang.smartrefresh:SmartRefreshLayout:1.1.0-alpha-21'
implementation 'com.scwang.smartrefresh:SmartRefreshHeader:1.1.0-alpha-21'
//没有使用特殊Header,可以不加这行
implementation 'com.scwang.smart:refresh-header-classics:2.0.1'
implementation 'com.scwang.smart:refresh-header-classics:2.0.0-alpha-1' //经典刷新头
//banner
implementation 'com.youth.banner:banner:2.1.0'
//底部导航
implementation 'com.roughike:bottom-bar:2.3.1'
// //findViewById
implementation 'com.jakewharton:butterknife:10.2.1'
annotationProcessor 'com.jakewharton:butterknife-compiler:10.2.1'
//跑马灯
implementation 'com.superluo:textbannerview:1.0.5' //最新版本
//design
implementation "com.google.android.material:material:1.2.1"
//万能适配器
// implementation 'com.github.CymChad:BaseRecyclerViewAdapterHelper:2.9.22'
//二维码
implementation 'cn.yipianfengye.android:zxing-library:2.2'
//toast
implementation 'com.hjq:toast:8.8'
implementation 'io.itimetraveler:pickerselector:0.0.0.2'
implementation 'com.contrarywind:Android-PickerView:4.1.9'
//工具类
implementation 'com.blankj:utilcodex:1.28.0'
implementation group: 'com.alibaba', name: 'fastjson', version: '1.2.73'
implementation 'com.android.support:multidex:1.0.3'
implementation 'com.orhanobut:logger:1.15'
implementation 'top.zibin:Luban:1.1.8'
//implementation 'com.vise.xiaoyaoyou:baseble:2.0.5'
}
\ No newline at end of file
# Add project specific ProGuard rules here.
# You can control the set of applied configuration files using the
# proguardFiles setting in build.gradle.
#
# For more details, see
# http://developer.android.com/guide/developing/tools/proguard.html
# If your project uses WebView with JS, uncomment the following
# and specify the fully qualified class name to the JavaScript interface
# class:
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
# public *;
#}
# Uncomment this to preserve the line number information for
# debugging stack traces.
#-keepattributes SourceFile,LineNumberTable
# If you keep the line number information, uncomment this to
# hide the original source file name.
#-renamesourcefileattribute SourceFile
\ No newline at end of file
{
"version": 1,
"artifactType": {
"type": "APK",
"kind": "Directory"
},
"applicationId": "com.example.blu.toys",
"variantName": "release",
"elements": [
{
"type": "SINGLE",
"filters": [],
"properties": [],
"versionCode": 1,
"versionName": "1.0",
"enabled": true,
"outputFile": "app-release.apk"
}
]
}
\ No newline at end of file
package com.example.blu.toys;
import android.content.Context;
import androidx.test.platform.app.InstrumentationRegistry;
import androidx.test.ext.junit.runners.AndroidJUnit4;
import org.junit.Test;
import org.junit.runner.RunWith;
import static org.junit.Assert.*;
/**
* Instrumented test, which will execute on an Android device.
*
* @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
*/
@RunWith(AndroidJUnit4.class)
public class ExampleInstrumentedTest {
@Test
public void useAppContext() {
// Context of the app under test.
Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext();
assertEquals("com.example.blu.toys", appContext.getPackageName());
}
}
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.example.blu.toys">
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
<uses-permission
android:name="android.permission.BLUETOOTH_PRIVILEGED"
tools:ignore="ProtectedPermissions" />
<uses-permission android:name="com.android.launcher.permission.READ_SETTINGS" />
<uses-permission android:name="android.permission.VIBRATE"/>
<uses-permission android:name="android.permission.FLASHLIGHT" />
<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.camera.autofocus" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-feature android:name="android.hardware.location.gps" />
<uses-feature
android:name="android.hardware.bluetooth_le"
android:required="true" />
<application
android:name=".app.App"
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:networkSecurityConfig="@xml/network_security_config"
android:requestLegacyExternalStorage="true"
android:roundIcon="@mipmap/ic_launcher"
android:supportsRtl="true"
android:theme="@style/AppTheme"
tools:targetApi="n">
<activity android:name=".activity.SelectTimerActivity"></activity>
<activity android:name=".activity.PlayActivity" />
<activity android:name=".activity.SetTimeActivity" />
<activity android:name=".activity.SelectDeviceActivity" />
<activity android:name=".activity.SearchingActivity" />
<activity android:name=".activity.AddDeviceActivity" />
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<receiver android:name=".ble.receiver.BluetoothOpenAndClose">
<intent-filter>
<action android:name="android.bluetooth.adapter.action.STATE_CHANGED" />
</intent-filter>
</receiver>
</application>
</manifest>
\ No newline at end of file
package com.example.blu.toys;
import android.Manifest;
import android.os.Bundle;
import android.widget.LinearLayout;
import com.example.blu.toys.activity.AddDeviceActivity;
import com.example.blu.toys.activity.BaseActivity;
import com.hjq.permissions.OnPermission;
import com.hjq.permissions.Permission;
import com.hjq.permissions.XXPermissions;
import java.util.ArrayList;
import java.util.List;
import butterknife.BindView;
import butterknife.OnClick;
public class MainActivity extends BaseActivity {
@BindView(R.id.stoplight_but)
LinearLayout stoplightBut;
String[] permissions = new String[]{
Manifest.permission.ACCESS_COARSE_LOCATION,
Manifest.permission.ACCESS_FINE_LOCATION,
Manifest.permission.WRITE_EXTERNAL_STORAGE,
Manifest.permission.READ_PHONE_STATE
};
// 声明一个集合,在后面的代码中用来存储用户拒绝授权的权
List<String> mPermissionList = new ArrayList<>();
private static final int MY_PERMISSIONS_REQUEST_CALL_PHONE = 1;
private static final int MY_PERMISSIONS_REQUEST_CALL_CAMERA = 2;
private BluetoothHelper bluetoothHelper;
@Override
public int getLayout() {
return R.layout.activity_main;
}
@Override
public void init(Bundle savedInstanceState) {
// for (int i = 0; i < permissions.length; i++) {
// if (ContextCompat.checkSelfPermission(MainActivity.this, permissions[i]) != PackageManager.PERMISSION_GRANTED) {
// mPermissionList.add(permissions[i]);
// }
// }
// if (mPermissionList.isEmpty()) {//未授予的权限为空,表示都授予了
// Toast.makeText(MainActivity.this, "已经授权", Toast.LENGTH_LONG).show();
// } else {//请求权限方法
// String[] permissions = mPermissionList.toArray(new String[mPermissionList.size()]);//将List转为数组
// ActivityCompat.requestPermissions(MainActivity.this, permissions, MY_PERMISSIONS_REQUEST_CALL_CAMERA);
// }
}
private void checkPermission() {
XXPermissions.with(this) // 申请安装包权限
.permission(Permission.CAMERA, Permission.ACCESS_FINE_LOCATION, Permission.ACCESS_FINE_LOCATION) // 申请多个权限
.request(new OnPermission() {
@Override
public void hasPermission(List<String> granted, boolean all) {
if (!all) {
checkPermission();
}
}
@Override
public void noPermission(List<String> denied, boolean never) {
if (never) {
XXPermissions.startPermissionActivity(MainActivity.this, denied);
} else {
checkPermission();
}
}
}
);
}
@Override
public void initData() {
checkPermission();
}
@OnClick(R.id.stoplight_but)
public void onViewClicked() {
goActivity(AddDeviceActivity.class);
}
// @Override
// public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
// if (requestCode == MY_PERMISSIONS_REQUEST_CALL_PHONE) {
// if (grantResults[0] == PackageManager.PERMISSION_GRANTED) {
// showToast("权限已申请");
// } else {
// showToast("权限已拒绝");
// }
// } else if (requestCode == MY_PERMISSIONS_REQUEST_CALL_CAMERA) {
// for (int i = 0; i < grantResults.length; i++) {
// if (grantResults[i] != PackageManager.PERMISSION_GRANTED) {
// //判断是否勾选禁止后不再询问
// boolean showRequestPermission = ActivityCompat.shouldShowRequestPermissionRationale(MainActivity.this, permissions[i]);
// if (showRequestPermission) {
// showToast("权限未申请");
// }
// }
// }
// }
// super.onRequestPermissionsResult(requestCode, permissions, grantResults);
// }
//
// private void showToast(String string) {
// Toast.makeText(MainActivity.this, string, Toast.LENGTH_LONG).show();
// }
// private void checkBluetoothPermission() {
// if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
// //校验是否已具有模糊定位权限
// if (ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
// PermissionManager.instance().with(this).request(new OnPermissionCallback() {
// @Override
// public void onRequestAllow(String permissionName) {
// enableBluetooth();
// }
//
// @Override
// public void onRequestRefuse(String permissionName) {
// finish();
// }
//
// @Override
// public void onRequestNoAsk(String permissionName) {
// finish();
// }
// }, Manifest.permission.ACCESS_COARSE_LOCATION);
// } else {
// enableBluetooth();
// }
// } else {
// enableBluetooth();
// }
// }
//
// private void enableBluetooth() {
// if (!BleUtil.isBleEnable(this)) {
// BleUtil.enableBluetooth(this, 1);
// } else {
// boolean isSupport = BleUtil.isSupportBle(this);
// boolean isOpenBle = BleUtil.isBleEnable(this);
// if (isSupport) {
// supportTv.setText(getString(R.string.supported));
// } else {
// supportTv.setText(getString(R.string.not_supported));
// }
// if (isOpenBle) {
// statusTv.setText(getString(R.string.on));
// } else {
// statusTv.setText(getString(R.string.off));
// }
// invalidateOptionsMenu();
// updateConnectedDevice();
// }
// }
}
\ No newline at end of file
package com.example.blu.toys.activity;
import android.os.Bundle;
import androidx.appcompat.widget.AppCompatImageView;
import com.example.blu.toys.R;
import butterknife.BindView;
import butterknife.OnClick;
public class AddDeviceActivity extends BaseActivity {
@BindView(R.id.go_search_ble)
AppCompatImageView goSearchBle;
@Override
public int getLayout() {
return R.layout.activity_add_device;
}
@Override
public void init(Bundle savedInstanceState) {
}
@Override
public void initData() {
}
@OnClick(R.id.go_search_ble)
public void onViewClicked() {
goActivity(SearchingActivity.class);
}
}
\ No newline at end of file
package com.example.blu.toys.activity;
import android.Manifest;
import android.annotation.TargetApi;
import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.database.Observable;
import android.graphics.BitmapFactory;
import android.os.Build;
import android.os.Bundle;
import android.os.Environment;
import android.os.Handler;
import android.provider.MediaStore;
import android.text.TextUtils;
import android.view.MenuItem;
import android.view.WindowManager;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.widget.Toolbar;
import com.example.blu.toys.app.AppManager;
import com.example.blu.toys.utils.Utils;
import java.util.ArrayList;
import java.util.List;
import butterknife.ButterKnife;
import butterknife.Unbinder;
public abstract class BaseActivity extends AppCompatActivity {
private Unbinder mBinder;
protected static final int REQUEST_CODE_PICK_IMAGE = 0x1111;//相册
protected static final int PERMISSION_REQUEST = 1001;
private List<String> permissionsList = new ArrayList<>();
private String[] permissions = new String[]{Manifest.permission.CAMERA,
Manifest.permission.MOUNT_UNMOUNT_FILESYSTEMS, Manifest.permission.WRITE_EXTERNAL_STORAGE,
Manifest.permission.READ_EXTERNAL_STORAGE};
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(getLayout());
// getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);
AppManager.getInstance().addActivity(this);
mBinder = ButterKnife.bind(this);
init(savedInstanceState);
initData();
}
public abstract int getLayout();
public abstract void init(Bundle savedInstanceState);
public abstract void initData();
protected String getStringResourcesId(int resourcesId) {
return Utils.getString(this, resourcesId);
}
public <T> void goActivity(Class<T> activity) {
startActivity(new Intent(this, activity));
}
@Override
protected void onDestroy() {
super.onDestroy();
mBinder.unbind();
}
}
package com.example.blu.toys.activity;
import android.os.Bundle;
import android.view.View;
import com.example.blu.toys.R;
import butterknife.ButterKnife;
import butterknife.OnClick;
public class PlayActivity extends BaseActivity {
@Override
public int getLayout() {
return R.layout.activity_play;
}
@Override
public void init(Bundle savedInstanceState) {
}
@Override
public void initData() {
}
@OnClick({R.id.cancel_but, R.id.pause_but, R.id.resume_but})
public void onViewClicked(View view) {
switch (view.getId()) {
case R.id.cancel_but:
case R.id.pause_but:
case R.id.resume_but:
goActivity(SelectTimerActivity.class);
break;
}
}
}
\ No newline at end of file
package com.example.blu.toys.activity;
import android.os.Bundle;
import android.util.Log;
import com.example.blu.toys.R;
import com.example.blu.toys.app.AppManager;
import org.greenrobot.eventbus.EventBus;
import org.greenrobot.eventbus.Subscribe;
import org.greenrobot.eventbus.ThreadMode;
import butterknife.ButterKnife;
import butterknife.OnClick;
public class SearchingActivity extends BaseActivity {
@Override
public int getLayout() {
return R.layout.activity_searching;
}
@Override
public void init(Bundle savedInstanceState) {
EventBus.getDefault().register(this);
}
@Override
public void initData() {
}
@OnClick(R.id.select_dev)
public void onViewClicked() {
goActivity(SelectDeviceActivity.class);
}
@Subscribe(threadMode = ThreadMode.MAIN)
public void GoDeviceListPage(String login) {
goActivity(SelectDeviceActivity.class);
}
}
\ No newline at end of file
package com.example.blu.toys.activity;
import android.os.Bundle;
import com.example.blu.toys.R;
import butterknife.ButterKnife;
import butterknife.OnClick;
public class SelectDeviceActivity extends BaseActivity {
@Override
public int getLayout() {
return R.layout.activity_seleclt_device;
}
@Override
public void init(Bundle savedInstanceState) {
}
@Override
public void initData() {
}
@OnClick(R.id.go_start)
public void onViewClicked() {
goActivity(SetTimeActivity.class);
}
}
\ No newline at end of file
package com.example.blu.toys.activity;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import com.example.blu.toys.R;
public class SelectTimerActivity extends BaseActivity {
@Override
public int getLayout() {
return R.layout.activity_select_timer;
}
@Override
public void init(Bundle savedInstanceState) {
}
@Override
public void initData() {
}
}
\ No newline at end of file
package com.example.blu.toys.activity;
import android.os.Bundle;
import com.example.blu.toys.R;
import butterknife.ButterKnife;
import butterknife.OnClick;
public class SetTimeActivity extends BaseActivity {
@Override
public int getLayout() {
return R.layout.activity_set_time;
}
@Override
public void init(Bundle savedInstanceState) {
}
@Override
public void initData() {
}
@OnClick(R.id.start_but)
public void onViewClicked() {
goActivity(PlayActivity.class);
}
}
\ No newline at end of file
package com.example.blu.toys.app;
import android.app.Application;
import android.util.DisplayMetrics;
import com.clj.fastble.BleManager;
import com.hjq.toast.ToastUtils;
public class App extends Application {
public static App instance;
//临时保存 需要登录才能访问的页面 在登录成功后跳转
//屏幕宽高
int screenWidth;
int screenHeight;
/**
* Activity 栈
*/
@Override
public void onCreate() {
super.onCreate();
instance = this;
//1、通过WindowManager获取
DisplayMetrics dm = new DisplayMetrics();
// 屏幕宽(像素,如:480px)
screenWidth = dm.heightPixels;
// 屏幕高(像素)
screenHeight = dm.widthPixels;
//LogUtil.init(BuildConfig.LOG_DEBUG);
ToastUtils.init(this);
BleManager.getInstance().init(this);
BleManager.getInstance()
.enableLog(true)
.setReConnectCount(3, 5000)
.setMaxConnectCount(7)
.setConnectOverTime(50000)
.setOperateTimeout(50000);
// DoohanBle.getInstance().init(this);
// DoohanBle.config().setScanTimeout(5000)//扫描超时时间,这里设置为永久扫描
// .setConnectTimeout(10 * 1000)//连接超时时间
// .setOperateTimeout(5 * 1000)//设置数据操作超时时间
// .setConnectRetryCount(5)//设置连接失败重试次数
// .setConnectRetryInterval(1000)//设置连接失败重试间隔时间
// .setOperateRetryCount(3)//设置数据操作失败重试次数
// .setOperateRetryInterval(1000)//设置数据操作失败重试间隔时间
// .setServiceUUID("0000fff0-0000-1000-8000-00805f9b34fb")
// .setNotifyUUID("0000fff4-0000-1000-8000-00805f9b34fb")
// .setWriteUUID("0000fff3-0000-1000-8000-00805f9b34fb");
// //蓝牙相关配置修改
// ViseBle.config()
// .setScanTimeout(-1)//扫描超时时间,这里设置为永久扫描
// .setConnectTimeout(10 * 1000)//连接超时时间
// .setOperateTimeout(5 * 1000)//设置数据操作超时时间
// .setConnectRetryCount(3)//设置连接失败重试次数
// .setConnectRetryInterval(1000)//设置连接失败重试间隔时间
// .setOperateRetryCount(3)//设置数据操作失败重试次数
// .setOperateRetryInterval(1000)//设置数据操作失败重试间隔时间
// .setMaxConnectCount(3);//设置最大连接设备数量
////蓝牙信息初始化,全局唯一,必须在应用初始化时调用
// ViseBle.getInstance().init(this);
}
public static App getInstance() {
return instance;
}
public int getScreenWidth() {
return screenWidth;
}
public int getScreenHeight() {
return screenHeight;
}
}
package com.example.blu.toys.app;
import android.app.Activity;
import java.util.Iterator;
/**
* ProjectName:AndroidUtil
* PackageName: com.standard.util.helper
* Description:自定义activity的栈管理(栈结构扩展Vector,元素不要求唯一性,可存在多个相同实例)
* <p>
* CreateTime: 6/24/2016 12:36
* Modifier:liminghuang
* ModifyTime:6/24/2016 12:36
* Comment:因为第一版本AppManager的使用过程中发现存在问题,所以为了保持api的一致性,采用桥接模式委托AppManagerDelegate类处理
*
* @author liminghuang
*/
public final class AppManager {
/** 是否使用桥接模式 **/
private boolean isBridge = false;
/** AppManager管理activity的委托类 **/
private AppManagerDelegate mDelegate;
/** 维护activity的栈结构 **/
private java.util.Stack<Activity> mActivityStack;
private static volatile AppManager sInstance;
/**
* 隐藏构造器
*
* @param isBridge 是否开启桥接模式
*/
private AppManager(boolean isBridge) {
this.isBridge = isBridge;
mDelegate = AppManagerDelegate.getInstance();
}
/**
* 单例
*
* @return 返回AppManager的单例
*/
public static AppManager getInstance() {
if (sInstance == null) {
synchronized (AppManager.class) {
if (sInstance == null) {
sInstance = new AppManager(true);
}
}
}
return sInstance;
}
/**
* 添加Activity到堆栈
*
* @param activity activity实例
*/
public void addActivity(Activity activity) {
if (isBridge) {
mDelegate.addActivity(activity);
} else {
if (mActivityStack == null) {
mActivityStack = new java.util.Stack<>();
}
mActivityStack.add(activity);
}
}
/**
* 获取当前Activity(栈中最后一个压入的)
*
* @return 当前(栈顶)activity
*/
public Activity currentActivity() {
if (isBridge) {
return mDelegate.currentActivity();
} else {
if (mActivityStack != null && !mActivityStack.isEmpty()) {
return mActivityStack.lastElement();
}
return null;
}
}
/**
* 结束除当前activtiy以外的所有activity
* 注意:不能使用foreach遍历并发删除,会抛出java.util.ConcurrentModificationException的异常
*
* @param activity 不需要结束的activity
*/
public void finishOtherActivity(Activity activity) {
if (isBridge) {
mDelegate.finishOtherActivity(activity);
} else {
if (mActivityStack != null) {
for (Iterator<Activity> it = mActivityStack.iterator(); it.hasNext(); ) {
Activity temp = it.next();
if (temp != null && temp != activity) {
finishActivity(temp);
}
}
}
}
}
/**
* 结束除这一类activtiy以外的所有activity
* 注意:不能使用foreach遍历并发删除,会抛出java.util.ConcurrentModificationException的异常
*
* @param cls 不需要结束的activity
*/
public void finishOtherActivity(Class<?> cls) {
if (isBridge) {
mDelegate.finishOtherActivity(cls);
} else {
if (mActivityStack != null) {
for (Iterator<Activity> it = mActivityStack.iterator(); it.hasNext(); ) {
Activity activity = it.next();
if (!activity.getClass().equals(cls)) {
finishActivity(activity);
}
}
}
}
}
/**
* 结束当前Activity(堆栈中最后一个压入的)
*/
public void finishActivity() {
if (isBridge) {
mDelegate.finishActivity();
} else {
if (mActivityStack != null && !mActivityStack.isEmpty()) {
Activity activity = mActivityStack.lastElement();
finishActivity(activity);
}
}
}
/**
* 结束指定的Activity
*
* @param activity 指定的activity实例
*/
public void finishActivity(Activity activity) {
if (isBridge) {
mDelegate.finishActivity(activity);
} else {
if (activity != null) {
if (mActivityStack != null && mActivityStack.contains(activity)) {// 兼容未使用AppManager管理的实例
mActivityStack.remove(activity);
}
activity.finish();
}
}
}
/**
* 结束指定类名的所有Activity
*
* @param cls 指定的类的class
*/
public void finishActivity(Class<?> cls) {
if (isBridge) {
mDelegate.finishActivity(cls);
} else {
if (mActivityStack != null) {
for (Iterator<Activity> it = mActivityStack.iterator(); it.hasNext(); ) {
Activity activity = it.next();
if (activity.getClass().equals(cls)) {
finishActivity(activity);
}
}
}
}
}
/**
* 结束所有Activity
*/
public void finishAllActivity() {
if (isBridge) {
mDelegate.finishAllActivity();
} else {
if (mActivityStack != null) {
for (int i = 0, size = mActivityStack.size(); i < size; i++) {
if (null != mActivityStack.get(i)) {
mActivityStack.get(i).finish();
}
}
mActivityStack.clear();
}
}
}
/**
* 退出应用程序
*/
public void exitApp() {
if (isBridge) {
mDelegate.exitApp();
} else {
try {
finishAllActivity();
// 退出JVM(java虚拟机),释放所占内存资源,0表示正常退出(非0的都为异常退出)
System.exit(0);
// 从操作系统中结束掉当前程序的进程
android.os.Process.killProcess(android.os.Process.myPid());
} catch (Exception e) {
// LogUtil.e("Exit exception", e);
}
}
}
}
\ No newline at end of file
package com.example.blu.toys.app;
import android.app.Activity;
import java.lang.ref.WeakReference;
import java.util.Iterator;
/**
* ProjectName:AndroidUtil
* PackageName: com.standard.util.helper
* Description:自定义activity的栈管理(栈结构扩展Vector,元素不要求唯一性,可存在多个相同实例)
* <p>
* CreateTime: 6/24/2016 12:36
* Modifier:liminghuang
* ModifyTime:6/24/2016 12:36
* Comment:
*
* @author liminghuang
*/
public final class AppManagerDelegate {
// 使用弱引用是因为存在未使用AppManager的finish方法来释放的activity,但mActivityStack并未断开对其应用导致内存泄露的问题
private java.util.Stack<WeakReference<Activity>> mActivityStack;
private static volatile AppManagerDelegate sInstance;
private AppManagerDelegate() {
}
/**
* 单例
*
* @return 返回AppManager的单例
*/
public static AppManagerDelegate getInstance() {
if (sInstance == null) {
synchronized (AppManagerDelegate.class) {
if (sInstance == null) {
sInstance = new AppManagerDelegate();
}
}
}
return sInstance;
}
/**
* 添加Activity到堆栈
*
* @param activity activity实例
*/
public void addActivity(Activity activity) {
if (mActivityStack == null) {
mActivityStack = new java.util.Stack<>();
}
mActivityStack.add(new WeakReference<>(activity));
}
/**
* 检查弱引用是否释放,若释放,则从栈中清理掉该元素
*/
public void checkWeakReference() {
if (mActivityStack != null) {
for (Iterator<WeakReference<Activity>> it = mActivityStack.iterator(); it.hasNext(); ) {
WeakReference<Activity> activityReference = it.next();
Activity temp = activityReference.get();
if (temp == null) {
it.remove();// 使用迭代器来进行安全的加锁操作
}
}
}
}
/**
* 获取当前Activity(栈中最后一个压入的)
*
* @return 当前(栈顶)activity
*/
public Activity currentActivity() {
checkWeakReference();
if (mActivityStack != null && !mActivityStack.isEmpty()) {
return mActivityStack.lastElement().get();
}
return null;
}
/**
* 结束除当前activtiy以外的所有activity
* 注意:不能使用foreach遍历并发删除,会抛出java.util.ConcurrentModificationException的异常
*
* @param activtiy 不需要结束的activity
*/
public void finishOtherActivity(Activity activtiy) {
if (mActivityStack != null && activtiy != null) {
for (Iterator<WeakReference<Activity>> it = mActivityStack.iterator(); it.hasNext(); ) {
WeakReference<Activity> activityReference = it.next();
Activity temp = activityReference.get();
if (temp == null) {// 清理掉已经释放的activity
it.remove();
continue;
}
if (temp != activtiy) {
it.remove();// 使用迭代器来进行安全的加锁操作
temp.finish();
}
}
}
}
/**
* 结束除这一类activtiy以外的所有activity
*
* @param cls 指定的某类activity
*/
public void finishOtherActivity(Class<?> cls) {
if (mActivityStack != null) {
for (Iterator<WeakReference<Activity>> it = mActivityStack.iterator(); it.hasNext(); ) {
WeakReference<Activity> activityReference = it.next();
Activity activity = activityReference.get();
if (activity == null) {// 清理掉已经释放的activity
it.remove();
continue;
}
if (!activity.getClass().equals(cls)) {
it.remove();// 使用迭代器来进行安全的加锁操作
activity.finish();
}
}
}
}
/**
* 结束当前Activity(堆栈中最后一个压入的)
*/
public void finishActivity() {
Activity activity = currentActivity();
if (activity != null) {
finishActivity(activity);
}
}
/**
* 结束指定的Activity
*
* @param activity 指定的activity实例
*/
public void finishActivity(Activity activity) {
if (activity != null) {
for (Iterator<WeakReference<Activity>> it = mActivityStack.iterator(); it.hasNext(); ) {
WeakReference<Activity> activityReference = it.next();
Activity temp = activityReference.get();
if (temp == null) {// 清理掉已经释放的activity
it.remove();
continue;
}
if (temp == activity) {
it.remove();
}
}
activity.finish();
}
}
/**
* 结束指定类名的所有Activity
*
* @param cls 指定的类的class
*/
public void finishActivity(Class<?> cls) {
if (mActivityStack != null) {
for (Iterator<WeakReference<Activity>> it = mActivityStack.iterator(); it.hasNext(); ) {
WeakReference<Activity> activityReference = it.next();
Activity activity = activityReference.get();
if (activity == null) {// 清理掉已经释放的activity
it.remove();
continue;
}
if (activity.getClass().equals(cls)) {
it.remove();
activity.finish();
}
}
}
}
/**
* 结束所有Activity
*/
public void finishAllActivity() {
if (mActivityStack != null) {
for (Iterator<WeakReference<Activity>> it = mActivityStack.iterator(); it.hasNext(); ) {
WeakReference<Activity> activityReference = it.next();
Activity activity = activityReference.get();
if (activity != null) {
activity.finish();
}
}
mActivityStack.clear();
}
}
/**
* 退出应用程序
*/
public void exitApp() {
try {
finishAllActivity();
// 退出JVM(java虚拟机),释放所占内存资源,0表示正常退出(非0的都为异常退出)
System.exit(0);
// 从操作系统中结束掉当前程序的进程
android.os.Process.killProcess(android.os.Process.myPid());
} catch (Exception e) {
// LogUtil.e("Exit exception", e);
}
}
}
\ No newline at end of file
package com.example.blu.toys.ble;
import android.bluetooth.BluetoothDevice;
public class Notify {
public Notify() {
}
public Notify(Integer action, BluetoothDevice device) {
this.action = action;
this.device = device;
}
private Integer action;
public Integer getAction() {
return action;
}
public void setAction(Integer action) {
this.action = action;
}
public BluetoothDevice getDevice() {
return device;
}
public void setDevice(BluetoothDevice device) {
this.device = device;
}
private BluetoothDevice device;
}
package com.example.blu.toys.ble.agreement;
public class BCD8421Operater {
/**
* BCD字节数组===>String
* 中间
* @param bytes
* @return 十进制字符串
*/
public static String bcd2String(byte[] bytes) {
StringBuilder temp = new StringBuilder(bytes.length * 2);
for (int i = 0; i < bytes.length; i++) {
// 高四位
temp.append((bytes[i] & 0xf0) >>> 4);
// 低四位
temp.append(bytes[i] & 0x0f);
}
return temp.toString().substring(0, 1).equalsIgnoreCase("0") ? temp.toString().substring(1) : temp.toString();
}
/**
* 字符串==>BCD字节数组
*
* @param str
* @return BCD字节数组
*/
public static byte[] string2Bcd(String str) {
// 奇数,前补零
if ((str.length() & 0x1) == 1) {
str = "0" + str;
}
byte ret[] = new byte[str.length() / 2];
byte bs[] = str.getBytes();
for (int i = 0; i < ret.length; i++) {
byte high = ascII2Bcd(bs[2 * i]);
byte low = ascII2Bcd(bs[2 * i + 1]);
// TODO 只遮罩BCD低四位?
ret[i] = (byte) ((high << 4) | low);
}
return ret;
}
private static byte ascII2Bcd(byte asc) {
if ((asc >= '0') && (asc <= '9'))
return (byte) (asc - '0');
else if ((asc >= 'A') && (asc <= 'F'))
return (byte) (asc - 'A' + 10);
else if ((asc >= 'a') && (asc <= 'f'))
return (byte) (asc - 'a' + 10);
else
return (byte) (asc - 48);
}
// public static void main(String[] sr){
// String aa=ByteUtil.bytesToHexString(BCD8421Operater.string2Bcd("211212121213"));
// System.out.println(aa);
//
// }
}
\ No newline at end of file
package com.example.blu.toys.ble.agreement;
import java.nio.ByteBuffer;
import java.util.Arrays;
import java.util.List;
public class BitOperator {
/**
* 把一个整形该为byte
*
* @param value
* @return
* @throws Exception
*/
public static byte integerTo1Byte(int value) {
return (byte) (value & 0xFF);
}
/**
* 把一个整形该为1位的byte数组
*
* @param value
* @return
* @throws Exception
*/
public static byte[] integerTo1Bytes(int value) {
byte[] result = new byte[1];
result[0] = (byte) (value & 0xFF);
return result;
}
/**
* 把一个整形改为2位的byte数组
*
* @param value
* @return
* @throws Exception
*/
public static byte[] integerTo2Bytes(int value) {
byte[] result = new byte[2];
result[0] = (byte) ((value >>> 8) & 0xFF);
result[1] = (byte) (value & 0xFF);
return result;
}
/**
* 把一个整形改为3位的byte数组
*
* @param value
* @return
* @throws Exception
*/
public static byte[] integerTo3Bytes(int value) {
byte[] result = new byte[3];
result[0] = (byte) ((value >>> 16) & 0xFF);
result[1] = (byte) ((value >>> 8) & 0xFF);
result[2] = (byte) (value & 0xFF);
return result;
}
/**
* 把一个整形改为4位的byte数组
*
* @param value
* @return
* @throws Exception
*/
public static byte[] integerTo4Bytes(int value) {
byte[] result = new byte[4];
result[0] = (byte) ((value >>> 24) & 0xFF);
result[1] = (byte) ((value >>> 16) & 0xFF);
result[2] = (byte) ((value >>> 8) & 0xFF);
result[3] = (byte) (value & 0xFF);
return result;
}
/**
* 把byte[]转化位整形,通常为指令用
*
* @param value
* @return
* @throws Exception
*/
public static int byteToInteger(byte[] value) {
int result;
if (value.length == 1) {
result = oneByteToInteger(value[0]);
} else if (value.length == 2) {
result = twoBytesToInteger(value);
} else if (value.length == 3) {
result = threeBytesToInteger(value);
} else if (value.length == 4) {
result = fourBytesToInteger(value);
} else {
result = fourBytesToInteger(value);
}
return result;
}
/**
* 把一个byte转化位整形,通常为指令用
*
* @param value
* @return
* @throws Exception
*/
public static int oneByteToInteger(byte value) {
return (int) value & 0xFF;
}
/**
* 把一个2位的数组转化位整形
*
* @param value
* @return
* @throws Exception
*/
public static int twoBytesToInteger(byte[] value) {
// if (value.length < 2) {
// throw new Exception("Byte array too short!");
// }
int temp0 = value[0] & 0xFF;
int temp1 = value[1] & 0xFF;
return ((temp0 << 8) + temp1);
}
/**
* 把一个3位的数组转化位整形
*
* @param value
* @return
* @throws Exception
*/
public static int threeBytesToInteger(byte[] value) {
int temp0 = value[0] & 0xFF;
int temp1 = value[1] & 0xFF;
int temp2 = value[2] & 0xFF;
return ((temp0 << 16) + (temp1 << 8) + temp2);
}
/**
* 把一个4位的数组转化位整形,通常为指令用
*
* @param value
* @return
* @throws Exception
*/
public static int fourBytesToInteger(byte[] value) {
// if (value.length < 4) {
// throw new Exception("Byte array too short!");
// }
int temp0 = value[0] & 0xFF;
int temp1 = value[1] & 0xFF;
int temp2 = value[2] & 0xFF;
int temp3 = value[3] & 0xFF;
return ((temp0 << 24) + (temp1 << 16) + (temp2 << 8) + temp3);
}
/**
* 把一个4位的数组转化位整形
*
* @param value
* @return
* @throws Exception
*/
public static long fourBytesToLong(byte[] value) throws Exception {
// if (value.length < 4) {
// throw new Exception("Byte array too short!");
// }
int temp0 = value[0] & 0xFF;
int temp1 = value[1] & 0xFF;
int temp2 = value[2] & 0xFF;
int temp3 = value[3] & 0xFF;
return (((long) temp0 << 24) + (temp1 << 16) + (temp2 << 8) + temp3);
}
/**
* 把一个数组转化长整形
*
* @param value
* @return
* @throws Exception
*/
public static long bytes2Long(byte[] value) {
long result = 0;
int len = value.length;
int temp;
for (int i = 0; i < len; i++) {
temp = (len - 1 - i) * 8;
if (temp == 0) {
result += (value[i] & 0x0ff);
} else {
result += (value[i] & 0x0ff) << temp;
}
}
return result;
}
/**
* 把一个长整形改为byte数组
*
* @param value
* @return
* @throws Exception
*/
public static byte[] longToBytes(long value) {
return longToBytes(value, 8);
}
/**
* 把一个长整形改为byte数组
*
* @param value
* @return
* @throws Exception
*/
public static byte[] longToBytes(long value, int len) {
byte[] result = new byte[len];
int temp;
for (int i = 0; i < len; i++) {
temp = (len - 1 - i) * 8;
if (temp == 0) {
result[i] += (value & 0x0ff);
} else {
result[i] += (value >>> temp) & 0x0ff;
}
}
return result;
}
/**
* 把IP拆分位int数组
*
* @param ip
* @return
* @throws Exception
*/
public static int[] getIntIPValue(String ip) throws Exception {
String[] sip = ip.split("[.]");
// if (sip.length != 4) {
// throw new Exception("error IPAddress");
// }
int[] intIP = {Integer.parseInt(sip[0]), Integer.parseInt(sip[1]), Integer.parseInt(sip[2]),
Integer.parseInt(sip[3])};
return intIP;
}
/**
* 把byte类型IP地址转化位字符串
*
* @param address
* @return
* @throws Exception
*/
public static String getStringIPValue(byte[] address) throws Exception {
int first = oneByteToInteger(address[0]);
int second = oneByteToInteger(address[1]);
int third = oneByteToInteger(address[2]);
int fourth = oneByteToInteger(address[3]);
return first + "." + second + "." + third + "." + fourth;
}
/**
* 合并字节数组
*
* @param first
* @param rest
* @return
*/
public static byte[] concatAll(byte[] first, byte[]... rest) {
int totalLength = first.length;
for (byte[] array : rest) {
if (array != null) {
totalLength += array.length;
}
}
byte[] result = Arrays.copyOf(first, totalLength);
int offset = first.length;
for (byte[] array : rest) {
if (array != null) {
System.arraycopy(array, 0, result, offset, array.length);
offset += array.length;
}
}
return result;
}
/**
* 合并字节数组
*
* @param rest
* @return
*/
public static byte[] concatAll(List<byte[]> rest) {
int totalLength = 0;
for (byte[] array : rest) {
if (array != null) {
totalLength += array.length;
}
}
byte[] result = new byte[totalLength];
int offset = 0;
for (byte[] array : rest) {
if (array != null) {
System.arraycopy(array, 0, result, offset, array.length);
offset += array.length;
}
}
return result;
}
public static float byte2Float(byte[] bs) {
return Float.intBitsToFloat(
(((bs[3] & 0xFF) << 24) + ((bs[2] & 0xFF) << 16) + ((bs[1] & 0xFF) << 8) + (bs[0] & 0xFF)));
}
public float byteBE2Float(byte[] bytes) {
int l;
l = bytes[0];
l &= 0xff;
l |= ((long) bytes[1] << 8);
l &= 0xffff;
l |= ((long) bytes[2] << 16);
l &= 0xffffff;
l |= ((long) bytes[3] << 24);
return Float.intBitsToFloat(l);
}
public static int getCheckSum4JT808(byte[] bs, int start, int end) {
if (start < 0 || end > bs.length)
throw new ArrayIndexOutOfBoundsException("getCheckSum4JT808 error : index out of bounds(start=" + start
+ ",end=" + end + ",bytes length=" + bs.length + ")");
int cs = 0;
for (int i = start; i < end; i++) {
cs ^= bs[i];
}
return cs;
}
public static int getBitRange(int number, int start, int end) {
if (start < 0)
throw new IndexOutOfBoundsException("min index is 0,but start = " + start);
if (end >= Integer.SIZE)
throw new IndexOutOfBoundsException("max index is " + (Integer.SIZE - 1) + ",but end = " + end);
return (number << Integer.SIZE - (end + 1)) >>> Integer.SIZE - (end - start + 1);
}
public static int getBitAt(int number, int index) {
if (index < 0)
throw new IndexOutOfBoundsException("min index is 0,but " + index);
if (index >= Integer.SIZE)
throw new IndexOutOfBoundsException("max index is " + (Integer.SIZE - 1) + ",but " + index);
return ((1 << index) & number) >> index;
}
public static int getBitAtS(int number, int index) {
String s = Integer.toBinaryString(number);
return Integer.parseInt(s.charAt(index) + "");
}
@Deprecated
public static int getBitRangeS(int number, int start, int end) {
String s = Integer.toBinaryString(number);
StringBuilder sb = new StringBuilder(s);
while (sb.length() < Integer.SIZE) {
sb.insert(0, "0");
}
String tmp = sb.reverse().substring(start, end + 1);
sb = new StringBuilder(tmp);
return Integer.parseInt(sb.reverse().toString(), 2);
}
/**
* 计算crc值,注意这里只计算到header 到 length-2的位置
*
* @param
* @return
*/
// public static byte[] CRC(ByteBuf data) {
//// int len = data.readableBytes();
//// if (len < 2) return null;
////
//// int crc = 0xFFFF;//16位
////
////
//// //crc前置部分
//// ByteBuf crcPrefix = Unpooled.wrappedBuffer(new byte[]{0x5c, (byte) 0xad, (byte) 0xf3, 0x4e});
//// //全部
//// ByteBuf crcAll = Unpooled.wrappedBuffer(crcPrefix, data);
//// for (int pos = 0; pos < len + 4 - 2; pos++) {
//// byte b = crcAll.readByte();
//// if (b < 0) {
//// crc ^= (int) b + 256; // XOR byte into least sig. byte of
//// } else {
//// crc ^= (int) b; // XOR byte into least sig. byte of crc
//// }
////
//// for (int i = 8; i != 0; i--) { // Loop over each bit
//// if ((crc & 0x0001) != 0) { // If the LSB is set
//// crc >>= 1; // Shift right and XOR 0xA001
//// crc ^= 0xA001;
//// } else
//// // Else LSB is not set
//// crc >>= 1; // Just shift right
//// }
//// }
////
//// //移动data的readerIndex
//// data.readerIndex(data.readerIndex() + data.readableBytes() - 2);
//// return integerTo2Bytes(crc);
//// }
private static int crcSingle(int crc, byte b) {
return crc;
}
// /**
// * 校验
// *
// * @param data
// * @return
// */
// public static boolean checkCRC(ByteBuf data) {
// byte[] crc = CRC(data);
//// Log.info("crc:" + crc[0] + "," + crc[1]);
// return crc != null && crc[0] == data.readByte() && crc[1] == data.readByte();
// }
//
// public static byte[] getBytes(String str, int length) {
// ByteBuffer byteBuffer = ByteBuffer.allocate(length);
// byte[] src = str.getBytes();
// int dataLength = src.length < length ? src.length : length;
// byteBuffer.put(src, 0, dataLength);
// while (dataLength < length) {
// byteBuffer.put((byte) 0x00);
// dataLength++;
// }
// return byteBuffer.array();
// }
}
\ No newline at end of file
package com.example.blu.toys.ble.agreement;
import java.io.UnsupportedEncodingException;
import java.nio.charset.Charset;
public class HexStringUtils {
private static final char[] DIGITS_HEX = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F' };
protected static char[] encodeHex(byte[] data) {
int l = data.length;
char[] out = new char[l << 1];
for (int i = 0, j = 0; i < l; i++) {
out[j++] = DIGITS_HEX[(0xF0 & data[i]) >>> 4];
out[j++] = DIGITS_HEX[0x0F & data[i]];
}
return out;
}
protected static byte[] decodeHex(char[] data) {
int len = data.length;
if ((len & 0x01) != 0) {
throw new RuntimeException("字符个数应该为偶数");
}
byte[] out = new byte[len >> 1];
for (int i = 0, j = 0; j < len; i++) {
int f = toDigit(data[j], j) << 4;
j++;
f |= toDigit(data[j], j);
j++;
out[i] = (byte) (f & 0xFF);
}
return out;
}
protected static int toDigit(char ch, int index) {
int digit = Character.digit(ch, 16);
if (digit == -1) {
throw new RuntimeException("Illegal hexadecimal character " + ch + " at index " + index);
}
return digit;
}
public static String toHexString(byte[] bs) {
return new String(encodeHex(bs));
}
public static byte[] hexString2Bytes(String hex) {
return decodeHex(hex.toCharArray());
}
public static byte[] chars2Bytes(char[] bs) {
return decodeHex(bs);
}
}
\ No newline at end of file
package com.example.blu.toys.ble.agreement;
import java.text.SimpleDateFormat;
import java.util.Date;
public class TrafficLightBean {
/**
* 固定头 1字节
*/
private byte begin=0x24;
/**
* 长度 1字节
*/
private byte length=0x11;
/**
* 协议编号 01:关机协议 02:暂停于继续协议 1字节
*/
private byte cmd;
/**
* 手机时间 yyMMddHHssmm 6个字节
*/
private byte[] phoneTime;
/**
* 暂停继续 0:暂停 1:继续 1字节
*/
private byte suspendAndContinue;
/**
* 剩余时间(小端) 秒为单位 2字节
*/
private byte[] timeRemaining;
/**
* 亮度调节 0-100 1字节
*/
private byte brightness;
/**
* 开机声音编号 1-20 1字节
*/
private byte openSoundNo;
/**
* 关机声音编号 1-20 1字节
*/
private byte closeSoundNo;
/**
* 红绿灯变更方式 0: 由绿变红 1:由红变黄 1字节
*/
private byte trafficLightUpdateSet;
/**
* 警报开关 0:关 1:开 1字节
*/
private byte alarm;
private byte key;
/**
*
* @param protocolNo 协议编号
* @param suspendAndContinue 暂停或者继续
* @param timeRemaining 剩余时间 毫秒
* @param brightness 亮度值 0-100
* @param openSoundNo 开机声音编号
* @param closeSoundNo 关机声音编号
* @param trafficLightUpdateSet 红绿灯变更方式
* @param alarm 报警状态
*/
public TrafficLightBean(Integer protocolNo,Integer suspendAndContinue,Integer timeRemaining,Integer brightness,Integer openSoundNo,Integer closeSoundNo,Integer trafficLightUpdateSet,Integer alarm){
this.cmd= BitOperator.integerTo1Byte(protocolNo);
this.suspendAndContinue=BitOperator.integerTo1Byte(suspendAndContinue);
this.timeRemaining=BitOperator.integerTo2Bytes(timeRemaining);
this.brightness=BitOperator.integerTo1Byte(brightness);
this.openSoundNo=BitOperator.integerTo1Byte(openSoundNo);
this.closeSoundNo=BitOperator.integerTo1Byte(closeSoundNo);
this.trafficLightUpdateSet=BitOperator.integerTo1Byte(trafficLightUpdateSet);
this.alarm=BitOperator.integerTo1Byte(alarm);
SimpleDateFormat format= new SimpleDateFormat("yyMMddHHmmss");
String phoneTime= format.format(new Date());
this.phoneTime= BCD8421Operater.string2Bcd(phoneTime);
String yy= phoneTime.substring(0,2);
String MM= phoneTime.substring(2,4);
String dd= phoneTime.substring(4,6);
String HH= phoneTime.substring(6,8);
String mm= phoneTime.substring(8,10);
String ss= phoneTime.substring(10,12);
Integer bo1=BCD8421Operater.string2Bcd(yy)[0]+BCD8421Operater.string2Bcd(HH)[0];
Integer bo2=BCD8421Operater.string2Bcd(MM)[0]^BCD8421Operater.string2Bcd(mm)[0];
Integer bo3=BCD8421Operater.string2Bcd(dd)[0]+BCD8421Operater.string2Bcd(ss)[0];
Integer key=(bo1^bo2)+bo3;
this.key=BitOperator.integerTo1Byte(key);
System.out.println("时间:"+phoneTime);
System.out.println("key 10进制:"+key);
System.out.println("key byte:"+this.key);
}
public byte[] toByte(){
//数据要加密的
byte[] resData=new byte[17];
resData[0]=this.begin;
resData[1]=this.length;
resData[2]=BitOperator.integerTo1Byte(this.cmd+this.key);
resData[3]=this.phoneTime[0];//1 不需要加密
resData[4]=this.phoneTime[1];//2 不需要加密
resData[5]=this.phoneTime[2];//3 不需要加密
resData[6]=this.phoneTime[3];//4 不需要加密
resData[7]=this.phoneTime[4];//5 不需要急吗
resData[8]=this.phoneTime[5];//6 不需要加密
resData[9]=BitOperator.integerTo1Byte(this.suspendAndContinue+this.key);
resData[10]=BitOperator.integerTo1Byte(this.timeRemaining[0]+this.key);
resData[11]=BitOperator.integerTo1Byte(this.timeRemaining[1]+this.key);
resData[12]=BitOperator.integerTo1Byte(this.brightness+this.key);
resData[13]=BitOperator.integerTo1Byte(this.openSoundNo+this.key);
resData[14]=BitOperator.integerTo1Byte(this.closeSoundNo+this.key);
resData[15]=BitOperator.integerTo1Byte(this.trafficLightUpdateSet+this.key);
resData[16]=BitOperator.integerTo1Byte(this.alarm+this.key);
return resData;
}
public static void main(String[] args) {
TrafficLightBean trafficLightBean=new TrafficLightBean(2,0,
300,100,10,20,01,01);
System.out.println(HexStringUtils.toHexString(trafficLightBean.toByte()));
// System.out.printf("00000000");
}
}
\ No newline at end of file
package com.example.blu.toys.ble.inter;
import android.bluetooth.BluetoothDevice;
/**
*@date 2019/7/23
*@desc 蓝牙配对监听
*
*/
public interface IBTBoudListener {
/**
* 设备配对状态改变
* int BOND_NONE = 10; //配对没有成功
* int BOND_BONDING = 11; //配对中
* int BOND_BONDED = 12; //配对成功
*/
void onBondStateChange(BluetoothDevice dev);
}
package com.example.blu.toys.ble.inter;
import android.bluetooth.BluetoothDevice;
import java.util.List;
/**
* @date 2019/7/23
* @desc 蓝牙连接监听
*/
public interface IBTConnectListener {
void onConnecting(BluetoothDevice bluetoothDevice);//连接中
void onConnected(BluetoothDevice bluetoothDevice);//连接成功
void onDisConnecting(BluetoothDevice bluetoothDevice);//断开中
void onDisConnect(BluetoothDevice bluetoothDevice);//断开
void onConnectedDevice(List<BluetoothDevice> devices);//已连接的设备
}
package com.example.blu.toys.ble.inter;
import android.bluetooth.BluetoothDevice;
import java.util.List;
/**
* @desc 蓝牙搜索监听
*/
public interface IBTScanListener {
/**
* 搜索开始
*/
void onScanStart();
/**
* 搜索结束
*
* @param deviceList
*/
void onScanStop(List<BluetoothDevice> deviceList);
/**
* 发现新设备
*
* @param device
*/
void onFindDevice(BluetoothDevice device);
}
package com.example.blu.toys.ble.inter;
/**
* @date 2019/7/23
* @desc 蓝牙状态监听(开关 、 配对 、 扫描 、 连接)
*/
public interface IBTStateListener {
/**
* 蓝牙开关状态
* int STATE_OFF = 10; //蓝牙关闭
* int STATE_ON = 12; //蓝牙打开
* int STATE_TURNING_OFF = 13; //蓝牙正在关闭
* int STATE_TURNING_ON = 11; //蓝牙正在打开
*/
void onStateChange(int state);
}
package com.example.blu.toys.ble.inter;
import android.bluetooth.BluetoothDevice;
import android.content.Context;
import java.util.Set;
/**
* @desc 蓝牙辅助统一接口
*/
public interface IBluetoothHelper {
void init(Context context);
boolean open();//打开蓝牙
boolean close();//关闭蓝牙
boolean startDiscovery();//搜索蓝牙
boolean stopDiscovery();//停止搜索蓝牙
String getName();//获取本地蓝牙名称
boolean setName(String name);//设置蓝牙的名称
String getAddress();//获取本地蓝牙地址
boolean isEnable();//蓝牙是否可用,即是否打开
boolean isSupport();//是否支持蓝牙
Set<BluetoothDevice> getBondedDevices();//获取以配对设备
boolean createBond(BluetoothDevice device);//配对
boolean removeBond(BluetoothDevice device);//取消配对
boolean connect(BluetoothDevice device);//连接设备
boolean disconnect(BluetoothDevice device);//断开设备
void destroy();
void getConnectedDevices();//获取已连接的设备
boolean isConnected(BluetoothDevice device);//是否连接
boolean setDiscoverableTimeout(int timeout);//设备可见时间
void setBTStateListener(IBTStateListener btStateListener);//蓝牙状态监听(开关监听)
void setBTScanListener(IBTScanListener btScanListener);//蓝牙搜索监听
void setBTBindListener(IBTBoudListener btBindListener);//蓝牙绑定监听
void setBTConnectListener(IBTConnectListener btConnectListener);//设置连接监听
}
package com.example.blu.toys.ble.receiver;
import android.bluetooth.BluetoothAdapter;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import com.blankj.utilcode.util.LogUtils;
import com.clj.fastble.BleManager;
import com.clj.fastble.callback.BleScanCallback;
import com.clj.fastble.data.BleDevice;
import java.util.List;
/**
* 作者: 程冲
* 时间: 2018/3/26.
*/
public class BluetoothOpenAndClose extends BroadcastReceiver {
@Override
public void onReceive(final Context context, Intent intent) {
String action = intent.getAction();
if (action.equals(BluetoothAdapter.ACTION_STATE_CHANGED)) {
int state = intent.getIntExtra(BluetoothAdapter.EXTRA_STATE,
BluetoothAdapter.ERROR);
switch (state) {
case BluetoothAdapter.STATE_OFF:
LogUtils.e("蓝牙断开");
break;
case BluetoothAdapter.STATE_TURNING_OFF:
LogUtils.d("手机蓝牙正在关闭");
break;
case BluetoothAdapter.STATE_ON:
LogUtils.d("手机蓝牙开启");
//
// BleScanRuleConfig scanRuleConfig = new BleScanRuleConfig.Builder()
// .setServiceUuids(serviceUuids)
// //.setDeviceName(true, names)
// //.setDeviceMac(mac)
// .setAutoConnect(false)
// .setScanTimeOut(10000)
// .build();
//BleManager.getInstance().initScanRule(scanRuleConfig);
break;
case BluetoothAdapter.STATE_TURNING_ON:
LogUtils.d("STATE_TURNING_ON 手机蓝牙正在开启");
break;
}
}
}
}
package com.example.blu.toys.ble.receiver;
@SuppressWarnings("all")
public class HexUtil {
private static final char[] DIGITS_LOWER = {'0', '1', '2', '3', '4', '5',
'6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'};
private static final char[] DIGITS_UPPER = {'0', '1', '2', '3', '4', '5',
'6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'};
public static char[] encodeHex(byte[] data) {
return encodeHex(data, true);
}
public static char[] encodeHex(byte[] data, boolean toLowerCase) {
return encodeHex(data, toLowerCase ? DIGITS_LOWER : DIGITS_UPPER);
}
protected static char[] encodeHex(byte[] data, char[] toDigits) {
if (data == null)
return null;
int l = data.length;
char[] out = new char[l << 1];
for (int i = 0, j = 0; i < l; i++) {
out[j++] = toDigits[(0xF0 & data[i]) >>> 4];
out[j++] = toDigits[0x0F & data[i]];
}
return out;
}
public static String encodeHexStr(byte[] data) {
return encodeHexStr(data, true);
}
public static String encodeHexStr(byte[] data, boolean toLowerCase) {
return encodeHexStr(data, toLowerCase ? DIGITS_LOWER : DIGITS_UPPER);
}
protected static String encodeHexStr(byte[] data, char[] toDigits) {
return new String(encodeHex(data, toDigits));
}
public static String formatHexString(byte[] data) {
return formatHexString(data, false);
}
public static String formatHexString(byte[] data, boolean addSpace) {
if (data == null || data.length < 1)
return null;
StringBuilder sb = new StringBuilder();
for (int i = 0; i < data.length; i++) {
String hex = Integer.toHexString(data[i] & 0xFF);
if (hex.length() == 1) {
hex = '0' + hex;
}
sb.append(hex);
if (addSpace)
sb.append(" ");
}
return sb.toString().trim();
}
public static byte[] decodeHex(char[] data) {
int len = data.length;
if ((len & 0x01) != 0) {
throw new RuntimeException("Odd number of characters.");
}
byte[] out = new byte[len >> 1];
// two characters form the hex value.
for (int i = 0, j = 0; j < len; i++) {
int f = toDigit(data[j], j) << 4;
j++;
f = f | toDigit(data[j], j);
j++;
out[i] = (byte) (f & 0xFF);
}
return out;
}
protected static int toDigit(char ch, int index) {
int digit = Character.digit(ch, 16);
if (digit == -1) {
throw new RuntimeException("Illegal hexadecimal character " + ch
+ " at index " + index);
}
return digit;
}
public static byte[] hexStringToBytes(String hexString) {
if (hexString == null || hexString.equals("")) {
return null;
}
hexString = hexString.toUpperCase();
int length = hexString.length() / 2;
char[] hexChars = hexString.toCharArray();
byte[] d = new byte[length];
for (int i = 0; i < length; i++) {
int pos = i * 2;
d[i] = (byte) (charToByte(hexChars[pos]) << 4 | charToByte(hexChars[pos + 1]));
}
return d;
}
public static byte charToByte(char c) {
return (byte) "0123456789ABCDEF".indexOf(c);
}
public static String extractData(byte[] data, int position) {
return HexUtil.formatHexString(new byte[]{data[position]});
}
/**
* 转换阿斯克码表
*
* @param value
* @return
*/
public static String stringToAscii(String value) {
StringBuffer sbu = new StringBuffer();
char[] chars = value.toCharArray();
for (int i = 0; i < chars.length; i++) {
if (i != chars.length - 1) {
sbu.append(Integer.toHexString(chars[i]));
} else {
sbu.append(Integer.toHexString(chars[i]));
}
}
return sbu.toString();
}
/**
* 转换成16进制
*/
public static String bytes2hex02(byte[] bytes) {
StringBuilder sb = new StringBuilder();
String tmp = null;
for (byte b : bytes) {
// 将每个字节与0xFF进行与运算,然后转化为10进制,然后借助于Integer再转化为16进制
tmp = Integer.toHexString(0xFF & b);
if (tmp.length() == 1)// 每个字节8为,转为16进制标志,2个16进制位
tmp = "0" + tmp;
sb.append(tmp);
}
return sb.toString();
}
/**
* String 转换二进制
*
* @param str
* @return
*/
public static byte[] toBytes(String str) {
if (str == null || str.trim().equals("")) {
return new byte[0];
}
byte[] bytes = new byte[str.length() / 2];
for (int i = 0; i < str.length() / 2; i++) {
String subStr = str.substring(i * 2, i * 2 + 2);
bytes[i] = (byte) Integer.parseInt(subStr, 16);
}
return bytes;
}
}
package com.example.blu.toys.ble.receiver;
import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothGatt;
import com.blankj.utilcode.util.LogUtils;
import com.clj.fastble.BleManager;
import com.clj.fastble.callback.BleGattCallback;
import com.clj.fastble.callback.BleScanCallback;
import com.clj.fastble.callback.BleWriteCallback;
import com.clj.fastble.data.BleDevice;
import com.clj.fastble.exception.BleException;
import com.clj.fastble.scan.BleScanRuleConfig;
import com.example.blu.toys.app.App;
import com.example.blu.toys.ble.Notify;
import com.example.blu.toys.utils.SpUtils;
import org.greenrobot.eventbus.EventBus;
import java.util.List;
@SuppressWarnings("all")
public class VehiclePlay {
String UUID_SERVICE = "00001812-0000-1000-8000-00805f9b34fb";
String UUID_WRITE = "0000180f-0000-1000-8000-00805f9b34fb";
String UUID_NOTIFY = "0000ae02-0000-1000-8000-00805f9b34fb";
private static VehiclePlay instance;
private SpUtils mSpUtils;
public static VehiclePlay getInstance() {
if (instance == null) {
synchronized (VehiclePlay.class) {
if (instance == null) {
instance = new VehiclePlay();
}
}
}
return instance;
}
private VehiclePlay() {
mSpUtils = SpUtils.getSpUtils(App.getInstance());
}
public void scanBle() {
BleScanRuleConfig scanRuleConfig = new BleScanRuleConfig.Builder()
.setAutoConnect(false)
.setScanTimeOut(30000)
.build();
BleManager.getInstance().initScanRule(scanRuleConfig);
BleManager.getInstance().scan(new BleScanCallback() {
@Override
public void onScanStarted(boolean success) {
LogUtils.e("===========0000");
}
@Override
public void onScanning(BleDevice bleDevice) {
}
@Override
public void onScanFinished(List<BleDevice> scanResultList) {
EventBus.getDefault().post(scanResultList);
}
});
}
/**
* @param mac 地址
*/
public void connectedCac(String mac) {
}
/**
* @param name 名字
*/
public void connectedName(String name) {
}
/**
* @param bleDevice 设备
*/
public void connectedBleDevice(BleDevice bleDevice) {
BleManager.getInstance().connect(bleDevice, new BleGattCallback() {
//开始链接
@Override
public void onStartConnect() {
}
//链接失败
@Override
public void onConnectFail(BleDevice bleDevice, BleException exception) {
}
//链接成功
@Override
public void onConnectSuccess(BleDevice bleDevice, BluetoothGatt gatt, int status) {
}
//关闭链接
@Override
public void onDisConnected(boolean isActiveDisConnected, BleDevice device, BluetoothGatt gatt, int status) {
}
});
}
/**
* 暂停
*/
public void sendCance(BleDevice bleDevice, byte[] data) {
BleManager.getInstance().write(
bleDevice,
UUID_SERVICE,
UUID_WRITE,
data,
new BleWriteCallback() {
@Override
public void onWriteSuccess(int current, int total, byte[] justWrite) {
}
@Override
public void onWriteFailure(BleException exception) {
}
});
}
/**
* 开始/继续
*/
public void sendStard(BleDevice bleDevice, byte[] data) {
BleManager.getInstance().write(
bleDevice,
UUID_SERVICE,
UUID_WRITE,
data,
new BleWriteCallback() {
@Override
public void onWriteSuccess(int current, int total, byte[] justWrite) {
}
@Override
public void onWriteFailure(BleException exception) {
}
});
}
/**
* 暂停
*/
public void sendPause(BleDevice bleDevice, byte[] data) {
BleManager.getInstance().write(
bleDevice,
UUID_SERVICE,
UUID_WRITE,
data,
new BleWriteCallback() {
@Override
public void onWriteSuccess(int current, int total, byte[] justWrite) {
}
@Override
public void onWriteFailure(BleException exception) {
}
});
}
/**
* 取消扫描
*/
public void canceScan() {
BleManager.getInstance().cancelScan();
}
/**
* 蓝牙是否连接
*
* @rturn
*/
public boolean isConnected(BleDevice bleDevice) {
return BleManager.getInstance().isConnected(bleDevice);
}
/**
* 断开蓝牙链接
*/
public void closeBle(BleDevice bleDevice) {
BleManager.getInstance().disconnect(bleDevice);
}
/**
* 是否打开蓝牙
*
* @return
*/
public boolean isBleOpen() {
BluetoothAdapter adapter = BluetoothAdapter.getDefaultAdapter();
return adapter == null ? false : true;
}
}
package com.example.blu.toys.utils;
import android.content.Context;
import android.content.DialogInterface;
import androidx.appcompat.app.AlertDialog;
/**
* Created by david on 2016/8/26.
*
* 使用观察者模式来实现确定结果回调
*
* 调用方式:
* AlertDialogUtil dialogUtil = new AlertDialogUtil(context);
* dialogUtil.showDialog("确定删除已上传的图片?");
* dialogUtil.setDialogPositiveButtonListener(new AlertDialogUtil.DialogPositiveButtonListener() {
*
* @Override
* public void setDialogPositiveButtonListener() {
*
* }
* });
*/
public class AlertDialogUtil {
public Context context;
private DialogPositiveButtonListener listener;
public AlertDialogUtil(Context context) {
this.context = context;
}
public void showDialog(String message) {
AlertDialog.Builder dialog = new AlertDialog.Builder(context);
dialog.setMessage(message);
dialog.setCancelable(false);//点击框外取消
dialog.setPositiveButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
if (listener != null) {
listener.setDialogPositiveButtonListener();
}
}
});
dialog.setNegativeButton("取消", null);
dialog.show();
}
public void setDialogPositiveButtonListener(DialogPositiveButtonListener listener) {
this.listener = listener;
}
public interface DialogPositiveButtonListener {
void setDialogPositiveButtonListener();
}
}
package com.example.blu.toys.utils;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.text.DecimalFormat;
import java.text.NumberFormat;
public class BigDecimalUtils {
public static final int MONEY_POINT = 2; // 货币保留两位小数
/**
* 格式化精度
*
* @param v
* @param point
* 小数位数
* @return double
*/
public static Double format(double v, int point) {
BigDecimal b = new BigDecimal(v);
return b.setScale(point, BigDecimal.ROUND_HALF_UP).doubleValue();
}
public static String formatToString(double v, int point) {
BigDecimal b = new BigDecimal(v);
return b.setScale(point, BigDecimal.ROUND_HALF_UP).toString();
}
/**
*
* @param v
* @param point
* @return
*/
public static Double formatRoundUp(double v, int point) {
NumberFormat nf = NumberFormat.getInstance();
nf.setRoundingMode(RoundingMode.HALF_UP);//设置四舍五入
nf.setMinimumFractionDigits(point);//设置最小保留几位小数
nf.setMaximumFractionDigits(point);//设置最大保留几位小数
return Double.valueOf(nf.format(v));
}
/**
* 格式化金额。带千位符
*
* @param v
* @return
*/
public static String moneyFormat(Double v) {
DecimalFormat formater = new DecimalFormat();
formater.setMaximumFractionDigits(2);
formater.setGroupingSize(3);
formater.setRoundingMode(RoundingMode.FLOOR);
return formater.format(v.doubleValue());
}
/**
* 带小数的显示小数。不带小数的显示整数
* @param d
* @return
*/
public static String doubleTrans(Double d) {
if (Math.round(d) - d == 0) {
return String.valueOf((long) d.doubleValue());
}
return String.valueOf(d);
}
/**
* BigDecimal 相加
*
* @param v1
* @param v2
* @return double
*/
public static Double add(double v1, double v2) {
BigDecimal n1 = new BigDecimal(Double.toString(v1));
BigDecimal n2 = new BigDecimal(Double.toString(v2));
return n1.add(n2).doubleValue();
}
/**
* BigDecimal 相减
*
* @param v1
* @param v2
* @return double
*/
public static Double subtract(double v1, double v2) {
BigDecimal n1 = new BigDecimal(Double.toString(v1));
BigDecimal n2 = new BigDecimal(Double.toString(v2));
return n1.subtract(n2).doubleValue();
}
/**
* BigDecimal 相乘
*
* @param v1
* @param v2
* @return double
*/
public static Double multiply(double v1, double v2) {
BigDecimal n1 = new BigDecimal(Double.toString(v1));
BigDecimal n2 = new BigDecimal(Double.toString(v2));
return n1.multiply(n2).doubleValue();
}
/**
* BigDecimal 相除
*
* @param v1
* @param v2
* @return double
*/
public static Double divide(double v1, double v2) {
BigDecimal n1 = new BigDecimal(Double.toString(v1));
BigDecimal n2 = new BigDecimal(Double.toString(v2));
return n1.divide(n2, 10, BigDecimal.ROUND_HALF_UP).doubleValue();
}
/**
* 比较大小 小于0:v1 < v2 大于0:v1 > v2 等于0:v1 = v2
*
* @param v1
* @param v2
* @return
*/
public static int compare(double v1, double v2) {
BigDecimal n1 = new BigDecimal(Double.toString(v1));
BigDecimal n2 = new BigDecimal(Double.toString(v2));
return n1.compareTo(n2);
}
}
\ No newline at end of file
package com.example.blu.toys.utils;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class DateUtils {
private static SimpleDateFormat sf;
private static SimpleDateFormat sdf;
/**
* 获取系统时间 格式为:"yyyy/MM/dd "
**/
public static String getCurrentDate() {
Date d = new Date();
sf = new SimpleDateFormat("yyyy年MM月dd日");
return sf.format(d);
}
/**
* 获取系统时间 格式为:"yyyy "
**/
public static String getCurrentYear() {
Date d = new Date();
sf = new SimpleDateFormat("yyyy");
return sf.format(d);
}
/**
* 获取系统时间 格式为:"MM"
**/
public static String getCurrentMonth() {
Date d = new Date();
sf = new SimpleDateFormat("MM");
return sf.format(d);
}
/**
* 获取系统时间 格式为:"dd"
**/
public static String getCurrentDay() {
Date d = new Date();
sf = new SimpleDateFormat("dd");
return sf.format(d);
}
/**
* 获取当前时间戳
*
* @return
*/
public static long getCurrentTime() {
long d = new Date().getTime() / 1000;
return d;
}
/**
* 时间戳转换成字符窜
*/
public static String getDateToString(long time) {
Date d = new Date(time * 1000);
sf = new SimpleDateFormat("yyyy年MM月dd日");
return sf.format(d);
}
/**
* 时间戳中获取年
*/
public static String getYearFromTime(long time) {
Date d = new Date(time * 1000);
sf = new SimpleDateFormat("yyyy");
return sf.format(d);
}
/**
* 时间戳中获取月
*/
public static String getMonthFromTime(long time) {
Date d = new Date(time * 1000);
sf = new SimpleDateFormat("MM");
return sf.format(d);
}
/**
* 时间戳中获取日
*/
public static String getDayFromTime(long time) {
Date d = new Date(time * 1000);
sf = new SimpleDateFormat("dd");
return sf.format(d);
}
/**
* 将字符串转为时间戳
*/
public static long getStringToDate(String time) {
sdf = new SimpleDateFormat("yyyy年MM月dd日");
Date date = new Date();
try {
date = sdf.parse(time);
} catch (ParseException e) {
e.printStackTrace();
}
return date.getTime();
}
}
\ No newline at end of file
package com.example.blu.toys.utils;
import android.text.TextUtils;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.serializer.SerializerFeature;
import java.util.Map;
public class JsonObjectUtil {
/**
* object转换成JSON
* @param object
* @return
*/
public static String convertMapToJson(Object object) {
if (null == object) {
return null;
}
return JSON.toJSONString(object,
SerializerFeature.DisableCircularReferenceDetect);
}
/**
* JSON转换成Map
* @param json
* @return
*/
public static Map<String, Object> convertJsonToMap(String json) {
if (TextUtils.isEmpty(json)) {
return null;
}
JSONArray jsonarray = JSON.parseArray(json);
Map<String, Object> map = null;
if (jsonarray.size() > 1) {
JSONObject jsonObject = jsonarray.getJSONObject(1);
map = (Map<String, Object>) JSONObject.toJavaObject(jsonObject, Map.class);
}
return map;
}
public static boolean isEmpty(JSONObject json) {
return json == null || json.isEmpty();
}
public static boolean isEmpty(JSONArray array) {
return array == null || array.isEmpty();
}
public static JSONObject getDataResult(JSONObject json) {
JSONObject data = null;
JSONObject tempData = json.getJSONObject("data");
if (tempData == null || tempData.isEmpty()) {
return null;
}
if (tempData.containsKey("data")) {
try {
data = tempData.getJSONObject("data");
} catch (Exception e) {
data = null;
}
}
return data;
}
}
\ No newline at end of file
package com.example.blu.toys.utils;
import android.util.Log;
import java.io.IOException;
import okhttp3.FormBody;
import okhttp3.Interceptor;
import okhttp3.Request;
public class LoggingInterceptor implements Interceptor {
public static String TAG = "LogInterceptor";
@Override
public okhttp3.Response intercept(Chain chain) throws IOException {
Request request = chain.request();
long startTime = System.currentTimeMillis();
okhttp3.Response response = chain.proceed(chain.request());
long endTime = System.currentTimeMillis();
long duration = endTime - startTime;
okhttp3.MediaType mediaType = response.body().contentType();
String content = response.body().string();
Log.d(TAG, "\n");
Log.d(TAG, "----------Start----------------");
Log.d(TAG, "| " + request.toString());
String method = request.method();
if ("POST".equals(method)) {
StringBuilder sb = new StringBuilder();
if (request.body() instanceof FormBody) {
FormBody body = (FormBody) request.body();
for (int i = 0; i < body.size(); i++) {
sb.append(body.encodedName(i) + "=" + body.encodedValue(i) + ",");
}
sb.delete(sb.length() - 1, sb.length());
Log.d(TAG, "| RequestParams:{" + sb.toString() + "}");
}
}
Log.d(TAG, "| Response:" + content);
Log.d(TAG, "----------End:" + duration + "毫秒----------");
return response.newBuilder()
.body(okhttp3.ResponseBody.create(mediaType, content))
.build();
}
}
\ No newline at end of file
package com.example.blu.toys.utils;
import java.math.BigDecimal;
public class MathDataUtil {
public static BigDecimal stripTrailingZeros(double d) {//去除double尾巴的0
return new BigDecimal(d).stripTrailingZeros();
}
}
\ No newline at end of file
package com.example.blu.toys.utils;
public class NumberUtils {
public static String iTofixed(Double values, int numbers) {
int nums = numbers - 0 + 1;
int base = 10;
double redValue= Math.floor(values * base) / base;
String redText = BigDecimalUtils.formatToString(redValue, numbers);
return redText;
}
}
package com.example.blu.toys.utils;
import android.text.TextUtils;
import java.util.regex.Pattern;
/**
* Created by Administrator on 2016/8/10.
*/
public class RegularUtils {
private RegularUtils() {
throw new UnsupportedOperationException("u can't fuck me...");
}
/**
* 验证手机号(简单)
*/
private static final String REGEX_MOBILE_SIMPLE = "^[1]\\d{10}$";
/**
* 验证手机号(精确)
* <p>
* <p>移动:134(0-8)、135、136、137、138、139、147、150、151、152、157、158、159、178、182、183、184、187、188
* <p>联通:130、131、132、145、155、156、175、176、185、186
* <p>电信:133、153、173、177、180、181、189
* <p>全球星:1349
* <p>虚拟运营商:170
*/
private static final String REGEX_MOBILE_EXACT = "^((13[0-9])|(14[5,7])|(15[0-3,5-8])|(17[0,3,5-8])|(18[0-9])|(147))\\d{8}$";
/**
* 验证座机号,正确格式:xxx/xxxx-xxxxxxx/xxxxxxxx/
*/
private static final String REGEX_TEL = "^0\\d{2,3}[- ]?\\d{7,8}";
/**
* 验证邮箱
*/
private static final String REGEX_EMAIL = "^\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*$";
/**
* 验证url
*/
private static final String REGEX_URL = "http(s)?://([\\w-]+\\.)+[\\w-]+(/[\\w-./?%&=]*)?";
/**
* 验证汉字
*/
private static final String REGEX_CHZ = "^[\\u4e00-\\u9fa5]+$";
/**
* 验证用户名,取值范围为a-z,A-Z,0-9,"_",汉字,不能以"_"结尾,用户名必须是6-20位
*/
private static final String REGEX_USERNAME = "^[\\w\\u4e00-\\u9fa5]{6,20}(?<!_)$";
/**
* 验证IP地址
*/
private static final String REGEX_IP = "((2[0-4]\\d|25[0-5]|[01]?\\d\\d?)\\.){3}(2[0-4]\\d|25[0-5]|[01]?\\d\\d?)";
//If u want more please visit http://toutiao.com/i6231678548520731137/
/**
* @param string 待验证文本
* @return 是否符合手机号(简单)格式
*/
public static boolean isMobileSimple(String string) {
return isMatch(REGEX_MOBILE_SIMPLE, string);
}
/**
* @param string 待验证文本
* @return 是否符合手机号(精确)格式
*/
public static boolean isMobileExact(String string) {
return isMatch(REGEX_MOBILE_EXACT, string);
}
/**
* @param string 待验证文本
* @return 是否符合座机号码格式
*/
public static boolean isTel(String string) {
return isMatch(REGEX_TEL, string);
}
/**
* @param string 待验证文本
* @return 是否符合邮箱格式
*/
public static boolean isEmail(String string) {
return isMatch(REGEX_EMAIL, string);
}
/**
* @param string 待验证文本
* @return 是否符合网址格式
*/
public static boolean isURL(String string) {
return isMatch(REGEX_URL, string);
}
/**
* @param string 待验证文本
* @return 是否符合汉字
*/
public static boolean isChz(String string) {
return isMatch(REGEX_CHZ, string);
}
/**
* @param string 待验证文本
* @return 是否符合用户名
*/
public static boolean isUsername(String string) {
return isMatch(REGEX_USERNAME, string);
}
/**
* @param regex 正则表达式字符串
* @param string 要匹配的字符串
* @return 如果str 符合 regex的正则表达式格式,返回true, 否则返回 false;
*/
public static boolean isMatch(String regex, String string) {
return !TextUtils.isEmpty(string) && Pattern.matches(regex, string);
}
}
package com.example.blu.toys.utils;
import android.content.Context;
import android.content.SharedPreferences;
import android.text.TextUtils;
import com.google.gson.Gson;
import com.google.gson.JsonArray;
import com.google.gson.JsonElement;
import com.google.gson.JsonParser;
import java.util.ArrayList;
import java.util.List;
/**
* SP数据操作工具类
*
* @author ZhongDaFeng
*/
public class SpUtils {
private static final String SP_FILE_KEY = "RxMvp";
private static SpUtils spUtil;
private static SharedPreferences sp;
private SpUtils(Context context, String fileKey, int mode) {
sp = context.getSharedPreferences(fileKey, mode);
}
public static SpUtils getSpUtil(Context context, String fileKey, int mode) {
if (spUtil == null) {
spUtil = new SpUtils(context, fileKey, mode);
} else {
sp = context.getSharedPreferences(fileKey, mode);
}
return spUtil;
}
public static SpUtils getSpUtils(Context context) {
return getSpUtil(context, SP_FILE_KEY, Context.MODE_PRIVATE);
}
public void putSPValue(String valueKey, String value) {
sp.edit().putString(valueKey, value).commit();
}
public void putSPValue(String valueKey, int value) {
sp.edit().putInt(valueKey, value).apply();
}
public void putSPValue(String valueKey, float value) {
sp.edit().putFloat(valueKey, value).apply();
}
public void putSPValue(String valueKey, boolean value) {
sp.edit().putBoolean(valueKey, value).apply();
}
public void putSPValue(String valueKey, long value) {
sp.edit().putLong(valueKey, value).apply();
}
public int getSPValue(String valueKey, int value) {
return sp.getInt(valueKey, value);
}
public float getSPValue(String valueKey, float value) {
return sp.getFloat(valueKey, value);
}
public String getSPValue(String valueKey, String value) {
return sp.getString(valueKey, value);
}
public boolean getSPValue(String valueKey, boolean value) {
return sp.getBoolean(valueKey, value);
}
public long getSPValue(String valueKey, long value) {
return sp.getLong(valueKey, value);
}
public void remove(String key) {
sp.edit().remove(key).apply();
}
public void clear() {
sp.edit().clear().apply();
}
/**
* 保存List
*/
public <T> void putSPList(String key, List<T> list) {
if (null == list || list.size() <= 0) {
sp.edit().putString(key, "").apply();
return;
}
Gson gson = new Gson();
//转换成json数据,再保存
String strJson = gson.toJson(list);
sp.edit().putString(key, strJson).apply();
}
/**
* 获取List
*/
public <T> List<T> getSPList(String tag, Class<T> cls) {
List<T> list = new ArrayList<T>();
String strJson = sp.getString(tag, null);
if (TextUtils.isEmpty(strJson)) {
return list;
}
Gson gson = new Gson();
JsonArray array = new JsonParser().parse(strJson).getAsJsonArray();
for (JsonElement jsonElement : array) {
list.add(gson.fromJson(jsonElement, cls));
}
return list;
}
}
package com.example.blu.toys.utils;
import android.content.Context;
import android.graphics.MaskFilter;
import android.text.Layout;
import android.text.SpannableStringBuilder;
import android.text.Spanned;
import android.text.style.AbsoluteSizeSpan;
import android.text.style.AlignmentSpan;
import android.text.style.BackgroundColorSpan;
import android.text.style.ForegroundColorSpan;
import android.text.style.ImageSpan;
import android.text.style.MaskFilterSpan;
import android.text.style.RelativeSizeSpan;
import android.text.style.StrikethroughSpan;
import android.text.style.StyleSpan;
import android.text.style.SubscriptSpan;
import android.text.style.SuperscriptSpan;
import android.text.style.TypefaceSpan;
import android.text.style.URLSpan;
import android.text.style.UnderlineSpan;
import android.widget.TextView;
import androidx.annotation.NonNull;
public final class SpanUtil {
public static SpanBuilder create() {
return new SpanBuilder();
}
public static class SpanBuilder {
private SpannableStringBuilder spanStrBuilder;
public SpanBuilder() {
spanStrBuilder = new SpannableStringBuilder("");
}
/**
* 添加文字片段
*/
public SpanBuilder addSection(CharSequence section) {
spanStrBuilder.append(section);
return this;
}
/**
* 添加字体片段
*
* @param section 要添加的文字
* @param span 任何span
* @param flag 可以是
* Spanned.SPAN_EXCLUSIVE_EXCLUSIVE 不包含 section 前后文字,最常用
* Spanned.SPAN_INCLUSIVE_EXCLUSIVE 包含 section 前面文字
* Spanned.SPAN_EXCLUSIVE_INCLUSIVE 包含 section 后面文字
* Spanned.SPAN_INCLUSIVE_INCLUSIVE 包含 section 前后文字
* ……
* @return SpanBuilder
*/
public SpanBuilder addCertainSection(String section, Object span, int flag) {
int start = spanStrBuilder.length();
spanStrBuilder.append(section);
int end = spanStrBuilder.length();
spanStrBuilder.setSpan(span, start, end, flag);
return this;
}
/**
* 添加带前景色的文字片段
*/
public SpanBuilder addForeColorSection(String section, int color) {
return addCertainSection(section, new ForegroundColorSpan(color), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
}
/**
* 添加带背景色的文字片段
*/
public SpanBuilder addBackColorSection(String section, int color) {
return addCertainSection(section, new BackgroundColorSpan(color), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
}
/**
* 添加下标
*/
public SpanBuilder addSubSection(String section) {
return addCertainSection(section, new SubscriptSpan(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
}
/**
* 添加上标
*/
public SpanBuilder addSuperSection(String section) {
return addCertainSection(section, new SuperscriptSpan(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
}
/**
* 添加下划线片段
*/
public SpanBuilder addUnderlineSection(String section) {
return addCertainSection(section, new UnderlineSpan(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
}
/**
* 添加删除线片段
*/
public SpanBuilder addStrickoutSection(String section) {
return addCertainSection(section, new StrikethroughSpan(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
}
/**
* 添加绝对大小字体片段
*/
public SpanBuilder addAbsSizeSection(String section, int size) {
return addCertainSection(section, new AbsoluteSizeSpan(size, true), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
}
/**
* 添加相对大小字体片段
*/
public SpanBuilder addRelSizeSection(String section, float proportion) {
return addCertainSection(section, new RelativeSizeSpan(proportion), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
}
/**
* 添加 url 字体片段
*/
public SpanBuilder addURLSection(String section, String url) {
return addCertainSection(section, new URLSpan(url), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
}
/**
* 添加某种风格(Style)的文字片段
*
* @param section
* @param style TypeFace.BOLD 加粗
* TypeFace.BOLD_ITALIC 加粗倾斜
* TypeFace.ITALIC 倾斜
* TypeFace.NORMAL 正常
* @return
*/
public SpanBuilder addStyleSection(String section, int style) {
return addCertainSection(section, new StyleSpan(style), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
}
/**
* 添加某种字体的文字片段
*
* @param section
* @param family The font family for this typeface. Examples include
* "monospace", "serif", and "sans-serif".
*/
public SpanBuilder addTypefaceSection(String section, String family) {
return addCertainSection(section, new TypefaceSpan(family), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
}
/**
* 添加带 Mask 的文字片段
*
* @param maskFilter BlurMaskFilter、EmbossMaskFilter
* 例://Blur a character
* new BlurMaskFilter(density*2, BlurMaskFilter.Blur.NORMAL);
* //Emboss a character
* new EmbossMaskFilter(new float[] { 1, 1, 1 }, 0.4f, 6, 3.5f);
* @return
*/
public SpanBuilder addMaskSection(String section, MaskFilter maskFilter) {
return addCertainSection(section, new MaskFilterSpan(maskFilter), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
}
private SpanBuilder onDecor(String section, boolean ignoreCase, @NonNull Which which, DecorCallback decorCallback) {
String baseStr = getString();
if (ignoreCase) {
section = section.toUpperCase();
baseStr = baseStr.toUpperCase();
}
int start = 0;
switch (which) {
case FIRST:
start = baseStr.indexOf(section);
if (start == -1) break;
decorCallback.decor(start, start + section.length());
break;
case LAST:
start = baseStr.lastIndexOf(section);
if (start == -1) break;
decorCallback.decor(start, start + section.length());
break;
case ALL:
while (true) {
start = baseStr.indexOf(section, start);
if (start == -1) break;
decorCallback.decor(start, start + section.length());
start += section.length();
}
break;
}
return this;
}
private interface DecorCallback {
void decor(int start, int end);
}
/**
* 加上前景色
*
* @param ignoreCase boolean,true 区分大小写;false, 不区分大小写
*/
public SpanBuilder setForeColor(final String section, final int color, boolean ignoreCase, @NonNull Which which) {
return onDecor(section, ignoreCase, which, new DecorCallback() {
@Override
public void decor(int start, int end) {
setForeColor(color, start, end);
}
});
}
/**
* 给最后该片段(section)加上前景色,不区分大小写
*/
public SpanBuilder setForeColor(String section, int color) {
return setForeColor(section, color, true, Which.LAST);
}
/**
* 整体加上前景色
*/
public SpanBuilder setForeColor(int color) {
return setForeColor(color, 0, spanStrBuilder.length());
}
/**
* 加上前景色
*/
public SpanBuilder setForeColor(int color, int start, int end) {
spanStrBuilder.setSpan(new ForegroundColorSpan(color), start, end, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
return this;
}
/**
* 加上背景色
*/
public SpanBuilder setBackColor(String section, final int color, boolean ignoreCase, @NonNull Which which) {
return onDecor(section, ignoreCase, which, new DecorCallback() {
@Override
public void decor(int start, int end) {
setBackColor(color, start, end);
}
});
}
/**
* 给最后一个该片段(section)加上背景色,不区分大小写
*/
public SpanBuilder setBackColor(String section, int color) {
return setBackColor(section, color, true, Which.LAST);
}
/**
* 整体加上背景色
*/
public SpanBuilder setBackColor(int color) {
return setBackColor(color, 0, spanStrBuilder.length());
}
/**
* 加上背景色
*/
public SpanBuilder setBackColor(int color, int start, int end) {
spanStrBuilder.setSpan(new BackgroundColorSpan(color), start, end, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
return this;
}
/**
* 设置为下标
*/
public SpanBuilder setAsSubscript(@NonNull String section, @NonNull Which which) {
return onDecor(section, false, which, new DecorCallback() {
@Override
public void decor(int start, int end) {
setAsSubscript(start, end);
}
});
}
/**
* 给最后一个该片段(section)设置为下标
*/
public SpanBuilder setAsSubscript(String section) {
return setAsSubscript(section, Which.LAST);
}
/**
* 整体设置为下标
*/
public SpanBuilder setAsSubscript() {
return setAsSubscript(0, spanStrBuilder.length());
}
/**
* 设置为下标
*/
public SpanBuilder setAsSubscript(int start, int end) {
spanStrBuilder.setSpan(new SubscriptSpan(), start, end, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
return this;
}
/**
* 设置为上标
*/
public SpanBuilder setAsSuperscript(String section, @NonNull Which which) {
return onDecor(section, false, which, new DecorCallback() {
@Override
public void decor(int start, int end) {
setAsSuperscript(start, end);
}
});
}
/**
* 给最后一个该片段(section)设置为上标
*/
public SpanBuilder setAsSuperscript(String section) {
return setAsSuperscript(section, Which.LAST);
}
/**
* 整体设置为上标
*/
public SpanBuilder setAsSuperscript() {
return setAsSuperscript(0, spanStrBuilder.length());
}
/**
* 设置为上标
*/
public SpanBuilder setAsSuperscript(int start, int end) {
spanStrBuilder.setSpan(new SuperscriptSpan(), start, end, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
return this;
}
/**
* 给片段设置下划线
*/
public SpanBuilder setUnderline(String section, @NonNull Which which) {
return onDecor(section, false, which, new DecorCallback() {
@Override
public void decor(int start, int end) {
setUnderline(start, end);
}
});
}
/**
* 给最后一个该片段(section)设置下划线
*/
public SpanBuilder setUnderline(String section) {
return setUnderline(section, Which.LAST);
}
/**
* 给所有文字设置下划线
*/
public SpanBuilder setUnderline() {
return setUnderline(0, spanStrBuilder.length());
}
/**
* 给片段设置下划线
*/
public SpanBuilder setUnderline(int start, int end) {
spanStrBuilder.setSpan(new UnderlineSpan(), start, end, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
return this;
}
/**
* 给片段添加删除线
*/
public SpanBuilder setStrikethrough(String section, @NonNull Which which) {
return onDecor(section, false, which, new DecorCallback() {
@Override
public void decor(int start, int end) {
setStrikethrough(start, end);
}
});
}
/**
* 给最后一个该片段(section)添加删除线
*/
public SpanBuilder setStrikethrough(String section) {
return setStrikethrough(section, Which.LAST);
}
/**
* 给所有文字添加删除线
*/
public SpanBuilder setStrikethrough() {
return setStrikethrough(0, spanStrBuilder.length());
}
/**
* 给片段添加删除线
*/
public SpanBuilder setStrikethrough(int start, int end) {
spanStrBuilder.setSpan(new StrikethroughSpan(), start, end, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
return this;
}
/**
* 给片段的字体设置绝对大小
*/
public SpanBuilder setAbsSize(String section, final int size, @NonNull Which which) {
return onDecor(section, false, which, new DecorCallback() {
@Override
public void decor(int start, int end) {
setAbsSize(size, start, end);
}
});
}
/**
* 给最后一个该片段(section)设置绝对大小
*/
public SpanBuilder setAbsSize(String section, int size) {
return setAbsSize(section, size, Which.LAST);
}
/**
* 给所有文字设置绝对大小
*/
public SpanBuilder setAbsSize(int size) {
return setAbsSize(size, 0, spanStrBuilder.length());
}
/**
* 给片段的字体设置绝对大小
*/
public SpanBuilder setAbsSize(int size, int start, int end) {
spanStrBuilder.setSpan(new AbsoluteSizeSpan(size, true), start, end, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
return this;
}
/**
* 给片段的字体设置相对大小
*/
public SpanBuilder setRelSize(String section, final float proportion, @NonNull Which which) {
return onDecor(section, false, which, new DecorCallback() {
@Override
public void decor(int start, int end) {
setRelSize(proportion, start, end);
}
});
}
/**
* 给最后一个该片段的字体设置相对大小
*/
public SpanBuilder setRelSize(String section, float proportion) {
return setRelSize(section, proportion, Which.LAST);
}
/**
* 给片段的字体设置相对大小
*/
public SpanBuilder setRelSize(float proportion) {
return setRelSize(proportion, 0, spanStrBuilder.length());
}
/**
* 给片段的字体设置相对大小
*/
public SpanBuilder setRelSize(float proportion, int start, int end) {
spanStrBuilder.setSpan(new RelativeSizeSpan(proportion), start, end, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
return this;
}
/**
* 转为 url 字体片段
*/
public SpanBuilder setAsURL(String section, final String url, @NonNull Which which) {
return onDecor(section, false, which, new DecorCallback() {
@Override
public void decor(int start, int end) {
setAsUrl(url, start, end);
}
});
}
/**
* 整体转为 url 字体片段
*/
public SpanBuilder setAsUrl(String url) {
return setAsUrl(url, 0, spanStrBuilder.length());
}
/**
* 转为 url 字体片段
*/
public SpanBuilder setAsUrl(String url, int start, int end) {
spanStrBuilder.setSpan(new URLSpan(url), start, end, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
return this;
}
/**
* 设置字体风格(粗、斜、正常)
*/
public SpanBuilder setStyle(String section, final int style, @NonNull Which which) {
return onDecor(section, false, which, new DecorCallback() {
@Override
public void decor(int start, int end) {
setStyle(style, start, end);
}
});
}
/**
* 给最后一个片段(section)设置字体风格(粗、斜、正常)
*/
public SpanBuilder setStyle(String section, int style) {
return setStyle(section, style, Which.LAST);
}
/**
* 整体设置字体风格(粗、斜、正常)
*/
public SpanBuilder setStyle(int style) {
return setStyle(style, 0, spanStrBuilder.length());
}
/**
* 设置字体风格(粗、斜、正常)
*/
public SpanBuilder setStyle(int style, int start, int end) {
spanStrBuilder.setSpan(new StyleSpan(style), start, end, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
return this;
}
/**
* 设置字体
*
* @param family "monospace", "serif", and "sans-serif"
* @param which SpanUtil.Which.FIRST、SpanUtil.Which.LAST、SpanUtil.Which.ALL
*/
public SpanBuilder setTypeface(String section, final String family, @NonNull Which which) {
return onDecor(section, false, which, new DecorCallback() {
@Override
public void decor(int start, int end) {
setTypeface(family, start, end);
}
});
}
/**
* 给最后一个该片段(section)设置字体
*/
public SpanBuilder setTypeface(String section, String family) {
return setTypeface(section, family, Which.LAST);
}
/**
* 整体设置字体
*/
public SpanBuilder setTypeface(String family) {
return setTypeface(family, 0, spanStrBuilder.length());
}
/**
* 设置字体
*/
public SpanBuilder setTypeface(String family, int start, int end) {
spanStrBuilder.setSpan(new TypefaceSpan(family), start, end, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
return this;
}
/**
* 设置 Mask
*
* @param maskFilter BlurMaskFilter、EmbossMaskFilter
* 例://Blur((使…) 变模糊) a character
* new BlurMaskFilter(density*2, BlurMaskFilter.Blur.NORMAL);
* //Emboss a character
* new EmbossMaskFilter(new float[] { 1, 1, 1 }, 0.4f, 6, 3.5f);
*/
public SpanBuilder setMask(String section, final MaskFilter maskFilter, @NonNull Which which) {
return onDecor(section, false, which, new DecorCallback() {
@Override
public void decor(int start, int end) {
setMask(maskFilter, start, end);
}
});
}
/**
* 为最后一个该片段(section)设置 Mask
*
* @param maskFilter BlurMaskFilter、EmbossMaskFilter
* 例://Blur a character
* new BlurMaskFilter(density*2, BlurMaskFilter.Blur.NORMAL);
* //Emboss a character
* new EmbossMaskFilter(new float[] { 1, 1, 1 }, 0.4f, 6, 3.5f);
*/
public SpanBuilder setMask(String section, MaskFilter maskFilter) {
return setMask(section, maskFilter, Which.LAST);
}
/**
* 为整体设置 Mask
*
* @param maskFilter BlurMaskFilter、EmbossMaskFilter
* 例://Blur a character
* new BlurMaskFilter(density*2, BlurMaskFilter.Blur.NORMAL);
* //Emboss a character
* new EmbossMaskFilter(new float[] { 1, 1, 1 }, 0.4f, 6, 3.5f);
*/
public SpanBuilder setMask(MaskFilter maskFilter) {
return setMask(maskFilter, 0, spanStrBuilder.length());
}
/**
* 设置 Mask
*
* @param maskFilter BlurMaskFilter、EmbossMaskFilter
* 例://Blur a character
* new BlurMaskFilter(density*2, BlurMaskFilter.Blur.NORMAL);
* //Emboss a character
* new EmbossMaskFilter(new float[] { 1, 1, 1 }, 0.4f, 6, 3.5f);
* @param start 开始位置
* @param end 截止位置
*/
public SpanBuilder setMask(MaskFilter maskFilter, int start, int end) {
spanStrBuilder.setSpan(new MaskFilterSpan(maskFilter), start, end, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
return this;
}
/**
* 设置对齐方式
*
* @param alignment Layout.Alignment.ALIGN_CENTER 居中
* Layout.Alignment.ALIGN_NORMAL 正常(左对齐)
* Layout.Alignment.ALIGN_OPPOSITE 反向(右对齐)
* @param start 开始位置
* @param end 截止位置
*/
public SpanBuilder setAlign(Layout.Alignment alignment, int start, int end) {
spanStrBuilder.setSpan(new AlignmentSpan.Standard(alignment), start, end, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
return this;
}
/**
* 文字后添加图片
*
* @param resId
* @return
*/
public SpanBuilder addImage(Context context, int resId) {
insertImage(context, resId, spanStrBuilder.length());
return this;
}
/**
* 文字中某位置(where)插入图片
*
* @param resId 图片资源 Id
* @param where 插入位置:占一个字的位置,整体索引增加一个
* @return
*/
public SpanBuilder insertImage(Context context, int resId, int where) {
spanStrBuilder.insert(where, " ");
spanStrBuilder.setSpan(new ImageSpan(context, resId), where, where + 1, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
return this;
}
/**
* 清除格式
*/
public SpanBuilder clearSpans() {
spanStrBuilder.clearSpans();
return this;
}
/**
* 移除格式
*/
public SpanBuilder removeSpans(@NonNull String section, @NonNull Which which) {
return onDecor(section, false, which, new DecorCallback() {
@Override
public void decor(int start, int end) {
removeSpans(start, end);
}
});
}
/**
* 移除最后一个该片段(section)的格式
*/
public SpanBuilder removeSpans(@NonNull String section) {
return removeSpans(section, Which.LAST);
}
/**
* 移除格式,从某一个下标开始
*/
public SpanBuilder removeSpans(@NonNull String section, int fromIndex) {
String baseStr = getString();
fromIndex = baseStr.indexOf(section, fromIndex);
removeSpans(fromIndex, fromIndex + section.length());
return this;
}
/**
* 移除格式
*
* @param start 开始位置
* @param end 结束位置
* @return this
*/
public SpanBuilder removeSpans(int start, int end) {
Object[] spans = spanStrBuilder.getSpans(start, end, Object.class);
for (Object span : spans) {
spanStrBuilder.removeSpan(span);
}
return this;
}
/**
* 获得当前 SpanStringBuilder 实例
*/
public SpannableStringBuilder getSpanStrBuilder() {
return spanStrBuilder;
}
/**
* 获得当前 SpanStringBuilder 中的字符串
*/
public String getString() {
return spanStrBuilder.toString();
}
/**
* 显示到控件
*
* @param textView
*/
public void showIn(TextView textView) {
textView.setText(spanStrBuilder);
spanStrBuilder.clearSpans();
spanStrBuilder.clear();
spanStrBuilder = null;
}
}
/**
* 标记第一个、最后一个、所有
*/
public enum Which {
FIRST, LAST, ALL
}
}
\ No newline at end of file
package com.example.blu.toys.utils;
import android.content.ClipData;
import android.content.ClipboardManager;
import android.content.Context;
import android.widget.EditText;
public class Utils {
public static void copy(Context context, String data) {
// 获取系统剪贴板
ClipboardManager clipboard = (ClipboardManager) context.getApplicationContext().getSystemService(Context.CLIPBOARD_SERVICE);
// 创建一个剪贴数据集,包含一个普通文本数据条目(需要复制的数据),其他的还有
// newHtmlText、
// newIntent、
// newUri、
// newRawUri
ClipData clipData = ClipData.newPlainText(null, data);
// 把数据集设置(复制)到剪贴板
clipboard.setPrimaryClip(clipData);
}
public static void paste(Context context, EditText view) {
// 获取系统剪贴板
ClipboardManager clipboard = (ClipboardManager) context.getApplicationContext().getSystemService(Context.CLIPBOARD_SERVICE);
// 获取剪贴板的剪贴数据集
ClipData clipData = clipboard.getPrimaryClip();
if (clipData != null && clipData.getItemCount() > 0) {
// 从数据集中获取(粘贴)第一条文本数据
CharSequence text = clipData.getItemAt(0).getText();
view.setText(text);
}
}
public static String getString(Context context, int resourcesId) {
return context.getApplicationContext().getResources().getString(resourcesId);
}
}
package com.example.blu.toys.view;
import android.content.Context;
import android.content.res.TypedArray;
import android.graphics.Typeface;
import android.util.AttributeSet;
import com.example.blu.toys.R;
public class TypefaceTextView extends androidx.appcompat.widget.AppCompatTextView {
public TypefaceTextView(Context context) {
this(context, null);
}
public TypefaceTextView(Context context, AttributeSet attrs) {
this(context, attrs, 0);
}
public TypefaceTextView(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
initTypefaceTextView(context, attrs);
}
private void initTypefaceTextView(Context context, AttributeSet attrs) {
TypedArray typedArray = context.obtainStyledAttributes(attrs, R.styleable.TypefaceTextView);
String type = typedArray.getString(R.styleable.TypefaceTextView_typeface);
if (null == type) {
return;
}
Typeface typeface = null;
switch (type) {
case "OCRAEXT":
typeface = Typeface.createFromAsset(context.getAssets(), "fonts/OCRAEXT.TTF");
setTypeface(typeface);
break;
case "LittleOrion":
typeface = Typeface.createFromAsset(context.getAssets(), "fonts/LittleOrion.otf");
setTypeface(typeface);
break;
case "systemDefault":
setTypeface(Typeface.DEFAULT);
break;
}
if (typedArray != null) {
typedArray.recycle();
}
typeface = null;
}
}
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="@color/black" />
<corners android:radius="150dp" />
<size
android:width="@dimen/dp_160"
android:height="@dimen/dp_40" />
<padding
android:bottom="@dimen/dp_3"
android:left="@dimen/dp_3"
android:right="@dimen/dp_3"
android:top="@dimen/dp_3" />
</shape>
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<!-- 高度40 -->
<size
android:width="@dimen/dp_25"
android:height="@dimen/dp_25" />
<!-- 圆角弧度 20 -->
<corners android:radius="@dimen/dp_20" />
<!-- 变化率 -->
<gradient
android:endColor="#ffffff"
android:startColor="#ffffff" />
<stroke
android:width="1dp"
android:color="#9e9e9e" />
</shape>
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<!-- 高度 此处设置宽度无效-->
<size android:height="@dimen/dp_25" />
<!-- 圆角弧度 15 -->
<corners android:radius="@dimen/dp_25" />
<!-- 变化率 定义从左到右的颜色不变 -->
<gradient
android:endColor="#9e9e9e"
android:startColor="#9e9e9e" />
</shape>
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<!-- 高度40 -->
<size
android:width="@dimen/dp_25"
android:height="@dimen/dp_25" />
<!-- 圆角弧度 20 -->
<corners android:radius="@dimen/dp_20" />
<!-- 变化率 -->
<gradient
android:endColor="#ffffff"
android:startColor="#ffffff" />
<stroke
android:width="1dp"
android:color="@color/deepskyblue" />
</shape>
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<!-- 高度40 -->
<size android:height="@dimen/dp_25" />
<!-- 圆角弧度 20 -->
<corners android:radius="@dimen/dp_25" />
<!-- 变化率 -->
<gradient
android:endColor="@color/deepskyblue"
android:startColor="@color/deepskyblue" />
</shape>
<vector xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:aapt="http://schemas.android.com/aapt"
android:width="108dp"
android:height="108dp"
android:viewportWidth="108"
android:viewportHeight="108">
<path android:pathData="M31,63.928c0,0 6.4,-11 12.1,-13.1c7.2,-2.6 26,-1.4 26,-1.4l38.1,38.1L107,108.928l-32,-1L31,63.928z">
<aapt:attr name="android:fillColor">
<gradient
android:endX="85.84757"
android:endY="92.4963"
android:startX="42.9492"
android:startY="49.59793"
android:type="linear">
<item
android:color="#44000000"
android:offset="0.0" />
<item
android:color="#00000000"
android:offset="1.0" />
</gradient>
</aapt:attr>
</path>
<path
android:fillColor="#FFFFFF"
android:fillType="nonZero"
android:pathData="M65.3,45.828l3.8,-6.6c0.2,-0.4 0.1,-0.9 -0.3,-1.1c-0.4,-0.2 -0.9,-0.1 -1.1,0.3l-3.9,6.7c-6.3,-2.8 -13.4,-2.8 -19.7,0l-3.9,-6.7c-0.2,-0.4 -0.7,-0.5 -1.1,-0.3C38.8,38.328 38.7,38.828 38.9,39.228l3.8,6.6C36.2,49.428 31.7,56.028 31,63.928h46C76.3,56.028 71.8,49.428 65.3,45.828zM43.4,57.328c-0.8,0 -1.5,-0.5 -1.8,-1.2c-0.3,-0.7 -0.1,-1.5 0.4,-2.1c0.5,-0.5 1.4,-0.7 2.1,-0.4c0.7,0.3 1.2,1 1.2,1.8C45.3,56.528 44.5,57.328 43.4,57.328L43.4,57.328zM64.6,57.328c-0.8,0 -1.5,-0.5 -1.8,-1.2s-0.1,-1.5 0.4,-2.1c0.5,-0.5 1.4,-0.7 2.1,-0.4c0.7,0.3 1.2,1 1.2,1.8C66.5,56.528 65.6,57.328 64.6,57.328L64.6,57.328z"
android:strokeWidth="1"
android:strokeColor="#00000000" />
</vector>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@android:id/background">
<shape>
<corners android:radius="5dp"/>
<size android:width="1px"/>
<solid android:color="@color/gray_8f"/>
</shape>
</item>
<!-- <item android:id="@android:id/secondaryProgress">-->
<!-- <clip>-->
<!-- <shape>-->
<!-- <corners android:radius="5dp"/>-->
<!-- <solid android:color="#11ce33"/>-->
<!-- </shape>-->
<!-- </clip>-->
<!-- </item>-->
<!-- <item android:id="@android:id/progress">-->
<!-- <clip>-->
<!-- <shape>-->
<!-- <corners android:radius="5dp"/>-->
<!-- <solid android:color="#d7c60e" />-->
<!-- </shape>-->
<!-- </clip>-->
<!-- </item>-->
</layer-list>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<!-- 设置按钮在不同状态下的时候,按钮不同的颜色 -->
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:state_checked="true" android:drawable="@drawable/green_thumb" />
<item android:drawable="@drawable/gray_thumb" />
</selector>
<?xml version="1.0" encoding="utf-8"?><!-- 控制Switch在不同状态下,底下下滑条的颜色 -->
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/green_track" android:state_checked="true" />
<item android:drawable="@drawable/gray_track" />
</selector>
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<!-- 高度40 -->
<size
android:width="@dimen/dp_25"
android:height="@dimen/dp_25" />
<!-- 圆角弧度 20 -->
<corners android:radius="@dimen/dp_20" />
<!-- 变化率 -->
<gradient
android:endColor="#ffffff"
android:startColor="#ffffff" />
</shape>
<?xml version="1.0" encoding="utf-8"?>
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="108dp"
android:height="108dp"
android:viewportWidth="108"
android:viewportHeight="108">
<path
android:fillColor="#3DDC84"
android:pathData="M0,0h108v108h-108z" />
<path
android:fillColor="#00000000"
android:pathData="M9,0L9,108"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M19,0L19,108"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M29,0L29,108"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M39,0L39,108"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M49,0L49,108"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M59,0L59,108"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M69,0L69,108"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M79,0L79,108"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M89,0L89,108"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M99,0L99,108"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M0,9L108,9"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M0,19L108,19"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M0,29L108,29"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M0,39L108,39"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M0,49L108,49"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M0,59L108,59"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M0,69L108,69"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M0,79L108,79"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M0,89L108,89"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M0,99L108,99"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M19,29L89,29"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M19,39L89,39"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M19,49L89,49"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M19,59L89,59"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M19,69L89,69"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M19,79L89,79"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M29,19L29,89"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M39,19L39,89"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M49,19L49,89"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M59,19L59,89"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M69,19L69,89"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M79,19L79,89"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
</vector>
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@mipmap/black"
tools:context=".activity.AddDeviceActivity">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_gravity="center"
android:gravity="center"
android:orientation="vertical">
<com.example.blu.toys.view.TypefaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:gravity="center_horizontal"
android:text="Add your device"
android:textColor="@android:color/black"
android:textSize="@dimen/sp_34"
android:textStyle="bold"
app:typeface="@string/LittleOrion" />
<com.example.blu.toys.view.TypefaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginTop="@dimen/dp_8"
android:gravity="center_horizontal"
android:text="Click the button to add your device"
android:textColor="@android:color/black"
android:textSize="@dimen/sp_28"
app:typeface="@string/LittleOrion" />
<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/go_search_ble"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_30"
android:src="@mipmap/startbutton" />
</LinearLayout>
</RelativeLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@mipmap/black"
tools:context=".MainActivity">
<LinearLayout
android:id="@+id/stoplight_but"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_gravity="center"
android:gravity="center"
android:orientation="vertical">
<androidx.appcompat.widget.AppCompatImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@mipmap/timerlogo" />
<com.example.blu.toys.view.TypefaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:gravity="center_horizontal"
android:text="Time made simple"
android:textColor="@android:color/black"
android:textSize="@dimen/sp_34"
app:typeface="@string/LittleOrion" />
</LinearLayout>
</RelativeLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#FFCA05"
tools:context=".activity.PlayActivity">
<com.example.blu.toys.view.TypefaceTextView
android:id="@+id/back_but"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/dp_20"
android:layout_marginTop="@dimen/dp_20"
android:background="@drawable/black_thumb"
android:gravity="center"
android:padding="@dimen/dp_5"
android:text="Back"
android:textColor="@color/white"
android:textSize="@dimen/sp_28"
android:textStyle="bold" />
<com.example.blu.toys.view.TypefaceTextView
android:id="@+id/task_time"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/back_but"
android:layout_centerHorizontal="true"
android:layout_gravity="center_horizontal"
android:layout_marginLeft="@dimen/dp_20"
android:layout_marginTop="@dimen/dp_14"
android:layout_marginRight="@dimen/dp_20"
android:background="@drawable/black_thumb"
android:gravity="center"
android:padding="@dimen/dp_10"
android:text="00:14:99"
android:textColor="@color/white"
android:textSize="@dimen/sp_30"
android:textStyle="bold" />
<ImageView
android:id="@+id/lidang"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/task_time"
android:layout_centerHorizontal="true"
android:layout_gravity="center_horizontal"
android:layout_marginTop="@dimen/dp_10"
android:src="@mipmap/timerbellicon" />
<RelativeLayout
android:id="@+id/cancel_but"
android:layout_width="@dimen/dp_150"
android:layout_height="@dimen/dp_150"
android:layout_below="@+id/lidang"
android:layout_centerHorizontal="true"
android:background="@mipmap/cancelbutton">
<com.example.blu.toys.view.TypefaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:gravity="center"
android:text="Cancel"
android:textColor="@color/white"
android:textSize="@dimen/sp_30"
android:textStyle="bold" />
</RelativeLayout>
<RelativeLayout
android:id="@+id/pause_but"
android:layout_width="@dimen/dp_150"
android:layout_height="@dimen/dp_150"
android:layout_below="@+id/cancel_but"
android:layout_centerHorizontal="true"
android:background="@mipmap/pausebutton">
<com.example.blu.toys.view.TypefaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:gravity="center"
android:text="Pause"
android:textColor="@color/white"
android:textSize="@dimen/sp_30"
android:textStyle="bold" />
</RelativeLayout>
<RelativeLayout
android:id="@+id/resume_but"
android:layout_width="@dimen/dp_150"
android:layout_height="@dimen/dp_150"
android:layout_below="@+id/pause_but"
android:layout_centerHorizontal="true"
android:background="@mipmap/resumebutton">
<com.example.blu.toys.view.TypefaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:gravity="center"
android:text="Resume"
android:textColor="@color/white"
android:textSize="@dimen/sp_30"
android:textStyle="bold" />
</RelativeLayout>
</RelativeLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@mipmap/black"
tools:context=".activity.SearchingActivity">
<com.example.blu.toys.view.TypefaceTextView
android:id="@+id/back_but"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/dp_20"
android:layout_marginTop="@dimen/dp_20"
android:background="@drawable/black_thumb"
android:gravity="center"
android:padding="@dimen/dp_5"
android:text="Back"
android:textColor="@color/white"
android:textSize="@dimen/sp_28"
android:textStyle="bold" />
<com.example.blu.toys.view.TypefaceTextView
android:id="@+id/will"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/back_but"
android:layout_centerHorizontal="true"
android:layout_marginTop="@dimen/dp_14"
android:gravity="center"
android:text="Will search for the STLGL TIMER"
android:textColor="#E07A3A"
android:textSize="@dimen/sp_16" />
<com.example.blu.toys.view.TypefaceTextView
android:id="@+id/animate"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/will"
android:layout_marginLeft="@dimen/dp_40"
android:layout_marginTop="@dimen/dp_14"
android:gravity="center"
android:text="Animate Bee to fly around while waiting"
android:textColor="#E07A3A"
android:textSize="@dimen/sp_16" />
<RelativeLayout
android:id="@+id/select_dev"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_gravity="center"
android:orientation="vertical">
<com.example.blu.toys.view.TypefaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:text="Srearching..."
android:textColor="@color/black"
android:textSize="@dimen/sp_22"
android:textStyle="bold" />
<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/go_search_ble"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:src="@mipmap/searchrings" />
</RelativeLayout>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/animate"
android:layout_centerHorizontal="true"
android:layout_marginTop="@dimen/dp_14"
android:src="@mipmap/beecartoon" />
</RelativeLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@mipmap/black"
tools:context=".activity.SelectDeviceActivity">
<com.example.blu.toys.view.TypefaceTextView
android:id="@+id/back_but"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/dp_20"
android:layout_marginTop="@dimen/dp_20"
android:background="@drawable/black_thumb"
android:gravity="center"
android:padding="@dimen/dp_5"
android:text="Back"
android:textColor="@color/white"
android:textSize="@dimen/sp_28"
android:textStyle="bold" />
<LinearLayout
android:id="@+id/go_start"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_gravity="center"
android:orientation="vertical">
<com.example.blu.toys.view.TypefaceTextView
android:id="@+id/will"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/back_but"
android:layout_centerHorizontal="true"
android:layout_gravity="center_horizontal"
android:layout_marginTop="@dimen/dp_14"
android:gravity="center"
android:text="Select your device"
android:textColor="@color/backer_back"
android:textSize="@dimen/sp_24"
android:textStyle="bold" />
<com.example.blu.toys.view.TypefaceTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/dp_20"
android:layout_marginTop="@dimen/dp_20"
android:layout_marginRight="@dimen/dp_20"
android:background="@drawable/black_thumb"
android:gravity="center"
android:padding="@dimen/dp_10"
android:text="Stoplight Golight Time 1"
android:textColor="@color/white"
android:textSize="@dimen/sp_22"
android:textStyle="bold" />
<com.example.blu.toys.view.TypefaceTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/dp_20"
android:layout_marginTop="@dimen/dp_20"
android:layout_marginRight="@dimen/dp_20"
android:background="@drawable/black_thumb"
android:gravity="center"
android:padding="@dimen/dp_10"
android:text="Stoplight Golight Time 1"
android:textColor="@color/white"
android:textSize="@dimen/sp_22"
android:textStyle="bold" />
<com.example.blu.toys.view.TypefaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/back_but"
android:layout_centerHorizontal="true"
android:layout_gravity="center_horizontal"
android:layout_marginTop="@dimen/dp_14"
android:gravity="center"
android:text="Option Do we want to allow multiple devices?"
android:textColor="#E07A3A"
android:textSize="@dimen/sp_14" />
</LinearLayout>
</RelativeLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#FFCA05"
tools:context=".activity.SelectTimerActivity">
<com.example.blu.toys.view.TypefaceTextView
android:id="@+id/back_but"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/dp_20"
android:layout_marginTop="@dimen/dp_20"
android:background="@drawable/black_thumb"
android:gravity="center"
android:padding="@dimen/dp_5"
android:text="Back"
android:textColor="@color/white"
android:textSize="@dimen/sp_28"
android:textStyle="bold" />
<LinearLayout
android:id="@+id/center"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/back_but"
android:layout_gravity="center"
android:layout_marginLeft="@dimen/dp_20"
android:layout_marginTop="@dimen/dp_50"
android:layout_marginRight="@dimen/dp_20"
android:orientation="vertical">
<com.example.blu.toys.view.TypefaceTextView
android:id="@+id/will"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/back_but"
android:layout_centerHorizontal="true"
android:layout_gravity="center_horizontal"
android:layout_marginTop="@dimen/dp_14"
android:gravity="center"
android:text="Select Timer Type"
android:textColor="@color/backer_back"
android:textSize="@dimen/sp_24"
android:textStyle="bold" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_20"
android:background="@drawable/black_thumb"
android:padding="@dimen/dp_5">
<com.example.blu.toys.view.TypefaceTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:gravity="left"
android:padding="@dimen/dp_10"
android:text="Alarm sound at end"
android:textColor="@color/white"
android:textSize="@dimen/sp_18"
android:textStyle="bold"
app:typeface="@string/LittleOrion" />
<Switch
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginRight="@dimen/dp_20"
android:checked="true"
android:gravity="right"
android:switchMinWidth="@dimen/dp_30"
android:textOff=""
android:textOn=""
android:textSize="@dimen/sp_12"
android:thumb="@drawable/thumb"
android:track="@drawable/track"
tools:ignore="MissingConstraints,UseSwitchCompatOrMaterialXml" />
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_20"
android:background="@drawable/black_thumb"
android:padding="@dimen/dp_5">
<com.example.blu.toys.view.TypefaceTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:gravity="left"
android:padding="@dimen/dp_10"
android:text="Music"
android:textColor="@color/white"
android:textSize="@dimen/sp_18"
android:textStyle="bold"
app:typeface="@string/LittleOrion" />
<Switch
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginRight="@dimen/dp_20"
android:checked="true"
android:gravity="right"
android:switchMinWidth="@dimen/dp_30"
android:textOff=""
android:textOn=""
android:textSize="@dimen/sp_12"
android:thumb="@drawable/thumb"
android:track="@drawable/track"
tools:ignore="MissingConstraints,UseSwitchCompatOrMaterialXml" />
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_20"
android:background="@drawable/black_thumb"
android:padding="@dimen/dp_5">
<com.example.blu.toys.view.TypefaceTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:gravity="left"
android:padding="@dimen/dp_10"
android:text="Set countdown to green"
android:textColor="@color/white"
android:textSize="@dimen/sp_18"
android:textStyle="bold"
app:typeface="@string/LittleOrion" />
<Switch
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginRight="@dimen/dp_20"
android:gravity="right"
android:switchMinWidth="@dimen/dp_30"
android:textOff=""
android:textOn=""
android:textSize="@dimen/sp_12"
android:thumb="@drawable/thumb"
android:track="@drawable/track"
tools:ignore="MissingConstraints,UseSwitchCompatOrMaterialXml" />
</RelativeLayout>
<com.example.blu.toys.view.TypefaceTextView
android:id="@+id/hiht_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginTop="@dimen/dp_5"
android:text="Stoplight Golight by default uses the red light at end of the timer."
android:textColor="@android:color/black"
android:textSize="@dimen/sp_22"
app:typeface="@string/LittleOrion" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/center"
android:layout_marginLeft="@dimen/dp_20"
android:layout_marginTop="@dimen/dp_20"
android:layout_marginRight="@dimen/dp_20"
android:background="@drawable/black_thumb"
android:orientation="horizontal">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left|center_vertical"
android:src="@mipmap/sunlight_1" />
<SeekBar
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_weight="1"
android:max="100"
android:maxHeight="3.4dp"
android:minHeight="3.4dp"
android:paddingTop="10dp"
android:paddingBottom="10dp"
android:progress="50"
android:progressDrawable="@drawable/seekbar_bg"
android:splitTrack="false"
android:thumb="@drawable/white_thumb" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right|center_vertical"
android:src="@mipmap/sunlight_2" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_marginBottom="@dimen/dp_20"
android:gravity="center_horizontal"
android:orientation="horizontal">
<ImageView
android:layout_width="wrap_content"
android:layout_height="@dimen/dp_80"
android:src="@mipmap/shopbutton" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="@dimen/dp_80"
android:layout_marginLeft="@dimen/dp_8"
android:layout_marginRight="@dimen/dp_8"
android:src="@mipmap/settingsbutton" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="@dimen/dp_80"
android:src="@mipmap/ratebutton" />
</LinearLayout>
</RelativeLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#FFCA05"
tools:context=".activity.SetTimeActivity">
<com.example.blu.toys.view.TypefaceTextView
android:id="@+id/back_but"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/dp_20"
android:layout_marginTop="@dimen/dp_20"
android:background="@drawable/black_thumb"
android:gravity="center"
android:padding="@dimen/dp_5"
android:text="Back"
android:textColor="@color/white"
android:textSize="@dimen/sp_28"
android:textStyle="bold" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/animate"
android:layout_alignParentRight="true"
android:layout_marginTop="@dimen/dp_20"
android:layout_marginRight="@dimen/dp_40"
android:src="@mipmap/beecartoon" />
<com.example.blu.toys.view.TypefaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/back_but"
android:layout_centerHorizontal="true"
android:layout_gravity="center_horizontal"
android:layout_marginTop="@dimen/dp_30"
android:gravity="center"
android:text="Set Your Timer!"
android:textColor="@color/backer_back"
android:textSize="@dimen/sp_34"
android:textStyle="bold" />
<LinearLayout
android:id="@+id/center"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/back_but"
android:layout_gravity="center"
android:layout_marginLeft="@dimen/dp_20"
android:layout_marginTop="@dimen/dp_60"
android:layout_marginRight="@dimen/dp_20"
android:orientation="vertical">
<com.example.blu.toys.view.TypefaceTextView
android:id="@+id/will"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/back_but"
android:layout_centerHorizontal="true"
android:layout_gravity="center_horizontal"
android:layout_marginTop="@dimen/dp_14"
android:gravity="center"
android:text="Select End Timer"
android:textColor="@color/backer_back"
android:textSize="@dimen/sp_24"
android:textStyle="bold" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/black_thumb"
android:padding="@dimen/dp_5">
<com.example.blu.toys.view.TypefaceTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:gravity="center_horizontal"
android:padding="@dimen/dp_10"
android:text="08:00:00"
android:textColor="@color/white"
android:textSize="@dimen/sp_28"
android:textStyle="bold"
app:typeface="@string/LittleOrion" />
</RelativeLayout>
<com.example.blu.toys.view.TypefaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/back_but"
android:layout_centerHorizontal="true"
android:layout_gravity="center_horizontal"
android:layout_marginTop="@dimen/dp_14"
android:gravity="center"
android:text="Select Time Interval"
android:textColor="@color/backer_back"
android:textSize="@dimen/sp_24"
android:textStyle="bold" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/black_thumb"
android:padding="@dimen/dp_5">
<com.example.blu.toys.view.TypefaceTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:gravity="center"
android:padding="@dimen/dp_10"
android:text="00:15:00"
android:textColor="@color/white"
android:textSize="@dimen/sp_28"
android:textStyle="bold"
app:typeface="@string/LittleOrion" />
</RelativeLayout>
</LinearLayout>
<RelativeLayout
android:id="@+id/start_but"
android:layout_width="@dimen/dp_150"
android:layout_height="@dimen/dp_150"
android:layout_below="@+id/center"
android:layout_centerHorizontal="true"
android:layout_marginTop="@dimen/dp_20"
android:background="@mipmap/resumebutton">
<com.example.blu.toys.view.TypefaceTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:gravity="center"
android:text="Start"
android:textColor="@color/white"
android:textSize="@dimen/sp_30"
android:textStyle="bold" />
</RelativeLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_marginBottom="@dimen/dp_20"
android:gravity="center_horizontal"
android:orientation="horizontal">
<ImageView
android:layout_width="wrap_content"
android:layout_height="@dimen/dp_80"
android:src="@mipmap/shopbutton" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="@dimen/dp_80"
android:layout_marginLeft="@dimen/dp_8"
android:layout_marginRight="@dimen/dp_8"
android:src="@mipmap/settingsbutton" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="@dimen/dp_80"
android:src="@mipmap/ratebutton" />
</LinearLayout>
</RelativeLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="50dp"
android:background="#EEEEEE">
<View
android:layout_width="match_parent"
android:layout_height="0.5dp"
android:background="#aaa" />
<ImageView
android:id="@+id/iv_cancel"
android:layout_width="35dp"
android:layout_height="35dp"
android:layout_centerVertical="true"
android:layout_marginLeft="17dp"
android:padding="8dp"
/>
<TextView
android:id="@+id/tv_finish"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="17dp"
android:padding="8dp"
android:text="完成"
android:textColor="#24AD9D"
android:textSize="18sp" />
<View
android:layout_width="match_parent"
android:layout_height="0.5dp"
android:background="#aaa" />
</RelativeLayout>
<!--此部分需要完整复制过去,删减或者更改ID会导致初始化找不到内容而报空-->
<LinearLayout
android:id="@+id/timepicker"
android:minHeight="150dp"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/white"
android:gravity="center"
android:orientation="horizontal">
<com.contrarywind.view.WheelView
android:id="@+id/year"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1" />
<com.contrarywind.view.WheelView
android:id="@+id/month"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1.1" />
<com.contrarywind.view.WheelView
android:id="@+id/day"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1.1" />
<com.contrarywind.view.WheelView
android:id="@+id/hour"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1.1" />
<com.contrarywind.view.WheelView
android:id="@+id/min"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1.1" />
<com.contrarywind.view.WheelView
android:id="@+id/second"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1.1" />
</LinearLayout>
</LinearLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
<background android:drawable="@drawable/ic_launcher_background" />
<foreground android:drawable="@drawable/ic_launcher_foreground" />
</adaptive-icon>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
<background android:drawable="@drawable/ic_launcher_background" />
<foreground android:drawable="@drawable/ic_launcher_foreground" />
</adaptive-icon>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<resources>
<dimen name="activity_horizontal_margin">45.5111dp</dimen>
<dimen name="activity_vertical_margin">45.5111dp</dimen>
<dimen name="title_bar_head">142.2222dp</dimen>
<dimen name="card_common_margin_left">@dimen/dp_15</dimen>
<dimen name="dp_m_60">-170.6667dp</dimen>
<dimen name="dp_m_30">-85.3333dp</dimen>
<dimen name="dp_m_20">-56.8889dp</dimen>
<dimen name="dp_m_12">-34.1333dp</dimen>
<dimen name="dp_m_10">-28.4444dp</dimen>
<dimen name="dp_m_8">-22.7556dp</dimen>
<dimen name="dp_m_5">-14.2222dp</dimen>
<dimen name="dp_m_2">-5.6889dp</dimen>
<dimen name="dp_m_1">-2.8444dp</dimen>
<dimen name="dp_0">0.0000dp</dimen>
<dimen name="dp_0_1">0.2844dp</dimen>
<dimen name="dp_0_5">1.4222dp</dimen>
<dimen name="dp_1">2.8444dp</dimen>
<dimen name="dp_1_5">4.2667dp</dimen>
<dimen name="dp_2">5.6889dp</dimen>
<dimen name="dp_2_5">7.1111dp</dimen>
<dimen name="dp_3">8.5333dp</dimen>
<dimen name="dp_3_5">9.9556dp</dimen>
<dimen name="dp_4">11.3778dp</dimen>
<dimen name="dp_4_5">12.8000dp</dimen>
<dimen name="dp_5">14.2222dp</dimen>
<dimen name="dp_6">17.0667dp</dimen>
<dimen name="dp_7">19.9111dp</dimen>
<dimen name="dp_7_5">21.3333dp</dimen>
<dimen name="dp_8">22.7556dp</dimen>
<dimen name="dp_9">25.6000dp</dimen>
<dimen name="dp_10">28.4444dp</dimen>
<dimen name="dp_11">31.2889dp</dimen>
<dimen name="dp_12">34.1333dp</dimen>
<dimen name="dp_13">36.9778dp</dimen>
<dimen name="dp_14">39.8222dp</dimen>
<dimen name="dp_15">42.6667dp</dimen>
<dimen name="dp_16">45.5111dp</dimen>
<dimen name="dp_17">48.3556dp</dimen>
<dimen name="dp_18">51.2000dp</dimen>
<dimen name="dp_19">54.0444dp</dimen>
<dimen name="dp_20">56.8889dp</dimen>
<dimen name="dp_21">59.7333dp</dimen>
<dimen name="dp_22">62.5778dp</dimen>
<dimen name="dp_23">65.4222dp</dimen>
<dimen name="dp_24">68.2667dp</dimen>
<dimen name="dp_25">71.1111dp</dimen>
<dimen name="dp_26">73.9556dp</dimen>
<dimen name="dp_27">76.8000dp</dimen>
<dimen name="dp_28">79.6444dp</dimen>
<dimen name="dp_29">82.4889dp</dimen>
<dimen name="dp_30">85.3333dp</dimen>
<dimen name="dp_31">88.1778dp</dimen>
<dimen name="dp_32">91.0222dp</dimen>
<dimen name="dp_33">93.8667dp</dimen>
<dimen name="dp_34">96.7111dp</dimen>
<dimen name="dp_35">99.5556dp</dimen>
<dimen name="dp_36">102.4000dp</dimen>
<dimen name="dp_37">105.2444dp</dimen>
<dimen name="dp_38">108.0889dp</dimen>
<dimen name="dp_39">110.9333dp</dimen>
<dimen name="dp_40">113.7778dp</dimen>
<dimen name="dp_41">116.6222dp</dimen>
<dimen name="dp_42">119.4667dp</dimen>
<dimen name="dp_43">122.3111dp</dimen>
<dimen name="dp_44">125.1556dp</dimen>
<dimen name="dp_45">128.0000dp</dimen>
<dimen name="dp_46">130.8444dp</dimen>
<dimen name="dp_47">133.6889dp</dimen>
<dimen name="dp_48">136.5333dp</dimen>
<dimen name="dp_49">139.3778dp</dimen>
<dimen name="dp_50">142.2222dp</dimen>
<dimen name="dp_51">145.0667dp</dimen>
<dimen name="dp_52">147.9111dp</dimen>
<dimen name="dp_53">150.7556dp</dimen>
<dimen name="dp_54">153.6000dp</dimen>
<dimen name="dp_55">156.4444dp</dimen>
<dimen name="dp_56">159.2889dp</dimen>
<dimen name="dp_57">162.1333dp</dimen>
<dimen name="dp_58">164.9778dp</dimen>
<dimen name="dp_59">167.8222dp</dimen>
<dimen name="dp_60">170.6667dp</dimen>
<dimen name="dp_61">173.5111dp</dimen>
<dimen name="dp_62">176.3556dp</dimen>
<dimen name="dp_63">179.2000dp</dimen>
<dimen name="dp_64">182.0444dp</dimen>
<dimen name="dp_65">184.8889dp</dimen>
<dimen name="dp_66">187.7333dp</dimen>
<dimen name="dp_67">190.5778dp</dimen>
<dimen name="dp_68">193.4222dp</dimen>
<dimen name="dp_69">196.2667dp</dimen>
<dimen name="dp_70">199.1111dp</dimen>
<dimen name="dp_71">201.9556dp</dimen>
<dimen name="dp_72">204.8000dp</dimen>
<dimen name="dp_73">207.6444dp</dimen>
<dimen name="dp_74">210.4889dp</dimen>
<dimen name="dp_75">213.3333dp</dimen>
<dimen name="dp_76">216.1778dp</dimen>
<dimen name="dp_77">219.0222dp</dimen>
<dimen name="dp_78">221.8667dp</dimen>
<dimen name="dp_79">224.7111dp</dimen>
<dimen name="dp_80">227.5556dp</dimen>
<dimen name="dp_81">230.4000dp</dimen>
<dimen name="dp_82">233.2444dp</dimen>
<dimen name="dp_83">236.0889dp</dimen>
<dimen name="dp_84">238.9333dp</dimen>
<dimen name="dp_85">241.7778dp</dimen>
<dimen name="dp_86">244.6222dp</dimen>
<dimen name="dp_87">247.4667dp</dimen>
<dimen name="dp_88">250.3111dp</dimen>
<dimen name="dp_89">253.1556dp</dimen>
<dimen name="dp_90">256.0000dp</dimen>
<dimen name="dp_91">258.8444dp</dimen>
<dimen name="dp_92">261.6889dp</dimen>
<dimen name="dp_93">264.5333dp</dimen>
<dimen name="dp_94">267.3778dp</dimen>
<dimen name="dp_95">270.2222dp</dimen>
<dimen name="dp_96">273.0667dp</dimen>
<dimen name="dp_97">275.9111dp</dimen>
<dimen name="dp_98">278.7556dp</dimen>
<dimen name="dp_99">281.6000dp</dimen>
<dimen name="dp_100">284.4444dp</dimen>
<dimen name="dp_101">287.2889dp</dimen>
<dimen name="dp_102">290.1333dp</dimen>
<dimen name="dp_103">292.9778dp</dimen>
<dimen name="dp_104">295.8222dp</dimen>
<dimen name="dp_104_5">297.2444dp</dimen>
<dimen name="dp_105">298.6667dp</dimen>
<dimen name="dp_106">301.5111dp</dimen>
<dimen name="dp_107">304.3556dp</dimen>
<dimen name="dp_108">307.2000dp</dimen>
<dimen name="dp_109">310.0444dp</dimen>
<dimen name="dp_110">312.8889dp</dimen>
<dimen name="dp_111">315.7333dp</dimen>
<dimen name="dp_112">318.5778dp</dimen>
<dimen name="dp_113">321.4222dp</dimen>
<dimen name="dp_114">324.2667dp</dimen>
<dimen name="dp_115">327.1111dp</dimen>
<dimen name="dp_116">329.9556dp</dimen>
<dimen name="dp_117">332.8000dp</dimen>
<dimen name="dp_118">335.6444dp</dimen>
<dimen name="dp_119">338.4889dp</dimen>
<dimen name="dp_120">341.3333dp</dimen>
<dimen name="dp_121">344.1778dp</dimen>
<dimen name="dp_122">347.0222dp</dimen>
<dimen name="dp_123">349.8667dp</dimen>
<dimen name="dp_124">352.7111dp</dimen>
<dimen name="dp_125">355.5556dp</dimen>
<dimen name="dp_126">358.4000dp</dimen>
<dimen name="dp_127">361.2444dp</dimen>
<dimen name="dp_128">364.0889dp</dimen>
<dimen name="dp_129">366.9333dp</dimen>
<dimen name="dp_130">369.7778dp</dimen>
<dimen name="dp_131">372.6222dp</dimen>
<dimen name="dp_132">375.4667dp</dimen>
<dimen name="dp_133">378.3111dp</dimen>
<dimen name="dp_134">381.1556dp</dimen>
<dimen name="dp_134_5">382.5778dp</dimen>
<dimen name="dp_135">384.0000dp</dimen>
<dimen name="dp_136">386.8444dp</dimen>
<dimen name="dp_137">389.6889dp</dimen>
<dimen name="dp_138">392.5333dp</dimen>
<dimen name="dp_139">395.3778dp</dimen>
<dimen name="dp_140">398.2222dp</dimen>
<dimen name="dp_141">401.0667dp</dimen>
<dimen name="dp_142">403.9111dp</dimen>
<dimen name="dp_143">406.7556dp</dimen>
<dimen name="dp_144">409.6000dp</dimen>
<dimen name="dp_145">412.4444dp</dimen>
<dimen name="dp_146">415.2889dp</dimen>
<dimen name="dp_147">418.1333dp</dimen>
<dimen name="dp_148">420.9778dp</dimen>
<dimen name="dp_149">423.8222dp</dimen>
<dimen name="dp_150">426.6667dp</dimen>
<dimen name="dp_151">429.5111dp</dimen>
<dimen name="dp_152">432.3556dp</dimen>
<dimen name="dp_153">435.2000dp</dimen>
<dimen name="dp_154">438.0444dp</dimen>
<dimen name="dp_155">440.8889dp</dimen>
<dimen name="dp_156">443.7333dp</dimen>
<dimen name="dp_157">446.5778dp</dimen>
<dimen name="dp_158">449.4222dp</dimen>
<dimen name="dp_159">452.2667dp</dimen>
<dimen name="dp_160">455.1111dp</dimen>
<dimen name="dp_161">457.9556dp</dimen>
<dimen name="dp_162">460.8000dp</dimen>
<dimen name="dp_163">463.6444dp</dimen>
<dimen name="dp_164">466.4889dp</dimen>
<dimen name="dp_165">469.3333dp</dimen>
<dimen name="dp_166">472.1778dp</dimen>
<dimen name="dp_167">475.0222dp</dimen>
<dimen name="dp_168">477.8667dp</dimen>
<dimen name="dp_169">480.7111dp</dimen>
<dimen name="dp_170">483.5556dp</dimen>
<dimen name="dp_171">486.4000dp</dimen>
<dimen name="dp_172">489.2444dp</dimen>
<dimen name="dp_173">492.0889dp</dimen>
<dimen name="dp_174">494.9333dp</dimen>
<dimen name="dp_175">497.7778dp</dimen>
<dimen name="dp_176">500.6222dp</dimen>
<dimen name="dp_177">503.4667dp</dimen>
<dimen name="dp_178">506.3111dp</dimen>
<dimen name="dp_179">509.1556dp</dimen>
<dimen name="dp_180">512.0000dp</dimen>
<dimen name="dp_181">514.8444dp</dimen>
<dimen name="dp_182">517.6889dp</dimen>
<dimen name="dp_183">520.5333dp</dimen>
<dimen name="dp_184">523.3778dp</dimen>
<dimen name="dp_185">526.2222dp</dimen>
<dimen name="dp_186">529.0667dp</dimen>
<dimen name="dp_187">531.9111dp</dimen>
<dimen name="dp_188">534.7556dp</dimen>
<dimen name="dp_189">537.6000dp</dimen>
<dimen name="dp_190">540.4444dp</dimen>
<dimen name="dp_191">543.2889dp</dimen>
<dimen name="dp_191_25">544.0000dp</dimen>
<dimen name="dp_192">546.1333dp</dimen>
<dimen name="dp_193">548.9778dp</dimen>
<dimen name="dp_194">551.8222dp</dimen>
<dimen name="dp_195">554.6667dp</dimen>
<dimen name="dp_196">557.5111dp</dimen>
<dimen name="dp_197">560.3556dp</dimen>
<dimen name="dp_198">563.2000dp</dimen>
<dimen name="dp_199">566.0444dp</dimen>
<dimen name="dp_200">568.8889dp</dimen>
<dimen name="dp_201">571.7333dp</dimen>
<dimen name="dp_202">574.5778dp</dimen>
<dimen name="dp_203">577.4222dp</dimen>
<dimen name="dp_204">580.2667dp</dimen>
<dimen name="dp_205">583.1111dp</dimen>
<dimen name="dp_206">585.9556dp</dimen>
<dimen name="dp_207">588.8000dp</dimen>
<dimen name="dp_208">591.6444dp</dimen>
<dimen name="dp_209">594.4889dp</dimen>
<dimen name="dp_210">597.3333dp</dimen>
<dimen name="dp_211">600.1778dp</dimen>
<dimen name="dp_212">603.0222dp</dimen>
<dimen name="dp_213">605.8667dp</dimen>
<dimen name="dp_214">608.7111dp</dimen>
<dimen name="dp_215">611.5556dp</dimen>
<dimen name="dp_216">614.4000dp</dimen>
<dimen name="dp_217">617.2444dp</dimen>
<dimen name="dp_218">620.0889dp</dimen>
<dimen name="dp_219">622.9333dp</dimen>
<dimen name="dp_220">625.7778dp</dimen>
<dimen name="dp_221">628.6222dp</dimen>
<dimen name="dp_222">631.4667dp</dimen>
<dimen name="dp_223">634.3111dp</dimen>
<dimen name="dp_224">637.1556dp</dimen>
<dimen name="dp_225">640.0000dp</dimen>
<dimen name="dp_226">642.8444dp</dimen>
<dimen name="dp_227">645.6889dp</dimen>
<dimen name="dp_228">648.5333dp</dimen>
<dimen name="dp_229">651.3778dp</dimen>
<dimen name="dp_230">654.2222dp</dimen>
<dimen name="dp_231">657.0667dp</dimen>
<dimen name="dp_232">659.9111dp</dimen>
<dimen name="dp_233">662.7556dp</dimen>
<dimen name="dp_234">665.6000dp</dimen>
<dimen name="dp_235">668.4444dp</dimen>
<dimen name="dp_236">671.2889dp</dimen>
<dimen name="dp_237">674.1333dp</dimen>
<dimen name="dp_238">676.9778dp</dimen>
<dimen name="dp_239">679.8222dp</dimen>
<dimen name="dp_240">682.6667dp</dimen>
<dimen name="dp_241">685.5111dp</dimen>
<dimen name="dp_242">688.3556dp</dimen>
<dimen name="dp_243">691.2000dp</dimen>
<dimen name="dp_244">694.0444dp</dimen>
<dimen name="dp_245">696.8889dp</dimen>
<dimen name="dp_246">699.7333dp</dimen>
<dimen name="dp_247">702.5778dp</dimen>
<dimen name="dp_248">705.4222dp</dimen>
<dimen name="dp_249">708.2667dp</dimen>
<dimen name="dp_250">711.1111dp</dimen>
<dimen name="dp_251">713.9556dp</dimen>
<dimen name="dp_252">716.8000dp</dimen>
<dimen name="dp_253">719.6444dp</dimen>
<dimen name="dp_254">722.4889dp</dimen>
<dimen name="dp_255">725.3333dp</dimen>
<dimen name="dp_256">728.1778dp</dimen>
<dimen name="dp_257">731.0222dp</dimen>
<dimen name="dp_258">733.8667dp</dimen>
<dimen name="dp_259">736.7111dp</dimen>
<dimen name="dp_260">739.5556dp</dimen>
<dimen name="dp_261">742.4000dp</dimen>
<dimen name="dp_262">745.2444dp</dimen>
<dimen name="dp_263">748.0889dp</dimen>
<dimen name="dp_264">750.9333dp</dimen>
<dimen name="dp_265">753.7778dp</dimen>
<dimen name="dp_266">756.6222dp</dimen>
<dimen name="dp_267">759.4667dp</dimen>
<dimen name="dp_268">762.3111dp</dimen>
<dimen name="dp_269">765.1556dp</dimen>
<dimen name="dp_270">768.0000dp</dimen>
<dimen name="dp_271">770.8444dp</dimen>
<dimen name="dp_272">773.6889dp</dimen>
<dimen name="dp_273">776.5333dp</dimen>
<dimen name="dp_274">779.3778dp</dimen>
<dimen name="dp_275">782.2222dp</dimen>
<dimen name="dp_276">785.0667dp</dimen>
<dimen name="dp_277">787.9111dp</dimen>
<dimen name="dp_278">790.7556dp</dimen>
<dimen name="dp_279">793.6000dp</dimen>
<dimen name="dp_280">796.4444dp</dimen>
<dimen name="dp_281">799.2889dp</dimen>
<dimen name="dp_282">802.1333dp</dimen>
<dimen name="dp_283">804.9778dp</dimen>
<dimen name="dp_284">807.8222dp</dimen>
<dimen name="dp_285">810.6667dp</dimen>
<dimen name="dp_286">813.5111dp</dimen>
<dimen name="dp_287">816.3556dp</dimen>
<dimen name="dp_288">819.2000dp</dimen>
<dimen name="dp_289">822.0444dp</dimen>
<dimen name="dp_290">824.8889dp</dimen>
<dimen name="dp_291">827.7333dp</dimen>
<dimen name="dp_292">830.5778dp</dimen>
<dimen name="dp_293">833.4222dp</dimen>
<dimen name="dp_294">836.2667dp</dimen>
<dimen name="dp_295">839.1111dp</dimen>
<dimen name="dp_296">841.9556dp</dimen>
<dimen name="dp_297">844.8000dp</dimen>
<dimen name="dp_298">847.6444dp</dimen>
<dimen name="dp_299">850.4889dp</dimen>
<dimen name="dp_300">853.3333dp</dimen>
<dimen name="dp_301">856.1778dp</dimen>
<dimen name="dp_302">859.0222dp</dimen>
<dimen name="dp_303">861.8667dp</dimen>
<dimen name="dp_304">864.7111dp</dimen>
<dimen name="dp_305">867.5556dp</dimen>
<dimen name="dp_306">870.4000dp</dimen>
<dimen name="dp_307">873.2444dp</dimen>
<dimen name="dp_308">876.0889dp</dimen>
<dimen name="dp_309">878.9333dp</dimen>
<dimen name="dp_310">881.7778dp</dimen>
<dimen name="dp_311">884.6222dp</dimen>
<dimen name="dp_312">887.4667dp</dimen>
<dimen name="dp_313">890.3111dp</dimen>
<dimen name="dp_314">893.1556dp</dimen>
<dimen name="dp_315">896.0000dp</dimen>
<dimen name="dp_316">898.8444dp</dimen>
<dimen name="dp_317">901.6889dp</dimen>
<dimen name="dp_318">904.5333dp</dimen>
<dimen name="dp_319">907.3778dp</dimen>
<dimen name="dp_320">910.2222dp</dimen>
<dimen name="dp_321">913.0667dp</dimen>
<dimen name="dp_322">915.9111dp</dimen>
<dimen name="dp_323">918.7556dp</dimen>
<dimen name="dp_324">921.6000dp</dimen>
<dimen name="dp_325">924.4444dp</dimen>
<dimen name="dp_326">927.2889dp</dimen>
<dimen name="dp_327">930.1333dp</dimen>
<dimen name="dp_328">932.9778dp</dimen>
<dimen name="dp_329">935.8222dp</dimen>
<dimen name="dp_330">938.6667dp</dimen>
<dimen name="dp_331">941.5111dp</dimen>
<dimen name="dp_332">944.3556dp</dimen>
<dimen name="dp_333">947.2000dp</dimen>
<dimen name="dp_334">950.0444dp</dimen>
<dimen name="dp_335">952.8889dp</dimen>
<dimen name="dp_336">955.7333dp</dimen>
<dimen name="dp_337">958.5778dp</dimen>
<dimen name="dp_338">961.4222dp</dimen>
<dimen name="dp_339">964.2667dp</dimen>
<dimen name="dp_340">967.1111dp</dimen>
<dimen name="dp_341">969.9556dp</dimen>
<dimen name="dp_342">972.8000dp</dimen>
<dimen name="dp_343">975.6444dp</dimen>
<dimen name="dp_344">978.4889dp</dimen>
<dimen name="dp_345">981.3333dp</dimen>
<dimen name="dp_346">984.1778dp</dimen>
<dimen name="dp_347">987.0222dp</dimen>
<dimen name="dp_348">989.8667dp</dimen>
<dimen name="dp_349">992.7111dp</dimen>
<dimen name="dp_350">995.5556dp</dimen>
<dimen name="dp_351">998.4000dp</dimen>
<dimen name="dp_352">1001.2444dp</dimen>
<dimen name="dp_353">1004.0889dp</dimen>
<dimen name="dp_354">1006.9333dp</dimen>
<dimen name="dp_355">1009.7778dp</dimen>
<dimen name="dp_356">1012.6222dp</dimen>
<dimen name="dp_357">1015.4667dp</dimen>
<dimen name="dp_358">1018.3111dp</dimen>
<dimen name="dp_359">1021.1556dp</dimen>
<dimen name="dp_360">1024.0000dp</dimen>
<dimen name="dp_365">1038.2222dp</dimen>
<dimen name="dp_370">1052.4444dp</dimen>
<dimen name="dp_400">1137.7778dp</dimen>
<dimen name="dp_410">1166.2222dp</dimen>
<dimen name="dp_422">1200.3556dp</dimen>
<dimen name="dp_472">1342.5778dp</dimen>
<dimen name="dp_500">1422.2222dp</dimen>
<dimen name="dp_600">1706.6667dp</dimen>
<dimen name="dp_640">1820.4444dp</dimen>
<dimen name="dp_720">2048.0000dp</dimen>
<dimen name="sp_6">17.0667sp</dimen>
<dimen name="sp_7">19.9111sp</dimen>
<dimen name="sp_8">22.7556sp</dimen>
<dimen name="sp_9">25.6000sp</dimen>
<dimen name="sp_10">28.4444sp</dimen>
<dimen name="sp_11">31.2889sp</dimen>
<dimen name="sp_12">34.1333sp</dimen>
<dimen name="sp_13">36.9778sp</dimen>
<dimen name="sp_14">39.8222sp</dimen>
<dimen name="sp_15">42.6667sp</dimen>
<dimen name="sp_16">45.5111sp</dimen>
<dimen name="sp_17">48.3556sp</dimen>
<dimen name="sp_18">51.2000sp</dimen>
<dimen name="sp_19">54.0444sp</dimen>
<dimen name="sp_20">56.8889sp</dimen>
<dimen name="sp_21">59.7333sp</dimen>
<dimen name="sp_22">62.5778sp</dimen>
<dimen name="sp_23">65.4222sp</dimen>
<dimen name="sp_24">68.2667sp</dimen>
<dimen name="sp_25">71.1111sp</dimen>
<dimen name="sp_28">79.6444sp</dimen>
<dimen name="sp_30">85.3333sp</dimen>
<dimen name="sp_32">91.0222sp</dimen>
<dimen name="sp_34">96.7111sp</dimen>
<dimen name="sp_36">102.4000sp</dimen>
<dimen name="sp_38">108.0889sp</dimen>
<dimen name="sp_40">113.7778sp</dimen>
<dimen name="sp_42">119.4667sp</dimen>
<dimen name="sp_48">136.5333sp</dimen>
</resources>
<?xml version="1.0" encoding="UTF-8"?>
<resources>
<dimen name="activity_horizontal_margin">56.8889dp</dimen>
<dimen name="activity_vertical_margin">56.8889dp</dimen>
<dimen name="title_bar_head">177.7778dp</dimen>
<dimen name="card_common_margin_left">@dimen/dp_15</dimen>
<dimen name="dp_m_60">-213.3333dp</dimen>
<dimen name="dp_m_30">-106.6667dp</dimen>
<dimen name="dp_m_20">-71.1111dp</dimen>
<dimen name="dp_m_12">-42.6667dp</dimen>
<dimen name="dp_m_10">-35.5556dp</dimen>
<dimen name="dp_m_8">-28.4444dp</dimen>
<dimen name="dp_m_5">-17.7778dp</dimen>
<dimen name="dp_m_2">-7.1111dp</dimen>
<dimen name="dp_m_1">-3.5556dp</dimen>
<dimen name="dp_0">0.0000dp</dimen>
<dimen name="dp_0_1">0.3556dp</dimen>
<dimen name="dp_0_5">1.7778dp</dimen>
<dimen name="dp_1">3.5556dp</dimen>
<dimen name="dp_1_5">5.3333dp</dimen>
<dimen name="dp_2">7.1111dp</dimen>
<dimen name="dp_2_5">8.8889dp</dimen>
<dimen name="dp_3">10.6667dp</dimen>
<dimen name="dp_3_5">12.4444dp</dimen>
<dimen name="dp_4">14.2222dp</dimen>
<dimen name="dp_4_5">16.0000dp</dimen>
<dimen name="dp_5">17.7778dp</dimen>
<dimen name="dp_6">21.3333dp</dimen>
<dimen name="dp_7">24.8889dp</dimen>
<dimen name="dp_7_5">26.6667dp</dimen>
<dimen name="dp_8">28.4444dp</dimen>
<dimen name="dp_9">32.0000dp</dimen>
<dimen name="dp_10">35.5556dp</dimen>
<dimen name="dp_11">39.1111dp</dimen>
<dimen name="dp_12">42.6667dp</dimen>
<dimen name="dp_13">46.2222dp</dimen>
<dimen name="dp_14">49.7778dp</dimen>
<dimen name="dp_15">53.3333dp</dimen>
<dimen name="dp_16">56.8889dp</dimen>
<dimen name="dp_17">60.4444dp</dimen>
<dimen name="dp_18">64.0000dp</dimen>
<dimen name="dp_19">67.5556dp</dimen>
<dimen name="dp_20">71.1111dp</dimen>
<dimen name="dp_21">74.6667dp</dimen>
<dimen name="dp_22">78.2222dp</dimen>
<dimen name="dp_23">81.7778dp</dimen>
<dimen name="dp_24">85.3333dp</dimen>
<dimen name="dp_25">88.8889dp</dimen>
<dimen name="dp_26">92.4444dp</dimen>
<dimen name="dp_27">96.0000dp</dimen>
<dimen name="dp_28">99.5556dp</dimen>
<dimen name="dp_29">103.1111dp</dimen>
<dimen name="dp_30">106.6667dp</dimen>
<dimen name="dp_31">110.2222dp</dimen>
<dimen name="dp_32">113.7778dp</dimen>
<dimen name="dp_33">117.3333dp</dimen>
<dimen name="dp_34">120.8889dp</dimen>
<dimen name="dp_35">124.4444dp</dimen>
<dimen name="dp_36">128.0000dp</dimen>
<dimen name="dp_37">131.5556dp</dimen>
<dimen name="dp_38">135.1111dp</dimen>
<dimen name="dp_39">138.6667dp</dimen>
<dimen name="dp_40">142.2222dp</dimen>
<dimen name="dp_41">145.7778dp</dimen>
<dimen name="dp_42">149.3333dp</dimen>
<dimen name="dp_43">152.8889dp</dimen>
<dimen name="dp_44">156.4444dp</dimen>
<dimen name="dp_45">160.0000dp</dimen>
<dimen name="dp_46">163.5556dp</dimen>
<dimen name="dp_47">167.1111dp</dimen>
<dimen name="dp_48">170.6667dp</dimen>
<dimen name="dp_49">174.2222dp</dimen>
<dimen name="dp_50">177.7778dp</dimen>
<dimen name="dp_51">181.3333dp</dimen>
<dimen name="dp_52">184.8889dp</dimen>
<dimen name="dp_53">188.4444dp</dimen>
<dimen name="dp_54">192.0000dp</dimen>
<dimen name="dp_55">195.5556dp</dimen>
<dimen name="dp_56">199.1111dp</dimen>
<dimen name="dp_57">202.6667dp</dimen>
<dimen name="dp_58">206.2222dp</dimen>
<dimen name="dp_59">209.7778dp</dimen>
<dimen name="dp_60">213.3333dp</dimen>
<dimen name="dp_61">216.8889dp</dimen>
<dimen name="dp_62">220.4444dp</dimen>
<dimen name="dp_63">224.0000dp</dimen>
<dimen name="dp_64">227.5556dp</dimen>
<dimen name="dp_65">231.1111dp</dimen>
<dimen name="dp_66">234.6667dp</dimen>
<dimen name="dp_67">238.2222dp</dimen>
<dimen name="dp_68">241.7778dp</dimen>
<dimen name="dp_69">245.3333dp</dimen>
<dimen name="dp_70">248.8889dp</dimen>
<dimen name="dp_71">252.4444dp</dimen>
<dimen name="dp_72">256.0000dp</dimen>
<dimen name="dp_73">259.5556dp</dimen>
<dimen name="dp_74">263.1111dp</dimen>
<dimen name="dp_75">266.6667dp</dimen>
<dimen name="dp_76">270.2222dp</dimen>
<dimen name="dp_77">273.7778dp</dimen>
<dimen name="dp_78">277.3333dp</dimen>
<dimen name="dp_79">280.8889dp</dimen>
<dimen name="dp_80">284.4444dp</dimen>
<dimen name="dp_81">288.0000dp</dimen>
<dimen name="dp_82">291.5556dp</dimen>
<dimen name="dp_83">295.1111dp</dimen>
<dimen name="dp_84">298.6667dp</dimen>
<dimen name="dp_85">302.2222dp</dimen>
<dimen name="dp_86">305.7778dp</dimen>
<dimen name="dp_87">309.3333dp</dimen>
<dimen name="dp_88">312.8889dp</dimen>
<dimen name="dp_89">316.4444dp</dimen>
<dimen name="dp_90">320.0000dp</dimen>
<dimen name="dp_91">323.5556dp</dimen>
<dimen name="dp_92">327.1111dp</dimen>
<dimen name="dp_93">330.6667dp</dimen>
<dimen name="dp_94">334.2222dp</dimen>
<dimen name="dp_95">337.7778dp</dimen>
<dimen name="dp_96">341.3333dp</dimen>
<dimen name="dp_97">344.8889dp</dimen>
<dimen name="dp_98">348.4444dp</dimen>
<dimen name="dp_99">352.0000dp</dimen>
<dimen name="dp_100">355.5556dp</dimen>
<dimen name="dp_101">359.1111dp</dimen>
<dimen name="dp_102">362.6667dp</dimen>
<dimen name="dp_103">366.2222dp</dimen>
<dimen name="dp_104">369.7778dp</dimen>
<dimen name="dp_104_5">371.5556dp</dimen>
<dimen name="dp_105">373.3333dp</dimen>
<dimen name="dp_106">376.8889dp</dimen>
<dimen name="dp_107">380.4444dp</dimen>
<dimen name="dp_108">384.0000dp</dimen>
<dimen name="dp_109">387.5556dp</dimen>
<dimen name="dp_110">391.1111dp</dimen>
<dimen name="dp_111">394.6667dp</dimen>
<dimen name="dp_112">398.2222dp</dimen>
<dimen name="dp_113">401.7778dp</dimen>
<dimen name="dp_114">405.3333dp</dimen>
<dimen name="dp_115">408.8889dp</dimen>
<dimen name="dp_116">412.4444dp</dimen>
<dimen name="dp_117">416.0000dp</dimen>
<dimen name="dp_118">419.5556dp</dimen>
<dimen name="dp_119">423.1111dp</dimen>
<dimen name="dp_120">426.6667dp</dimen>
<dimen name="dp_121">430.2222dp</dimen>
<dimen name="dp_122">433.7778dp</dimen>
<dimen name="dp_123">437.3333dp</dimen>
<dimen name="dp_124">440.8889dp</dimen>
<dimen name="dp_125">444.4444dp</dimen>
<dimen name="dp_126">448.0000dp</dimen>
<dimen name="dp_127">451.5556dp</dimen>
<dimen name="dp_128">455.1111dp</dimen>
<dimen name="dp_129">458.6667dp</dimen>
<dimen name="dp_130">462.2222dp</dimen>
<dimen name="dp_131">465.7778dp</dimen>
<dimen name="dp_132">469.3333dp</dimen>
<dimen name="dp_133">472.8889dp</dimen>
<dimen name="dp_134">476.4444dp</dimen>
<dimen name="dp_134_5">478.2222dp</dimen>
<dimen name="dp_135">480.0000dp</dimen>
<dimen name="dp_136">483.5556dp</dimen>
<dimen name="dp_137">487.1111dp</dimen>
<dimen name="dp_138">490.6667dp</dimen>
<dimen name="dp_139">494.2222dp</dimen>
<dimen name="dp_140">497.7778dp</dimen>
<dimen name="dp_141">501.3333dp</dimen>
<dimen name="dp_142">504.8889dp</dimen>
<dimen name="dp_143">508.4444dp</dimen>
<dimen name="dp_144">512.0000dp</dimen>
<dimen name="dp_145">515.5556dp</dimen>
<dimen name="dp_146">519.1111dp</dimen>
<dimen name="dp_147">522.6667dp</dimen>
<dimen name="dp_148">526.2222dp</dimen>
<dimen name="dp_149">529.7778dp</dimen>
<dimen name="dp_150">533.3333dp</dimen>
<dimen name="dp_151">536.8889dp</dimen>
<dimen name="dp_152">540.4444dp</dimen>
<dimen name="dp_153">544.0000dp</dimen>
<dimen name="dp_154">547.5556dp</dimen>
<dimen name="dp_155">551.1111dp</dimen>
<dimen name="dp_156">554.6667dp</dimen>
<dimen name="dp_157">558.2222dp</dimen>
<dimen name="dp_158">561.7778dp</dimen>
<dimen name="dp_159">565.3333dp</dimen>
<dimen name="dp_160">568.8889dp</dimen>
<dimen name="dp_161">572.4444dp</dimen>
<dimen name="dp_162">576.0000dp</dimen>
<dimen name="dp_163">579.5556dp</dimen>
<dimen name="dp_164">583.1111dp</dimen>
<dimen name="dp_165">586.6667dp</dimen>
<dimen name="dp_166">590.2222dp</dimen>
<dimen name="dp_167">593.7778dp</dimen>
<dimen name="dp_168">597.3333dp</dimen>
<dimen name="dp_169">600.8889dp</dimen>
<dimen name="dp_170">604.4444dp</dimen>
<dimen name="dp_171">608.0000dp</dimen>
<dimen name="dp_172">611.5556dp</dimen>
<dimen name="dp_173">615.1111dp</dimen>
<dimen name="dp_174">618.6667dp</dimen>
<dimen name="dp_175">622.2222dp</dimen>
<dimen name="dp_176">625.7778dp</dimen>
<dimen name="dp_177">629.3333dp</dimen>
<dimen name="dp_178">632.8889dp</dimen>
<dimen name="dp_179">636.4444dp</dimen>
<dimen name="dp_180">640.0000dp</dimen>
<dimen name="dp_181">643.5556dp</dimen>
<dimen name="dp_182">647.1111dp</dimen>
<dimen name="dp_183">650.6667dp</dimen>
<dimen name="dp_184">654.2222dp</dimen>
<dimen name="dp_185">657.7778dp</dimen>
<dimen name="dp_186">661.3333dp</dimen>
<dimen name="dp_187">664.8889dp</dimen>
<dimen name="dp_188">668.4444dp</dimen>
<dimen name="dp_189">672.0000dp</dimen>
<dimen name="dp_190">675.5556dp</dimen>
<dimen name="dp_191">679.1111dp</dimen>
<dimen name="dp_191_25">680.0000dp</dimen>
<dimen name="dp_192">682.6667dp</dimen>
<dimen name="dp_193">686.2222dp</dimen>
<dimen name="dp_194">689.7778dp</dimen>
<dimen name="dp_195">693.3333dp</dimen>
<dimen name="dp_196">696.8889dp</dimen>
<dimen name="dp_197">700.4444dp</dimen>
<dimen name="dp_198">704.0000dp</dimen>
<dimen name="dp_199">707.5556dp</dimen>
<dimen name="dp_200">711.1111dp</dimen>
<dimen name="dp_201">714.6667dp</dimen>
<dimen name="dp_202">718.2222dp</dimen>
<dimen name="dp_203">721.7778dp</dimen>
<dimen name="dp_204">725.3333dp</dimen>
<dimen name="dp_205">728.8889dp</dimen>
<dimen name="dp_206">732.4444dp</dimen>
<dimen name="dp_207">736.0000dp</dimen>
<dimen name="dp_208">739.5556dp</dimen>
<dimen name="dp_209">743.1111dp</dimen>
<dimen name="dp_210">746.6667dp</dimen>
<dimen name="dp_211">750.2222dp</dimen>
<dimen name="dp_212">753.7778dp</dimen>
<dimen name="dp_213">757.3333dp</dimen>
<dimen name="dp_214">760.8889dp</dimen>
<dimen name="dp_215">764.4444dp</dimen>
<dimen name="dp_216">768.0000dp</dimen>
<dimen name="dp_217">771.5556dp</dimen>
<dimen name="dp_218">775.1111dp</dimen>
<dimen name="dp_219">778.6667dp</dimen>
<dimen name="dp_220">782.2222dp</dimen>
<dimen name="dp_221">785.7778dp</dimen>
<dimen name="dp_222">789.3333dp</dimen>
<dimen name="dp_223">792.8889dp</dimen>
<dimen name="dp_224">796.4444dp</dimen>
<dimen name="dp_225">800.0000dp</dimen>
<dimen name="dp_226">803.5556dp</dimen>
<dimen name="dp_227">807.1111dp</dimen>
<dimen name="dp_228">810.6667dp</dimen>
<dimen name="dp_229">814.2222dp</dimen>
<dimen name="dp_230">817.7778dp</dimen>
<dimen name="dp_231">821.3333dp</dimen>
<dimen name="dp_232">824.8889dp</dimen>
<dimen name="dp_233">828.4444dp</dimen>
<dimen name="dp_234">832.0000dp</dimen>
<dimen name="dp_235">835.5556dp</dimen>
<dimen name="dp_236">839.1111dp</dimen>
<dimen name="dp_237">842.6667dp</dimen>
<dimen name="dp_238">846.2222dp</dimen>
<dimen name="dp_239">849.7778dp</dimen>
<dimen name="dp_240">853.3333dp</dimen>
<dimen name="dp_241">856.8889dp</dimen>
<dimen name="dp_242">860.4444dp</dimen>
<dimen name="dp_243">864.0000dp</dimen>
<dimen name="dp_244">867.5556dp</dimen>
<dimen name="dp_245">871.1111dp</dimen>
<dimen name="dp_246">874.6667dp</dimen>
<dimen name="dp_247">878.2222dp</dimen>
<dimen name="dp_248">881.7778dp</dimen>
<dimen name="dp_249">885.3333dp</dimen>
<dimen name="dp_250">888.8889dp</dimen>
<dimen name="dp_251">892.4444dp</dimen>
<dimen name="dp_252">896.0000dp</dimen>
<dimen name="dp_253">899.5556dp</dimen>
<dimen name="dp_254">903.1111dp</dimen>
<dimen name="dp_255">906.6667dp</dimen>
<dimen name="dp_256">910.2222dp</dimen>
<dimen name="dp_257">913.7778dp</dimen>
<dimen name="dp_258">917.3333dp</dimen>
<dimen name="dp_259">920.8889dp</dimen>
<dimen name="dp_260">924.4444dp</dimen>
<dimen name="dp_261">928.0000dp</dimen>
<dimen name="dp_262">931.5556dp</dimen>
<dimen name="dp_263">935.1111dp</dimen>
<dimen name="dp_264">938.6667dp</dimen>
<dimen name="dp_265">942.2222dp</dimen>
<dimen name="dp_266">945.7778dp</dimen>
<dimen name="dp_267">949.3333dp</dimen>
<dimen name="dp_268">952.8889dp</dimen>
<dimen name="dp_269">956.4444dp</dimen>
<dimen name="dp_270">960.0000dp</dimen>
<dimen name="dp_271">963.5556dp</dimen>
<dimen name="dp_272">967.1111dp</dimen>
<dimen name="dp_273">970.6667dp</dimen>
<dimen name="dp_274">974.2222dp</dimen>
<dimen name="dp_275">977.7778dp</dimen>
<dimen name="dp_276">981.3333dp</dimen>
<dimen name="dp_277">984.8889dp</dimen>
<dimen name="dp_278">988.4444dp</dimen>
<dimen name="dp_279">992.0000dp</dimen>
<dimen name="dp_280">995.5556dp</dimen>
<dimen name="dp_281">999.1111dp</dimen>
<dimen name="dp_282">1002.6667dp</dimen>
<dimen name="dp_283">1006.2222dp</dimen>
<dimen name="dp_284">1009.7778dp</dimen>
<dimen name="dp_285">1013.3333dp</dimen>
<dimen name="dp_286">1016.8889dp</dimen>
<dimen name="dp_287">1020.4444dp</dimen>
<dimen name="dp_288">1024.0000dp</dimen>
<dimen name="dp_289">1027.5556dp</dimen>
<dimen name="dp_290">1031.1111dp</dimen>
<dimen name="dp_291">1034.6667dp</dimen>
<dimen name="dp_292">1038.2222dp</dimen>
<dimen name="dp_293">1041.7778dp</dimen>
<dimen name="dp_294">1045.3333dp</dimen>
<dimen name="dp_295">1048.8889dp</dimen>
<dimen name="dp_296">1052.4444dp</dimen>
<dimen name="dp_297">1056.0000dp</dimen>
<dimen name="dp_298">1059.5556dp</dimen>
<dimen name="dp_299">1063.1111dp</dimen>
<dimen name="dp_300">1066.6667dp</dimen>
<dimen name="dp_301">1070.2222dp</dimen>
<dimen name="dp_302">1073.7778dp</dimen>
<dimen name="dp_303">1077.3333dp</dimen>
<dimen name="dp_304">1080.8889dp</dimen>
<dimen name="dp_305">1084.4444dp</dimen>
<dimen name="dp_306">1088.0000dp</dimen>
<dimen name="dp_307">1091.5556dp</dimen>
<dimen name="dp_308">1095.1111dp</dimen>
<dimen name="dp_309">1098.6667dp</dimen>
<dimen name="dp_310">1102.2222dp</dimen>
<dimen name="dp_311">1105.7778dp</dimen>
<dimen name="dp_312">1109.3333dp</dimen>
<dimen name="dp_313">1112.8889dp</dimen>
<dimen name="dp_314">1116.4444dp</dimen>
<dimen name="dp_315">1120.0000dp</dimen>
<dimen name="dp_316">1123.5556dp</dimen>
<dimen name="dp_317">1127.1111dp</dimen>
<dimen name="dp_318">1130.6667dp</dimen>
<dimen name="dp_319">1134.2222dp</dimen>
<dimen name="dp_320">1137.7778dp</dimen>
<dimen name="dp_321">1141.3333dp</dimen>
<dimen name="dp_322">1144.8889dp</dimen>
<dimen name="dp_323">1148.4444dp</dimen>
<dimen name="dp_324">1152.0000dp</dimen>
<dimen name="dp_325">1155.5556dp</dimen>
<dimen name="dp_326">1159.1111dp</dimen>
<dimen name="dp_327">1162.6667dp</dimen>
<dimen name="dp_328">1166.2222dp</dimen>
<dimen name="dp_329">1169.7778dp</dimen>
<dimen name="dp_330">1173.3333dp</dimen>
<dimen name="dp_331">1176.8889dp</dimen>
<dimen name="dp_332">1180.4444dp</dimen>
<dimen name="dp_333">1184.0000dp</dimen>
<dimen name="dp_334">1187.5556dp</dimen>
<dimen name="dp_335">1191.1111dp</dimen>
<dimen name="dp_336">1194.6667dp</dimen>
<dimen name="dp_337">1198.2222dp</dimen>
<dimen name="dp_338">1201.7778dp</dimen>
<dimen name="dp_339">1205.3333dp</dimen>
<dimen name="dp_340">1208.8889dp</dimen>
<dimen name="dp_341">1212.4444dp</dimen>
<dimen name="dp_342">1216.0000dp</dimen>
<dimen name="dp_343">1219.5556dp</dimen>
<dimen name="dp_344">1223.1111dp</dimen>
<dimen name="dp_345">1226.6667dp</dimen>
<dimen name="dp_346">1230.2222dp</dimen>
<dimen name="dp_347">1233.7778dp</dimen>
<dimen name="dp_348">1237.3333dp</dimen>
<dimen name="dp_349">1240.8889dp</dimen>
<dimen name="dp_350">1244.4444dp</dimen>
<dimen name="dp_351">1248.0000dp</dimen>
<dimen name="dp_352">1251.5556dp</dimen>
<dimen name="dp_353">1255.1111dp</dimen>
<dimen name="dp_354">1258.6667dp</dimen>
<dimen name="dp_355">1262.2222dp</dimen>
<dimen name="dp_356">1265.7778dp</dimen>
<dimen name="dp_357">1269.3333dp</dimen>
<dimen name="dp_358">1272.8889dp</dimen>
<dimen name="dp_359">1276.4444dp</dimen>
<dimen name="dp_360">1280.0000dp</dimen>
<dimen name="dp_365">1297.7778dp</dimen>
<dimen name="dp_370">1315.5556dp</dimen>
<dimen name="dp_400">1422.2222dp</dimen>
<dimen name="dp_410">1457.7778dp</dimen>
<dimen name="dp_422">1500.4444dp</dimen>
<dimen name="dp_472">1678.2222dp</dimen>
<dimen name="dp_500">1777.7778dp</dimen>
<dimen name="dp_600">2133.3333dp</dimen>
<dimen name="dp_640">2275.5556dp</dimen>
<dimen name="dp_720">2560.0000dp</dimen>
<dimen name="sp_6">21.3333sp</dimen>
<dimen name="sp_7">24.8889sp</dimen>
<dimen name="sp_8">28.4444sp</dimen>
<dimen name="sp_9">32.0000sp</dimen>
<dimen name="sp_10">35.5556sp</dimen>
<dimen name="sp_11">39.1111sp</dimen>
<dimen name="sp_12">42.6667sp</dimen>
<dimen name="sp_13">46.2222sp</dimen>
<dimen name="sp_14">49.7778sp</dimen>
<dimen name="sp_15">53.3333sp</dimen>
<dimen name="sp_16">56.8889sp</dimen>
<dimen name="sp_17">60.4444sp</dimen>
<dimen name="sp_18">64.0000sp</dimen>
<dimen name="sp_19">67.5556sp</dimen>
<dimen name="sp_20">71.1111sp</dimen>
<dimen name="sp_21">74.6667sp</dimen>
<dimen name="sp_22">78.2222sp</dimen>
<dimen name="sp_23">81.7778sp</dimen>
<dimen name="sp_24">85.3333sp</dimen>
<dimen name="sp_25">88.8889sp</dimen>
<dimen name="sp_28">99.5556sp</dimen>
<dimen name="sp_30">106.6667sp</dimen>
<dimen name="sp_32">113.7778sp</dimen>
<dimen name="sp_34">120.8889sp</dimen>
<dimen name="sp_36">128.0000sp</dimen>
<dimen name="sp_38">135.1111sp</dimen>
<dimen name="sp_40">142.2222sp</dimen>
<dimen name="sp_42">149.3333sp</dimen>
<dimen name="sp_48">170.6667sp</dimen>
</resources>
<?xml version="1.0" encoding="UTF-8"?>
<resources>
<dimen name="activity_horizontal_margin">60.6667dp</dimen>
<dimen name="activity_vertical_margin">60.6667dp</dimen>
<dimen name="title_bar_head">189.5833dp</dimen>
<dimen name="card_common_margin_left">@dimen/dp_15</dimen>
<dimen name="dp_m_60">-227.5000dp</dimen>
<dimen name="dp_m_30">-113.7500dp</dimen>
<dimen name="dp_m_20">-75.8333dp</dimen>
<dimen name="dp_m_12">-45.5000dp</dimen>
<dimen name="dp_m_10">-37.9167dp</dimen>
<dimen name="dp_m_8">-30.3333dp</dimen>
<dimen name="dp_m_5">-18.9583dp</dimen>
<dimen name="dp_m_2">-7.5833dp</dimen>
<dimen name="dp_m_1">-3.7917dp</dimen>
<dimen name="dp_0">0.0000dp</dimen>
<dimen name="dp_0_1">0.3792dp</dimen>
<dimen name="dp_0_5">1.8958dp</dimen>
<dimen name="dp_1">3.7917dp</dimen>
<dimen name="dp_1_5">5.6875dp</dimen>
<dimen name="dp_2">7.5833dp</dimen>
<dimen name="dp_2_5">9.4792dp</dimen>
<dimen name="dp_3">11.3750dp</dimen>
<dimen name="dp_3_5">13.2708dp</dimen>
<dimen name="dp_4">15.1667dp</dimen>
<dimen name="dp_4_5">17.0625dp</dimen>
<dimen name="dp_5">18.9583dp</dimen>
<dimen name="dp_6">22.7500dp</dimen>
<dimen name="dp_7">26.5417dp</dimen>
<dimen name="dp_7_5">28.4375dp</dimen>
<dimen name="dp_8">30.3333dp</dimen>
<dimen name="dp_9">34.1250dp</dimen>
<dimen name="dp_10">37.9167dp</dimen>
<dimen name="dp_11">41.7083dp</dimen>
<dimen name="dp_12">45.5000dp</dimen>
<dimen name="dp_13">49.2917dp</dimen>
<dimen name="dp_14">53.0833dp</dimen>
<dimen name="dp_15">56.8750dp</dimen>
<dimen name="dp_16">60.6667dp</dimen>
<dimen name="dp_17">64.4583dp</dimen>
<dimen name="dp_18">68.2500dp</dimen>
<dimen name="dp_19">72.0417dp</dimen>
<dimen name="dp_20">75.8333dp</dimen>
<dimen name="dp_21">79.6250dp</dimen>
<dimen name="dp_22">83.4167dp</dimen>
<dimen name="dp_23">87.2083dp</dimen>
<dimen name="dp_24">91.0000dp</dimen>
<dimen name="dp_25">94.7917dp</dimen>
<dimen name="dp_26">98.5833dp</dimen>
<dimen name="dp_27">102.3750dp</dimen>
<dimen name="dp_28">106.1667dp</dimen>
<dimen name="dp_29">109.9583dp</dimen>
<dimen name="dp_30">113.7500dp</dimen>
<dimen name="dp_31">117.5417dp</dimen>
<dimen name="dp_32">121.3333dp</dimen>
<dimen name="dp_33">125.1250dp</dimen>
<dimen name="dp_34">128.9167dp</dimen>
<dimen name="dp_35">132.7083dp</dimen>
<dimen name="dp_36">136.5000dp</dimen>
<dimen name="dp_37">140.2917dp</dimen>
<dimen name="dp_38">144.0833dp</dimen>
<dimen name="dp_39">147.8750dp</dimen>
<dimen name="dp_40">151.6667dp</dimen>
<dimen name="dp_41">155.4583dp</dimen>
<dimen name="dp_42">159.2500dp</dimen>
<dimen name="dp_43">163.0417dp</dimen>
<dimen name="dp_44">166.8333dp</dimen>
<dimen name="dp_45">170.6250dp</dimen>
<dimen name="dp_46">174.4167dp</dimen>
<dimen name="dp_47">178.2083dp</dimen>
<dimen name="dp_48">182.0000dp</dimen>
<dimen name="dp_49">185.7917dp</dimen>
<dimen name="dp_50">189.5833dp</dimen>
<dimen name="dp_51">193.3750dp</dimen>
<dimen name="dp_52">197.1667dp</dimen>
<dimen name="dp_53">200.9583dp</dimen>
<dimen name="dp_54">204.7500dp</dimen>
<dimen name="dp_55">208.5417dp</dimen>
<dimen name="dp_56">212.3333dp</dimen>
<dimen name="dp_57">216.1250dp</dimen>
<dimen name="dp_58">219.9167dp</dimen>
<dimen name="dp_59">223.7083dp</dimen>
<dimen name="dp_60">227.5000dp</dimen>
<dimen name="dp_61">231.2917dp</dimen>
<dimen name="dp_62">235.0833dp</dimen>
<dimen name="dp_63">238.8750dp</dimen>
<dimen name="dp_64">242.6667dp</dimen>
<dimen name="dp_65">246.4583dp</dimen>
<dimen name="dp_66">250.2500dp</dimen>
<dimen name="dp_67">254.0417dp</dimen>
<dimen name="dp_68">257.8333dp</dimen>
<dimen name="dp_69">261.6250dp</dimen>
<dimen name="dp_70">265.4167dp</dimen>
<dimen name="dp_71">269.2083dp</dimen>
<dimen name="dp_72">273.0000dp</dimen>
<dimen name="dp_73">276.7917dp</dimen>
<dimen name="dp_74">280.5833dp</dimen>
<dimen name="dp_75">284.3750dp</dimen>
<dimen name="dp_76">288.1667dp</dimen>
<dimen name="dp_77">291.9583dp</dimen>
<dimen name="dp_78">295.7500dp</dimen>
<dimen name="dp_79">299.5417dp</dimen>
<dimen name="dp_80">303.3333dp</dimen>
<dimen name="dp_81">307.1250dp</dimen>
<dimen name="dp_82">310.9167dp</dimen>
<dimen name="dp_83">314.7083dp</dimen>
<dimen name="dp_84">318.5000dp</dimen>
<dimen name="dp_85">322.2917dp</dimen>
<dimen name="dp_86">326.0833dp</dimen>
<dimen name="dp_87">329.8750dp</dimen>
<dimen name="dp_88">333.6667dp</dimen>
<dimen name="dp_89">337.4583dp</dimen>
<dimen name="dp_90">341.2500dp</dimen>
<dimen name="dp_91">345.0417dp</dimen>
<dimen name="dp_92">348.8333dp</dimen>
<dimen name="dp_93">352.6250dp</dimen>
<dimen name="dp_94">356.4167dp</dimen>
<dimen name="dp_95">360.2083dp</dimen>
<dimen name="dp_96">364.0000dp</dimen>
<dimen name="dp_97">367.7917dp</dimen>
<dimen name="dp_98">371.5833dp</dimen>
<dimen name="dp_99">375.3750dp</dimen>
<dimen name="dp_100">379.1667dp</dimen>
<dimen name="dp_101">382.9583dp</dimen>
<dimen name="dp_102">386.7500dp</dimen>
<dimen name="dp_103">390.5417dp</dimen>
<dimen name="dp_104">394.3333dp</dimen>
<dimen name="dp_104_5">396.2292dp</dimen>
<dimen name="dp_105">398.1250dp</dimen>
<dimen name="dp_106">401.9167dp</dimen>
<dimen name="dp_107">405.7083dp</dimen>
<dimen name="dp_108">409.5000dp</dimen>
<dimen name="dp_109">413.2917dp</dimen>
<dimen name="dp_110">417.0833dp</dimen>
<dimen name="dp_111">420.8750dp</dimen>
<dimen name="dp_112">424.6667dp</dimen>
<dimen name="dp_113">428.4583dp</dimen>
<dimen name="dp_114">432.2500dp</dimen>
<dimen name="dp_115">436.0417dp</dimen>
<dimen name="dp_116">439.8333dp</dimen>
<dimen name="dp_117">443.6250dp</dimen>
<dimen name="dp_118">447.4167dp</dimen>
<dimen name="dp_119">451.2083dp</dimen>
<dimen name="dp_120">455.0000dp</dimen>
<dimen name="dp_121">458.7917dp</dimen>
<dimen name="dp_122">462.5833dp</dimen>
<dimen name="dp_123">466.3750dp</dimen>
<dimen name="dp_124">470.1667dp</dimen>
<dimen name="dp_125">473.9583dp</dimen>
<dimen name="dp_126">477.7500dp</dimen>
<dimen name="dp_127">481.5417dp</dimen>
<dimen name="dp_128">485.3333dp</dimen>
<dimen name="dp_129">489.1250dp</dimen>
<dimen name="dp_130">492.9167dp</dimen>
<dimen name="dp_131">496.7083dp</dimen>
<dimen name="dp_132">500.5000dp</dimen>
<dimen name="dp_133">504.2917dp</dimen>
<dimen name="dp_134">508.0833dp</dimen>
<dimen name="dp_134_5">509.9792dp</dimen>
<dimen name="dp_135">511.8750dp</dimen>
<dimen name="dp_136">515.6667dp</dimen>
<dimen name="dp_137">519.4583dp</dimen>
<dimen name="dp_138">523.2500dp</dimen>
<dimen name="dp_139">527.0417dp</dimen>
<dimen name="dp_140">530.8333dp</dimen>
<dimen name="dp_141">534.6250dp</dimen>
<dimen name="dp_142">538.4167dp</dimen>
<dimen name="dp_143">542.2083dp</dimen>
<dimen name="dp_144">546.0000dp</dimen>
<dimen name="dp_145">549.7917dp</dimen>
<dimen name="dp_146">553.5833dp</dimen>
<dimen name="dp_147">557.3750dp</dimen>
<dimen name="dp_148">561.1667dp</dimen>
<dimen name="dp_149">564.9583dp</dimen>
<dimen name="dp_150">568.7500dp</dimen>
<dimen name="dp_151">572.5417dp</dimen>
<dimen name="dp_152">576.3333dp</dimen>
<dimen name="dp_153">580.1250dp</dimen>
<dimen name="dp_154">583.9167dp</dimen>
<dimen name="dp_155">587.7083dp</dimen>
<dimen name="dp_156">591.5000dp</dimen>
<dimen name="dp_157">595.2917dp</dimen>
<dimen name="dp_158">599.0833dp</dimen>
<dimen name="dp_159">602.8750dp</dimen>
<dimen name="dp_160">606.6667dp</dimen>
<dimen name="dp_161">610.4583dp</dimen>
<dimen name="dp_162">614.2500dp</dimen>
<dimen name="dp_163">618.0417dp</dimen>
<dimen name="dp_164">621.8333dp</dimen>
<dimen name="dp_165">625.6250dp</dimen>
<dimen name="dp_166">629.4167dp</dimen>
<dimen name="dp_167">633.2083dp</dimen>
<dimen name="dp_168">637.0000dp</dimen>
<dimen name="dp_169">640.7917dp</dimen>
<dimen name="dp_170">644.5833dp</dimen>
<dimen name="dp_171">648.3750dp</dimen>
<dimen name="dp_172">652.1667dp</dimen>
<dimen name="dp_173">655.9583dp</dimen>
<dimen name="dp_174">659.7500dp</dimen>
<dimen name="dp_175">663.5417dp</dimen>
<dimen name="dp_176">667.3333dp</dimen>
<dimen name="dp_177">671.1250dp</dimen>
<dimen name="dp_178">674.9167dp</dimen>
<dimen name="dp_179">678.7083dp</dimen>
<dimen name="dp_180">682.5000dp</dimen>
<dimen name="dp_181">686.2917dp</dimen>
<dimen name="dp_182">690.0833dp</dimen>
<dimen name="dp_183">693.8750dp</dimen>
<dimen name="dp_184">697.6667dp</dimen>
<dimen name="dp_185">701.4583dp</dimen>
<dimen name="dp_186">705.2500dp</dimen>
<dimen name="dp_187">709.0417dp</dimen>
<dimen name="dp_188">712.8333dp</dimen>
<dimen name="dp_189">716.6250dp</dimen>
<dimen name="dp_190">720.4167dp</dimen>
<dimen name="dp_191">724.2083dp</dimen>
<dimen name="dp_191_25">725.1562dp</dimen>
<dimen name="dp_192">728.0000dp</dimen>
<dimen name="dp_193">731.7917dp</dimen>
<dimen name="dp_194">735.5833dp</dimen>
<dimen name="dp_195">739.3750dp</dimen>
<dimen name="dp_196">743.1667dp</dimen>
<dimen name="dp_197">746.9583dp</dimen>
<dimen name="dp_198">750.7500dp</dimen>
<dimen name="dp_199">754.5417dp</dimen>
<dimen name="dp_200">758.3333dp</dimen>
<dimen name="dp_201">762.1250dp</dimen>
<dimen name="dp_202">765.9167dp</dimen>
<dimen name="dp_203">769.7083dp</dimen>
<dimen name="dp_204">773.5000dp</dimen>
<dimen name="dp_205">777.2917dp</dimen>
<dimen name="dp_206">781.0833dp</dimen>
<dimen name="dp_207">784.8750dp</dimen>
<dimen name="dp_208">788.6667dp</dimen>
<dimen name="dp_209">792.4583dp</dimen>
<dimen name="dp_210">796.2500dp</dimen>
<dimen name="dp_211">800.0417dp</dimen>
<dimen name="dp_212">803.8333dp</dimen>
<dimen name="dp_213">807.6250dp</dimen>
<dimen name="dp_214">811.4167dp</dimen>
<dimen name="dp_215">815.2083dp</dimen>
<dimen name="dp_216">819.0000dp</dimen>
<dimen name="dp_217">822.7917dp</dimen>
<dimen name="dp_218">826.5833dp</dimen>
<dimen name="dp_219">830.3750dp</dimen>
<dimen name="dp_220">834.1667dp</dimen>
<dimen name="dp_221">837.9583dp</dimen>
<dimen name="dp_222">841.7500dp</dimen>
<dimen name="dp_223">845.5417dp</dimen>
<dimen name="dp_224">849.3333dp</dimen>
<dimen name="dp_225">853.1250dp</dimen>
<dimen name="dp_226">856.9167dp</dimen>
<dimen name="dp_227">860.7083dp</dimen>
<dimen name="dp_228">864.5000dp</dimen>
<dimen name="dp_229">868.2917dp</dimen>
<dimen name="dp_230">872.0833dp</dimen>
<dimen name="dp_231">875.8750dp</dimen>
<dimen name="dp_232">879.6667dp</dimen>
<dimen name="dp_233">883.4583dp</dimen>
<dimen name="dp_234">887.2500dp</dimen>
<dimen name="dp_235">891.0417dp</dimen>
<dimen name="dp_236">894.8333dp</dimen>
<dimen name="dp_237">898.6250dp</dimen>
<dimen name="dp_238">902.4167dp</dimen>
<dimen name="dp_239">906.2083dp</dimen>
<dimen name="dp_240">910.0000dp</dimen>
<dimen name="dp_241">913.7917dp</dimen>
<dimen name="dp_242">917.5833dp</dimen>
<dimen name="dp_243">921.3750dp</dimen>
<dimen name="dp_244">925.1667dp</dimen>
<dimen name="dp_245">928.9583dp</dimen>
<dimen name="dp_246">932.7500dp</dimen>
<dimen name="dp_247">936.5417dp</dimen>
<dimen name="dp_248">940.3333dp</dimen>
<dimen name="dp_249">944.1250dp</dimen>
<dimen name="dp_250">947.9167dp</dimen>
<dimen name="dp_251">951.7083dp</dimen>
<dimen name="dp_252">955.5000dp</dimen>
<dimen name="dp_253">959.2917dp</dimen>
<dimen name="dp_254">963.0833dp</dimen>
<dimen name="dp_255">966.8750dp</dimen>
<dimen name="dp_256">970.6667dp</dimen>
<dimen name="dp_257">974.4583dp</dimen>
<dimen name="dp_258">978.2500dp</dimen>
<dimen name="dp_259">982.0417dp</dimen>
<dimen name="dp_260">985.8333dp</dimen>
<dimen name="dp_261">989.6250dp</dimen>
<dimen name="dp_262">993.4167dp</dimen>
<dimen name="dp_263">997.2083dp</dimen>
<dimen name="dp_264">1001.0000dp</dimen>
<dimen name="dp_265">1004.7917dp</dimen>
<dimen name="dp_266">1008.5833dp</dimen>
<dimen name="dp_267">1012.3750dp</dimen>
<dimen name="dp_268">1016.1667dp</dimen>
<dimen name="dp_269">1019.9583dp</dimen>
<dimen name="dp_270">1023.7500dp</dimen>
<dimen name="dp_271">1027.5417dp</dimen>
<dimen name="dp_272">1031.3333dp</dimen>
<dimen name="dp_273">1035.1250dp</dimen>
<dimen name="dp_274">1038.9167dp</dimen>
<dimen name="dp_275">1042.7083dp</dimen>
<dimen name="dp_276">1046.5000dp</dimen>
<dimen name="dp_277">1050.2917dp</dimen>
<dimen name="dp_278">1054.0833dp</dimen>
<dimen name="dp_279">1057.8750dp</dimen>
<dimen name="dp_280">1061.6667dp</dimen>
<dimen name="dp_281">1065.4583dp</dimen>
<dimen name="dp_282">1069.2500dp</dimen>
<dimen name="dp_283">1073.0417dp</dimen>
<dimen name="dp_284">1076.8333dp</dimen>
<dimen name="dp_285">1080.6250dp</dimen>
<dimen name="dp_286">1084.4167dp</dimen>
<dimen name="dp_287">1088.2083dp</dimen>
<dimen name="dp_288">1092.0000dp</dimen>
<dimen name="dp_289">1095.7917dp</dimen>
<dimen name="dp_290">1099.5833dp</dimen>
<dimen name="dp_291">1103.3750dp</dimen>
<dimen name="dp_292">1107.1667dp</dimen>
<dimen name="dp_293">1110.9583dp</dimen>
<dimen name="dp_294">1114.7500dp</dimen>
<dimen name="dp_295">1118.5417dp</dimen>
<dimen name="dp_296">1122.3333dp</dimen>
<dimen name="dp_297">1126.1250dp</dimen>
<dimen name="dp_298">1129.9167dp</dimen>
<dimen name="dp_299">1133.7083dp</dimen>
<dimen name="dp_300">1137.5000dp</dimen>
<dimen name="dp_301">1141.2917dp</dimen>
<dimen name="dp_302">1145.0833dp</dimen>
<dimen name="dp_303">1148.8750dp</dimen>
<dimen name="dp_304">1152.6667dp</dimen>
<dimen name="dp_305">1156.4583dp</dimen>
<dimen name="dp_306">1160.2500dp</dimen>
<dimen name="dp_307">1164.0417dp</dimen>
<dimen name="dp_308">1167.8333dp</dimen>
<dimen name="dp_309">1171.6250dp</dimen>
<dimen name="dp_310">1175.4167dp</dimen>
<dimen name="dp_311">1179.2083dp</dimen>
<dimen name="dp_312">1183.0000dp</dimen>
<dimen name="dp_313">1186.7917dp</dimen>
<dimen name="dp_314">1190.5833dp</dimen>
<dimen name="dp_315">1194.3750dp</dimen>
<dimen name="dp_316">1198.1667dp</dimen>
<dimen name="dp_317">1201.9583dp</dimen>
<dimen name="dp_318">1205.7500dp</dimen>
<dimen name="dp_319">1209.5417dp</dimen>
<dimen name="dp_320">1213.3333dp</dimen>
<dimen name="dp_321">1217.1250dp</dimen>
<dimen name="dp_322">1220.9167dp</dimen>
<dimen name="dp_323">1224.7083dp</dimen>
<dimen name="dp_324">1228.5000dp</dimen>
<dimen name="dp_325">1232.2917dp</dimen>
<dimen name="dp_326">1236.0833dp</dimen>
<dimen name="dp_327">1239.8750dp</dimen>
<dimen name="dp_328">1243.6667dp</dimen>
<dimen name="dp_329">1247.4583dp</dimen>
<dimen name="dp_330">1251.2500dp</dimen>
<dimen name="dp_331">1255.0417dp</dimen>
<dimen name="dp_332">1258.8333dp</dimen>
<dimen name="dp_333">1262.6250dp</dimen>
<dimen name="dp_334">1266.4167dp</dimen>
<dimen name="dp_335">1270.2083dp</dimen>
<dimen name="dp_336">1274.0000dp</dimen>
<dimen name="dp_337">1277.7917dp</dimen>
<dimen name="dp_338">1281.5833dp</dimen>
<dimen name="dp_339">1285.3750dp</dimen>
<dimen name="dp_340">1289.1667dp</dimen>
<dimen name="dp_341">1292.9583dp</dimen>
<dimen name="dp_342">1296.7500dp</dimen>
<dimen name="dp_343">1300.5417dp</dimen>
<dimen name="dp_344">1304.3333dp</dimen>
<dimen name="dp_345">1308.1250dp</dimen>
<dimen name="dp_346">1311.9167dp</dimen>
<dimen name="dp_347">1315.7083dp</dimen>
<dimen name="dp_348">1319.5000dp</dimen>
<dimen name="dp_349">1323.2917dp</dimen>
<dimen name="dp_350">1327.0833dp</dimen>
<dimen name="dp_351">1330.8750dp</dimen>
<dimen name="dp_352">1334.6667dp</dimen>
<dimen name="dp_353">1338.4583dp</dimen>
<dimen name="dp_354">1342.2500dp</dimen>
<dimen name="dp_355">1346.0417dp</dimen>
<dimen name="dp_356">1349.8333dp</dimen>
<dimen name="dp_357">1353.6250dp</dimen>
<dimen name="dp_358">1357.4167dp</dimen>
<dimen name="dp_359">1361.2083dp</dimen>
<dimen name="dp_360">1365.0000dp</dimen>
<dimen name="dp_365">1383.9583dp</dimen>
<dimen name="dp_370">1402.9167dp</dimen>
<dimen name="dp_400">1516.6667dp</dimen>
<dimen name="dp_410">1554.5833dp</dimen>
<dimen name="dp_422">1600.0833dp</dimen>
<dimen name="dp_472">1789.6667dp</dimen>
<dimen name="dp_500">1895.8333dp</dimen>
<dimen name="dp_600">2275.0000dp</dimen>
<dimen name="dp_640">2426.6667dp</dimen>
<dimen name="dp_720">2730.0000dp</dimen>
<dimen name="sp_6">22.7500sp</dimen>
<dimen name="sp_7">26.5417sp</dimen>
<dimen name="sp_8">30.3333sp</dimen>
<dimen name="sp_9">34.1250sp</dimen>
<dimen name="sp_10">37.9167sp</dimen>
<dimen name="sp_11">41.7083sp</dimen>
<dimen name="sp_12">45.5000sp</dimen>
<dimen name="sp_13">49.2917sp</dimen>
<dimen name="sp_14">53.0833sp</dimen>
<dimen name="sp_15">56.8750sp</dimen>
<dimen name="sp_16">60.6667sp</dimen>
<dimen name="sp_17">64.4583sp</dimen>
<dimen name="sp_18">68.2500sp</dimen>
<dimen name="sp_19">72.0417sp</dimen>
<dimen name="sp_20">75.8333sp</dimen>
<dimen name="sp_21">79.6250sp</dimen>
<dimen name="sp_22">83.4167sp</dimen>
<dimen name="sp_23">87.2083sp</dimen>
<dimen name="sp_24">91.0000sp</dimen>
<dimen name="sp_25">94.7917sp</dimen>
<dimen name="sp_28">106.1667sp</dimen>
<dimen name="sp_30">113.7500sp</dimen>
<dimen name="sp_32">121.3333sp</dimen>
<dimen name="sp_34">128.9167sp</dimen>
<dimen name="sp_36">136.5000sp</dimen>
<dimen name="sp_38">144.0833sp</dimen>
<dimen name="sp_40">151.6667sp</dimen>
<dimen name="sp_42">159.2500sp</dimen>
<dimen name="sp_48">182.0000sp</dimen>
</resources>
<?xml version="1.0" encoding="UTF-8"?>
<resources>
<dimen name="activity_horizontal_margin">17.0667dp</dimen>
<dimen name="activity_vertical_margin">17.0667dp</dimen>
<dimen name="title_bar_head">53.3333dp</dimen>
<dimen name="card_common_margin_left">@dimen/dp_15</dimen>
<dimen name="dp_m_60">-64.0000dp</dimen>
<dimen name="dp_m_30">-32.0000dp</dimen>
<dimen name="dp_m_20">-21.3333dp</dimen>
<dimen name="dp_m_12">-12.8000dp</dimen>
<dimen name="dp_m_10">-10.6667dp</dimen>
<dimen name="dp_m_8">-8.5333dp</dimen>
<dimen name="dp_m_5">-5.3333dp</dimen>
<dimen name="dp_m_2">-2.1333dp</dimen>
<dimen name="dp_m_1">-1.0667dp</dimen>
<dimen name="dp_0">0.0000dp</dimen>
<dimen name="dp_0_1">0.1067dp</dimen>
<dimen name="dp_0_5">0.5333dp</dimen>
<dimen name="dp_1">1.0667dp</dimen>
<dimen name="dp_1_5">1.6000dp</dimen>
<dimen name="dp_2">2.1333dp</dimen>
<dimen name="dp_2_5">2.6667dp</dimen>
<dimen name="dp_3">3.2000dp</dimen>
<dimen name="dp_3_5">3.7333dp</dimen>
<dimen name="dp_4">4.2667dp</dimen>
<dimen name="dp_4_5">4.8000dp</dimen>
<dimen name="dp_5">5.3333dp</dimen>
<dimen name="dp_6">6.4000dp</dimen>
<dimen name="dp_7">7.4667dp</dimen>
<dimen name="dp_7_5">8.0000dp</dimen>
<dimen name="dp_8">8.5333dp</dimen>
<dimen name="dp_9">9.6000dp</dimen>
<dimen name="dp_10">10.6667dp</dimen>
<dimen name="dp_11">11.7333dp</dimen>
<dimen name="dp_12">12.8000dp</dimen>
<dimen name="dp_13">13.8667dp</dimen>
<dimen name="dp_14">14.9333dp</dimen>
<dimen name="dp_15">16.0000dp</dimen>
<dimen name="dp_16">17.0667dp</dimen>
<dimen name="dp_17">18.1333dp</dimen>
<dimen name="dp_18">19.2000dp</dimen>
<dimen name="dp_19">20.2667dp</dimen>
<dimen name="dp_20">21.3333dp</dimen>
<dimen name="dp_21">22.4000dp</dimen>
<dimen name="dp_22">23.4667dp</dimen>
<dimen name="dp_23">24.5333dp</dimen>
<dimen name="dp_24">25.6000dp</dimen>
<dimen name="dp_25">26.6667dp</dimen>
<dimen name="dp_26">27.7333dp</dimen>
<dimen name="dp_27">28.8000dp</dimen>
<dimen name="dp_28">29.8667dp</dimen>
<dimen name="dp_29">30.9333dp</dimen>
<dimen name="dp_30">32.0000dp</dimen>
<dimen name="dp_31">33.0667dp</dimen>
<dimen name="dp_32">34.1333dp</dimen>
<dimen name="dp_33">35.2000dp</dimen>
<dimen name="dp_34">36.2667dp</dimen>
<dimen name="dp_35">37.3333dp</dimen>
<dimen name="dp_36">38.4000dp</dimen>
<dimen name="dp_37">39.4667dp</dimen>
<dimen name="dp_38">40.5333dp</dimen>
<dimen name="dp_39">41.6000dp</dimen>
<dimen name="dp_40">42.6667dp</dimen>
<dimen name="dp_41">43.7333dp</dimen>
<dimen name="dp_42">44.8000dp</dimen>
<dimen name="dp_43">45.8667dp</dimen>
<dimen name="dp_44">46.9333dp</dimen>
<dimen name="dp_45">48.0000dp</dimen>
<dimen name="dp_46">49.0667dp</dimen>
<dimen name="dp_47">50.1333dp</dimen>
<dimen name="dp_48">51.2000dp</dimen>
<dimen name="dp_49">52.2667dp</dimen>
<dimen name="dp_50">53.3333dp</dimen>
<dimen name="dp_51">54.4000dp</dimen>
<dimen name="dp_52">55.4667dp</dimen>
<dimen name="dp_53">56.5333dp</dimen>
<dimen name="dp_54">57.6000dp</dimen>
<dimen name="dp_55">58.6667dp</dimen>
<dimen name="dp_56">59.7333dp</dimen>
<dimen name="dp_57">60.8000dp</dimen>
<dimen name="dp_58">61.8667dp</dimen>
<dimen name="dp_59">62.9333dp</dimen>
<dimen name="dp_60">64.0000dp</dimen>
<dimen name="dp_61">65.0667dp</dimen>
<dimen name="dp_62">66.1333dp</dimen>
<dimen name="dp_63">67.2000dp</dimen>
<dimen name="dp_64">68.2667dp</dimen>
<dimen name="dp_65">69.3333dp</dimen>
<dimen name="dp_66">70.4000dp</dimen>
<dimen name="dp_67">71.4667dp</dimen>
<dimen name="dp_68">72.5333dp</dimen>
<dimen name="dp_69">73.6000dp</dimen>
<dimen name="dp_70">74.6667dp</dimen>
<dimen name="dp_71">75.7333dp</dimen>
<dimen name="dp_72">76.8000dp</dimen>
<dimen name="dp_73">77.8667dp</dimen>
<dimen name="dp_74">78.9333dp</dimen>
<dimen name="dp_75">80.0000dp</dimen>
<dimen name="dp_76">81.0667dp</dimen>
<dimen name="dp_77">82.1333dp</dimen>
<dimen name="dp_78">83.2000dp</dimen>
<dimen name="dp_79">84.2667dp</dimen>
<dimen name="dp_80">85.3333dp</dimen>
<dimen name="dp_81">86.4000dp</dimen>
<dimen name="dp_82">87.4667dp</dimen>
<dimen name="dp_83">88.5333dp</dimen>
<dimen name="dp_84">89.6000dp</dimen>
<dimen name="dp_85">90.6667dp</dimen>
<dimen name="dp_86">91.7333dp</dimen>
<dimen name="dp_87">92.8000dp</dimen>
<dimen name="dp_88">93.8667dp</dimen>
<dimen name="dp_89">94.9333dp</dimen>
<dimen name="dp_90">96.0000dp</dimen>
<dimen name="dp_91">97.0667dp</dimen>
<dimen name="dp_92">98.1333dp</dimen>
<dimen name="dp_93">99.2000dp</dimen>
<dimen name="dp_94">100.2667dp</dimen>
<dimen name="dp_95">101.3333dp</dimen>
<dimen name="dp_96">102.4000dp</dimen>
<dimen name="dp_97">103.4667dp</dimen>
<dimen name="dp_98">104.5333dp</dimen>
<dimen name="dp_99">105.6000dp</dimen>
<dimen name="dp_100">106.6667dp</dimen>
<dimen name="dp_101">107.7333dp</dimen>
<dimen name="dp_102">108.8000dp</dimen>
<dimen name="dp_103">109.8667dp</dimen>
<dimen name="dp_104">110.9333dp</dimen>
<dimen name="dp_104_5">111.4667dp</dimen>
<dimen name="dp_105">112.0000dp</dimen>
<dimen name="dp_106">113.0667dp</dimen>
<dimen name="dp_107">114.1333dp</dimen>
<dimen name="dp_108">115.2000dp</dimen>
<dimen name="dp_109">116.2667dp</dimen>
<dimen name="dp_110">117.3333dp</dimen>
<dimen name="dp_111">118.4000dp</dimen>
<dimen name="dp_112">119.4667dp</dimen>
<dimen name="dp_113">120.5333dp</dimen>
<dimen name="dp_114">121.6000dp</dimen>
<dimen name="dp_115">122.6667dp</dimen>
<dimen name="dp_116">123.7333dp</dimen>
<dimen name="dp_117">124.8000dp</dimen>
<dimen name="dp_118">125.8667dp</dimen>
<dimen name="dp_119">126.9333dp</dimen>
<dimen name="dp_120">128.0000dp</dimen>
<dimen name="dp_121">129.0667dp</dimen>
<dimen name="dp_122">130.1333dp</dimen>
<dimen name="dp_123">131.2000dp</dimen>
<dimen name="dp_124">132.2667dp</dimen>
<dimen name="dp_125">133.3333dp</dimen>
<dimen name="dp_126">134.4000dp</dimen>
<dimen name="dp_127">135.4667dp</dimen>
<dimen name="dp_128">136.5333dp</dimen>
<dimen name="dp_129">137.6000dp</dimen>
<dimen name="dp_130">138.6667dp</dimen>
<dimen name="dp_131">139.7333dp</dimen>
<dimen name="dp_132">140.8000dp</dimen>
<dimen name="dp_133">141.8667dp</dimen>
<dimen name="dp_134">142.9333dp</dimen>
<dimen name="dp_134_5">143.4667dp</dimen>
<dimen name="dp_135">144.0000dp</dimen>
<dimen name="dp_136">145.0667dp</dimen>
<dimen name="dp_137">146.1333dp</dimen>
<dimen name="dp_138">147.2000dp</dimen>
<dimen name="dp_139">148.2667dp</dimen>
<dimen name="dp_140">149.3333dp</dimen>
<dimen name="dp_141">150.4000dp</dimen>
<dimen name="dp_142">151.4667dp</dimen>
<dimen name="dp_143">152.5333dp</dimen>
<dimen name="dp_144">153.6000dp</dimen>
<dimen name="dp_145">154.6667dp</dimen>
<dimen name="dp_146">155.7333dp</dimen>
<dimen name="dp_147">156.8000dp</dimen>
<dimen name="dp_148">157.8667dp</dimen>
<dimen name="dp_149">158.9333dp</dimen>
<dimen name="dp_150">160.0000dp</dimen>
<dimen name="dp_151">161.0667dp</dimen>
<dimen name="dp_152">162.1333dp</dimen>
<dimen name="dp_153">163.2000dp</dimen>
<dimen name="dp_154">164.2667dp</dimen>
<dimen name="dp_155">165.3333dp</dimen>
<dimen name="dp_156">166.4000dp</dimen>
<dimen name="dp_157">167.4667dp</dimen>
<dimen name="dp_158">168.5333dp</dimen>
<dimen name="dp_159">169.6000dp</dimen>
<dimen name="dp_160">170.6667dp</dimen>
<dimen name="dp_161">171.7333dp</dimen>
<dimen name="dp_162">172.8000dp</dimen>
<dimen name="dp_163">173.8667dp</dimen>
<dimen name="dp_164">174.9333dp</dimen>
<dimen name="dp_165">176.0000dp</dimen>
<dimen name="dp_166">177.0667dp</dimen>
<dimen name="dp_167">178.1333dp</dimen>
<dimen name="dp_168">179.2000dp</dimen>
<dimen name="dp_169">180.2667dp</dimen>
<dimen name="dp_170">181.3333dp</dimen>
<dimen name="dp_171">182.4000dp</dimen>
<dimen name="dp_172">183.4667dp</dimen>
<dimen name="dp_173">184.5333dp</dimen>
<dimen name="dp_174">185.6000dp</dimen>
<dimen name="dp_175">186.6667dp</dimen>
<dimen name="dp_176">187.7333dp</dimen>
<dimen name="dp_177">188.8000dp</dimen>
<dimen name="dp_178">189.8667dp</dimen>
<dimen name="dp_179">190.9333dp</dimen>
<dimen name="dp_180">192.0000dp</dimen>
<dimen name="dp_181">193.0667dp</dimen>
<dimen name="dp_182">194.1333dp</dimen>
<dimen name="dp_183">195.2000dp</dimen>
<dimen name="dp_184">196.2667dp</dimen>
<dimen name="dp_185">197.3333dp</dimen>
<dimen name="dp_186">198.4000dp</dimen>
<dimen name="dp_187">199.4667dp</dimen>
<dimen name="dp_188">200.5333dp</dimen>
<dimen name="dp_189">201.6000dp</dimen>
<dimen name="dp_190">202.6667dp</dimen>
<dimen name="dp_191">203.7333dp</dimen>
<dimen name="dp_191_25">204.0000dp</dimen>
<dimen name="dp_192">204.8000dp</dimen>
<dimen name="dp_193">205.8667dp</dimen>
<dimen name="dp_194">206.9333dp</dimen>
<dimen name="dp_195">208.0000dp</dimen>
<dimen name="dp_196">209.0667dp</dimen>
<dimen name="dp_197">210.1333dp</dimen>
<dimen name="dp_198">211.2000dp</dimen>
<dimen name="dp_199">212.2667dp</dimen>
<dimen name="dp_200">213.3333dp</dimen>
<dimen name="dp_201">214.4000dp</dimen>
<dimen name="dp_202">215.4667dp</dimen>
<dimen name="dp_203">216.5333dp</dimen>
<dimen name="dp_204">217.6000dp</dimen>
<dimen name="dp_205">218.6667dp</dimen>
<dimen name="dp_206">219.7333dp</dimen>
<dimen name="dp_207">220.8000dp</dimen>
<dimen name="dp_208">221.8667dp</dimen>
<dimen name="dp_209">222.9333dp</dimen>
<dimen name="dp_210">224.0000dp</dimen>
<dimen name="dp_211">225.0667dp</dimen>
<dimen name="dp_212">226.1333dp</dimen>
<dimen name="dp_213">227.2000dp</dimen>
<dimen name="dp_214">228.2667dp</dimen>
<dimen name="dp_215">229.3333dp</dimen>
<dimen name="dp_216">230.4000dp</dimen>
<dimen name="dp_217">231.4667dp</dimen>
<dimen name="dp_218">232.5333dp</dimen>
<dimen name="dp_219">233.6000dp</dimen>
<dimen name="dp_220">234.6667dp</dimen>
<dimen name="dp_221">235.7333dp</dimen>
<dimen name="dp_222">236.8000dp</dimen>
<dimen name="dp_223">237.8667dp</dimen>
<dimen name="dp_224">238.9333dp</dimen>
<dimen name="dp_225">240.0000dp</dimen>
<dimen name="dp_226">241.0667dp</dimen>
<dimen name="dp_227">242.1333dp</dimen>
<dimen name="dp_228">243.2000dp</dimen>
<dimen name="dp_229">244.2667dp</dimen>
<dimen name="dp_230">245.3333dp</dimen>
<dimen name="dp_231">246.4000dp</dimen>
<dimen name="dp_232">247.4667dp</dimen>
<dimen name="dp_233">248.5333dp</dimen>
<dimen name="dp_234">249.6000dp</dimen>
<dimen name="dp_235">250.6667dp</dimen>
<dimen name="dp_236">251.7333dp</dimen>
<dimen name="dp_237">252.8000dp</dimen>
<dimen name="dp_238">253.8667dp</dimen>
<dimen name="dp_239">254.9333dp</dimen>
<dimen name="dp_240">256.0000dp</dimen>
<dimen name="dp_241">257.0667dp</dimen>
<dimen name="dp_242">258.1333dp</dimen>
<dimen name="dp_243">259.2000dp</dimen>
<dimen name="dp_244">260.2667dp</dimen>
<dimen name="dp_245">261.3333dp</dimen>
<dimen name="dp_246">262.4000dp</dimen>
<dimen name="dp_247">263.4667dp</dimen>
<dimen name="dp_248">264.5333dp</dimen>
<dimen name="dp_249">265.6000dp</dimen>
<dimen name="dp_250">266.6667dp</dimen>
<dimen name="dp_251">267.7333dp</dimen>
<dimen name="dp_252">268.8000dp</dimen>
<dimen name="dp_253">269.8667dp</dimen>
<dimen name="dp_254">270.9333dp</dimen>
<dimen name="dp_255">272.0000dp</dimen>
<dimen name="dp_256">273.0667dp</dimen>
<dimen name="dp_257">274.1333dp</dimen>
<dimen name="dp_258">275.2000dp</dimen>
<dimen name="dp_259">276.2667dp</dimen>
<dimen name="dp_260">277.3333dp</dimen>
<dimen name="dp_261">278.4000dp</dimen>
<dimen name="dp_262">279.4667dp</dimen>
<dimen name="dp_263">280.5333dp</dimen>
<dimen name="dp_264">281.6000dp</dimen>
<dimen name="dp_265">282.6667dp</dimen>
<dimen name="dp_266">283.7333dp</dimen>
<dimen name="dp_267">284.8000dp</dimen>
<dimen name="dp_268">285.8667dp</dimen>
<dimen name="dp_269">286.9333dp</dimen>
<dimen name="dp_270">288.0000dp</dimen>
<dimen name="dp_271">289.0667dp</dimen>
<dimen name="dp_272">290.1333dp</dimen>
<dimen name="dp_273">291.2000dp</dimen>
<dimen name="dp_274">292.2667dp</dimen>
<dimen name="dp_275">293.3333dp</dimen>
<dimen name="dp_276">294.4000dp</dimen>
<dimen name="dp_277">295.4667dp</dimen>
<dimen name="dp_278">296.5333dp</dimen>
<dimen name="dp_279">297.6000dp</dimen>
<dimen name="dp_280">298.6667dp</dimen>
<dimen name="dp_281">299.7333dp</dimen>
<dimen name="dp_282">300.8000dp</dimen>
<dimen name="dp_283">301.8667dp</dimen>
<dimen name="dp_284">302.9333dp</dimen>
<dimen name="dp_285">304.0000dp</dimen>
<dimen name="dp_286">305.0667dp</dimen>
<dimen name="dp_287">306.1333dp</dimen>
<dimen name="dp_288">307.2000dp</dimen>
<dimen name="dp_289">308.2667dp</dimen>
<dimen name="dp_290">309.3333dp</dimen>
<dimen name="dp_291">310.4000dp</dimen>
<dimen name="dp_292">311.4667dp</dimen>
<dimen name="dp_293">312.5333dp</dimen>
<dimen name="dp_294">313.6000dp</dimen>
<dimen name="dp_295">314.6667dp</dimen>
<dimen name="dp_296">315.7333dp</dimen>
<dimen name="dp_297">316.8000dp</dimen>
<dimen name="dp_298">317.8667dp</dimen>
<dimen name="dp_299">318.9333dp</dimen>
<dimen name="dp_300">320.0000dp</dimen>
<dimen name="dp_301">321.0667dp</dimen>
<dimen name="dp_302">322.1333dp</dimen>
<dimen name="dp_303">323.2000dp</dimen>
<dimen name="dp_304">324.2667dp</dimen>
<dimen name="dp_305">325.3333dp</dimen>
<dimen name="dp_306">326.4000dp</dimen>
<dimen name="dp_307">327.4667dp</dimen>
<dimen name="dp_308">328.5333dp</dimen>
<dimen name="dp_309">329.6000dp</dimen>
<dimen name="dp_310">330.6667dp</dimen>
<dimen name="dp_311">331.7333dp</dimen>
<dimen name="dp_312">332.8000dp</dimen>
<dimen name="dp_313">333.8667dp</dimen>
<dimen name="dp_314">334.9333dp</dimen>
<dimen name="dp_315">336.0000dp</dimen>
<dimen name="dp_316">337.0667dp</dimen>
<dimen name="dp_317">338.1333dp</dimen>
<dimen name="dp_318">339.2000dp</dimen>
<dimen name="dp_319">340.2667dp</dimen>
<dimen name="dp_320">341.3333dp</dimen>
<dimen name="dp_321">342.4000dp</dimen>
<dimen name="dp_322">343.4667dp</dimen>
<dimen name="dp_323">344.5333dp</dimen>
<dimen name="dp_324">345.6000dp</dimen>
<dimen name="dp_325">346.6667dp</dimen>
<dimen name="dp_326">347.7333dp</dimen>
<dimen name="dp_327">348.8000dp</dimen>
<dimen name="dp_328">349.8667dp</dimen>
<dimen name="dp_329">350.9333dp</dimen>
<dimen name="dp_330">352.0000dp</dimen>
<dimen name="dp_331">353.0667dp</dimen>
<dimen name="dp_332">354.1333dp</dimen>
<dimen name="dp_333">355.2000dp</dimen>
<dimen name="dp_334">356.2667dp</dimen>
<dimen name="dp_335">357.3333dp</dimen>
<dimen name="dp_336">358.4000dp</dimen>
<dimen name="dp_337">359.4667dp</dimen>
<dimen name="dp_338">360.5333dp</dimen>
<dimen name="dp_339">361.6000dp</dimen>
<dimen name="dp_340">362.6667dp</dimen>
<dimen name="dp_341">363.7333dp</dimen>
<dimen name="dp_342">364.8000dp</dimen>
<dimen name="dp_343">365.8667dp</dimen>
<dimen name="dp_344">366.9333dp</dimen>
<dimen name="dp_345">368.0000dp</dimen>
<dimen name="dp_346">369.0667dp</dimen>
<dimen name="dp_347">370.1333dp</dimen>
<dimen name="dp_348">371.2000dp</dimen>
<dimen name="dp_349">372.2667dp</dimen>
<dimen name="dp_350">373.3333dp</dimen>
<dimen name="dp_351">374.4000dp</dimen>
<dimen name="dp_352">375.4667dp</dimen>
<dimen name="dp_353">376.5333dp</dimen>
<dimen name="dp_354">377.6000dp</dimen>
<dimen name="dp_355">378.6667dp</dimen>
<dimen name="dp_356">379.7333dp</dimen>
<dimen name="dp_357">380.8000dp</dimen>
<dimen name="dp_358">381.8667dp</dimen>
<dimen name="dp_359">382.9333dp</dimen>
<dimen name="dp_360">384.0000dp</dimen>
<dimen name="dp_365">389.3333dp</dimen>
<dimen name="dp_370">394.6667dp</dimen>
<dimen name="dp_400">426.6667dp</dimen>
<dimen name="dp_410">437.3333dp</dimen>
<dimen name="dp_422">450.1333dp</dimen>
<dimen name="dp_472">503.4667dp</dimen>
<dimen name="dp_500">533.3333dp</dimen>
<dimen name="dp_600">640.0000dp</dimen>
<dimen name="dp_640">682.6667dp</dimen>
<dimen name="dp_720">768.0000dp</dimen>
<dimen name="sp_6">6.4000sp</dimen>
<dimen name="sp_7">7.4667sp</dimen>
<dimen name="sp_8">8.5333sp</dimen>
<dimen name="sp_9">9.6000sp</dimen>
<dimen name="sp_10">10.6667sp</dimen>
<dimen name="sp_11">11.7333sp</dimen>
<dimen name="sp_12">12.8000sp</dimen>
<dimen name="sp_13">13.8667sp</dimen>
<dimen name="sp_14">14.9333sp</dimen>
<dimen name="sp_15">16.0000sp</dimen>
<dimen name="sp_16">17.0667sp</dimen>
<dimen name="sp_17">18.1333sp</dimen>
<dimen name="sp_18">19.2000sp</dimen>
<dimen name="sp_19">20.2667sp</dimen>
<dimen name="sp_20">21.3333sp</dimen>
<dimen name="sp_21">22.4000sp</dimen>
<dimen name="sp_22">23.4667sp</dimen>
<dimen name="sp_23">24.5333sp</dimen>
<dimen name="sp_24">25.6000sp</dimen>
<dimen name="sp_25">26.6667sp</dimen>
<dimen name="sp_28">29.8667sp</dimen>
<dimen name="sp_30">32.0000sp</dimen>
<dimen name="sp_32">34.1333sp</dimen>
<dimen name="sp_34">36.2667sp</dimen>
<dimen name="sp_36">38.4000sp</dimen>
<dimen name="sp_38">40.5333sp</dimen>
<dimen name="sp_40">42.6667sp</dimen>
<dimen name="sp_42">44.8000sp</dimen>
<dimen name="sp_48">51.2000sp</dimen>
</resources>
<?xml version="1.0" encoding="UTF-8"?>
<resources>
<dimen name="activity_horizontal_margin">17.4222dp</dimen>
<dimen name="activity_vertical_margin">17.4222dp</dimen>
<dimen name="title_bar_head">54.4444dp</dimen>
<dimen name="card_common_margin_left">@dimen/dp_15</dimen>
<dimen name="dp_m_60">-65.3333dp</dimen>
<dimen name="dp_m_30">-32.6667dp</dimen>
<dimen name="dp_m_20">-21.7778dp</dimen>
<dimen name="dp_m_12">-13.0667dp</dimen>
<dimen name="dp_m_10">-10.8889dp</dimen>
<dimen name="dp_m_8">-8.7111dp</dimen>
<dimen name="dp_m_5">-5.4444dp</dimen>
<dimen name="dp_m_2">-2.1778dp</dimen>
<dimen name="dp_m_1">-1.0889dp</dimen>
<dimen name="dp_0">0.0000dp</dimen>
<dimen name="dp_0_1">0.1089dp</dimen>
<dimen name="dp_0_5">0.5444dp</dimen>
<dimen name="dp_1">1.0889dp</dimen>
<dimen name="dp_1_5">1.6333dp</dimen>
<dimen name="dp_2">2.1778dp</dimen>
<dimen name="dp_2_5">2.7222dp</dimen>
<dimen name="dp_3">3.2667dp</dimen>
<dimen name="dp_3_5">3.8111dp</dimen>
<dimen name="dp_4">4.3556dp</dimen>
<dimen name="dp_4_5">4.9000dp</dimen>
<dimen name="dp_5">5.4444dp</dimen>
<dimen name="dp_6">6.5333dp</dimen>
<dimen name="dp_7">7.6222dp</dimen>
<dimen name="dp_7_5">8.1667dp</dimen>
<dimen name="dp_8">8.7111dp</dimen>
<dimen name="dp_9">9.8000dp</dimen>
<dimen name="dp_10">10.8889dp</dimen>
<dimen name="dp_11">11.9778dp</dimen>
<dimen name="dp_12">13.0667dp</dimen>
<dimen name="dp_13">14.1556dp</dimen>
<dimen name="dp_14">15.2444dp</dimen>
<dimen name="dp_15">16.3333dp</dimen>
<dimen name="dp_16">17.4222dp</dimen>
<dimen name="dp_17">18.5111dp</dimen>
<dimen name="dp_18">19.6000dp</dimen>
<dimen name="dp_19">20.6889dp</dimen>
<dimen name="dp_20">21.7778dp</dimen>
<dimen name="dp_21">22.8667dp</dimen>
<dimen name="dp_22">23.9556dp</dimen>
<dimen name="dp_23">25.0444dp</dimen>
<dimen name="dp_24">26.1333dp</dimen>
<dimen name="dp_25">27.2222dp</dimen>
<dimen name="dp_26">28.3111dp</dimen>
<dimen name="dp_27">29.4000dp</dimen>
<dimen name="dp_28">30.4889dp</dimen>
<dimen name="dp_29">31.5778dp</dimen>
<dimen name="dp_30">32.6667dp</dimen>
<dimen name="dp_31">33.7556dp</dimen>
<dimen name="dp_32">34.8444dp</dimen>
<dimen name="dp_33">35.9333dp</dimen>
<dimen name="dp_34">37.0222dp</dimen>
<dimen name="dp_35">38.1111dp</dimen>
<dimen name="dp_36">39.2000dp</dimen>
<dimen name="dp_37">40.2889dp</dimen>
<dimen name="dp_38">41.3778dp</dimen>
<dimen name="dp_39">42.4667dp</dimen>
<dimen name="dp_40">43.5556dp</dimen>
<dimen name="dp_41">44.6444dp</dimen>
<dimen name="dp_42">45.7333dp</dimen>
<dimen name="dp_43">46.8222dp</dimen>
<dimen name="dp_44">47.9111dp</dimen>
<dimen name="dp_45">49.0000dp</dimen>
<dimen name="dp_46">50.0889dp</dimen>
<dimen name="dp_47">51.1778dp</dimen>
<dimen name="dp_48">52.2667dp</dimen>
<dimen name="dp_49">53.3556dp</dimen>
<dimen name="dp_50">54.4444dp</dimen>
<dimen name="dp_51">55.5333dp</dimen>
<dimen name="dp_52">56.6222dp</dimen>
<dimen name="dp_53">57.7111dp</dimen>
<dimen name="dp_54">58.8000dp</dimen>
<dimen name="dp_55">59.8889dp</dimen>
<dimen name="dp_56">60.9778dp</dimen>
<dimen name="dp_57">62.0667dp</dimen>
<dimen name="dp_58">63.1556dp</dimen>
<dimen name="dp_59">64.2444dp</dimen>
<dimen name="dp_60">65.3333dp</dimen>
<dimen name="dp_61">66.4222dp</dimen>
<dimen name="dp_62">67.5111dp</dimen>
<dimen name="dp_63">68.6000dp</dimen>
<dimen name="dp_64">69.6889dp</dimen>
<dimen name="dp_65">70.7778dp</dimen>
<dimen name="dp_66">71.8667dp</dimen>
<dimen name="dp_67">72.9556dp</dimen>
<dimen name="dp_68">74.0444dp</dimen>
<dimen name="dp_69">75.1333dp</dimen>
<dimen name="dp_70">76.2222dp</dimen>
<dimen name="dp_71">77.3111dp</dimen>
<dimen name="dp_72">78.4000dp</dimen>
<dimen name="dp_73">79.4889dp</dimen>
<dimen name="dp_74">80.5778dp</dimen>
<dimen name="dp_75">81.6667dp</dimen>
<dimen name="dp_76">82.7556dp</dimen>
<dimen name="dp_77">83.8444dp</dimen>
<dimen name="dp_78">84.9333dp</dimen>
<dimen name="dp_79">86.0222dp</dimen>
<dimen name="dp_80">87.1111dp</dimen>
<dimen name="dp_81">88.2000dp</dimen>
<dimen name="dp_82">89.2889dp</dimen>
<dimen name="dp_83">90.3778dp</dimen>
<dimen name="dp_84">91.4667dp</dimen>
<dimen name="dp_85">92.5556dp</dimen>
<dimen name="dp_86">93.6444dp</dimen>
<dimen name="dp_87">94.7333dp</dimen>
<dimen name="dp_88">95.8222dp</dimen>
<dimen name="dp_89">96.9111dp</dimen>
<dimen name="dp_90">98.0000dp</dimen>
<dimen name="dp_91">99.0889dp</dimen>
<dimen name="dp_92">100.1778dp</dimen>
<dimen name="dp_93">101.2667dp</dimen>
<dimen name="dp_94">102.3556dp</dimen>
<dimen name="dp_95">103.4444dp</dimen>
<dimen name="dp_96">104.5333dp</dimen>
<dimen name="dp_97">105.6222dp</dimen>
<dimen name="dp_98">106.7111dp</dimen>
<dimen name="dp_99">107.8000dp</dimen>
<dimen name="dp_100">108.8889dp</dimen>
<dimen name="dp_101">109.9778dp</dimen>
<dimen name="dp_102">111.0667dp</dimen>
<dimen name="dp_103">112.1556dp</dimen>
<dimen name="dp_104">113.2444dp</dimen>
<dimen name="dp_104_5">113.7889dp</dimen>
<dimen name="dp_105">114.3333dp</dimen>
<dimen name="dp_106">115.4222dp</dimen>
<dimen name="dp_107">116.5111dp</dimen>
<dimen name="dp_108">117.6000dp</dimen>
<dimen name="dp_109">118.6889dp</dimen>
<dimen name="dp_110">119.7778dp</dimen>
<dimen name="dp_111">120.8667dp</dimen>
<dimen name="dp_112">121.9556dp</dimen>
<dimen name="dp_113">123.0444dp</dimen>
<dimen name="dp_114">124.1333dp</dimen>
<dimen name="dp_115">125.2222dp</dimen>
<dimen name="dp_116">126.3111dp</dimen>
<dimen name="dp_117">127.4000dp</dimen>
<dimen name="dp_118">128.4889dp</dimen>
<dimen name="dp_119">129.5778dp</dimen>
<dimen name="dp_120">130.6667dp</dimen>
<dimen name="dp_121">131.7556dp</dimen>
<dimen name="dp_122">132.8444dp</dimen>
<dimen name="dp_123">133.9333dp</dimen>
<dimen name="dp_124">135.0222dp</dimen>
<dimen name="dp_125">136.1111dp</dimen>
<dimen name="dp_126">137.2000dp</dimen>
<dimen name="dp_127">138.2889dp</dimen>
<dimen name="dp_128">139.3778dp</dimen>
<dimen name="dp_129">140.4667dp</dimen>
<dimen name="dp_130">141.5556dp</dimen>
<dimen name="dp_131">142.6444dp</dimen>
<dimen name="dp_132">143.7333dp</dimen>
<dimen name="dp_133">144.8222dp</dimen>
<dimen name="dp_134">145.9111dp</dimen>
<dimen name="dp_134_5">146.4556dp</dimen>
<dimen name="dp_135">147.0000dp</dimen>
<dimen name="dp_136">148.0889dp</dimen>
<dimen name="dp_137">149.1778dp</dimen>
<dimen name="dp_138">150.2667dp</dimen>
<dimen name="dp_139">151.3556dp</dimen>
<dimen name="dp_140">152.4444dp</dimen>
<dimen name="dp_141">153.5333dp</dimen>
<dimen name="dp_142">154.6222dp</dimen>
<dimen name="dp_143">155.7111dp</dimen>
<dimen name="dp_144">156.8000dp</dimen>
<dimen name="dp_145">157.8889dp</dimen>
<dimen name="dp_146">158.9778dp</dimen>
<dimen name="dp_147">160.0667dp</dimen>
<dimen name="dp_148">161.1556dp</dimen>
<dimen name="dp_149">162.2444dp</dimen>
<dimen name="dp_150">163.3333dp</dimen>
<dimen name="dp_151">164.4222dp</dimen>
<dimen name="dp_152">165.5111dp</dimen>
<dimen name="dp_153">166.6000dp</dimen>
<dimen name="dp_154">167.6889dp</dimen>
<dimen name="dp_155">168.7778dp</dimen>
<dimen name="dp_156">169.8667dp</dimen>
<dimen name="dp_157">170.9556dp</dimen>
<dimen name="dp_158">172.0444dp</dimen>
<dimen name="dp_159">173.1333dp</dimen>
<dimen name="dp_160">174.2222dp</dimen>
<dimen name="dp_161">175.3111dp</dimen>
<dimen name="dp_162">176.4000dp</dimen>
<dimen name="dp_163">177.4889dp</dimen>
<dimen name="dp_164">178.5778dp</dimen>
<dimen name="dp_165">179.6667dp</dimen>
<dimen name="dp_166">180.7556dp</dimen>
<dimen name="dp_167">181.8444dp</dimen>
<dimen name="dp_168">182.9333dp</dimen>
<dimen name="dp_169">184.0222dp</dimen>
<dimen name="dp_170">185.1111dp</dimen>
<dimen name="dp_171">186.2000dp</dimen>
<dimen name="dp_172">187.2889dp</dimen>
<dimen name="dp_173">188.3778dp</dimen>
<dimen name="dp_174">189.4667dp</dimen>
<dimen name="dp_175">190.5556dp</dimen>
<dimen name="dp_176">191.6444dp</dimen>
<dimen name="dp_177">192.7333dp</dimen>
<dimen name="dp_178">193.8222dp</dimen>
<dimen name="dp_179">194.9111dp</dimen>
<dimen name="dp_180">196.0000dp</dimen>
<dimen name="dp_181">197.0889dp</dimen>
<dimen name="dp_182">198.1778dp</dimen>
<dimen name="dp_183">199.2667dp</dimen>
<dimen name="dp_184">200.3556dp</dimen>
<dimen name="dp_185">201.4444dp</dimen>
<dimen name="dp_186">202.5333dp</dimen>
<dimen name="dp_187">203.6222dp</dimen>
<dimen name="dp_188">204.7111dp</dimen>
<dimen name="dp_189">205.8000dp</dimen>
<dimen name="dp_190">206.8889dp</dimen>
<dimen name="dp_191">207.9778dp</dimen>
<dimen name="dp_191_25">208.2500dp</dimen>
<dimen name="dp_192">209.0667dp</dimen>
<dimen name="dp_193">210.1556dp</dimen>
<dimen name="dp_194">211.2444dp</dimen>
<dimen name="dp_195">212.3333dp</dimen>
<dimen name="dp_196">213.4222dp</dimen>
<dimen name="dp_197">214.5111dp</dimen>
<dimen name="dp_198">215.6000dp</dimen>
<dimen name="dp_199">216.6889dp</dimen>
<dimen name="dp_200">217.7778dp</dimen>
<dimen name="dp_201">218.8667dp</dimen>
<dimen name="dp_202">219.9556dp</dimen>
<dimen name="dp_203">221.0444dp</dimen>
<dimen name="dp_204">222.1333dp</dimen>
<dimen name="dp_205">223.2222dp</dimen>
<dimen name="dp_206">224.3111dp</dimen>
<dimen name="dp_207">225.4000dp</dimen>
<dimen name="dp_208">226.4889dp</dimen>
<dimen name="dp_209">227.5778dp</dimen>
<dimen name="dp_210">228.6667dp</dimen>
<dimen name="dp_211">229.7556dp</dimen>
<dimen name="dp_212">230.8444dp</dimen>
<dimen name="dp_213">231.9333dp</dimen>
<dimen name="dp_214">233.0222dp</dimen>
<dimen name="dp_215">234.1111dp</dimen>
<dimen name="dp_216">235.2000dp</dimen>
<dimen name="dp_217">236.2889dp</dimen>
<dimen name="dp_218">237.3778dp</dimen>
<dimen name="dp_219">238.4667dp</dimen>
<dimen name="dp_220">239.5556dp</dimen>
<dimen name="dp_221">240.6444dp</dimen>
<dimen name="dp_222">241.7333dp</dimen>
<dimen name="dp_223">242.8222dp</dimen>
<dimen name="dp_224">243.9111dp</dimen>
<dimen name="dp_225">245.0000dp</dimen>
<dimen name="dp_226">246.0889dp</dimen>
<dimen name="dp_227">247.1778dp</dimen>
<dimen name="dp_228">248.2667dp</dimen>
<dimen name="dp_229">249.3556dp</dimen>
<dimen name="dp_230">250.4444dp</dimen>
<dimen name="dp_231">251.5333dp</dimen>
<dimen name="dp_232">252.6222dp</dimen>
<dimen name="dp_233">253.7111dp</dimen>
<dimen name="dp_234">254.8000dp</dimen>
<dimen name="dp_235">255.8889dp</dimen>
<dimen name="dp_236">256.9778dp</dimen>
<dimen name="dp_237">258.0667dp</dimen>
<dimen name="dp_238">259.1556dp</dimen>
<dimen name="dp_239">260.2444dp</dimen>
<dimen name="dp_240">261.3333dp</dimen>
<dimen name="dp_241">262.4222dp</dimen>
<dimen name="dp_242">263.5111dp</dimen>
<dimen name="dp_243">264.6000dp</dimen>
<dimen name="dp_244">265.6889dp</dimen>
<dimen name="dp_245">266.7778dp</dimen>
<dimen name="dp_246">267.8667dp</dimen>
<dimen name="dp_247">268.9556dp</dimen>
<dimen name="dp_248">270.0444dp</dimen>
<dimen name="dp_249">271.1333dp</dimen>
<dimen name="dp_250">272.2222dp</dimen>
<dimen name="dp_251">273.3111dp</dimen>
<dimen name="dp_252">274.4000dp</dimen>
<dimen name="dp_253">275.4889dp</dimen>
<dimen name="dp_254">276.5778dp</dimen>
<dimen name="dp_255">277.6667dp</dimen>
<dimen name="dp_256">278.7556dp</dimen>
<dimen name="dp_257">279.8444dp</dimen>
<dimen name="dp_258">280.9333dp</dimen>
<dimen name="dp_259">282.0222dp</dimen>
<dimen name="dp_260">283.1111dp</dimen>
<dimen name="dp_261">284.2000dp</dimen>
<dimen name="dp_262">285.2889dp</dimen>
<dimen name="dp_263">286.3778dp</dimen>
<dimen name="dp_264">287.4667dp</dimen>
<dimen name="dp_265">288.5556dp</dimen>
<dimen name="dp_266">289.6444dp</dimen>
<dimen name="dp_267">290.7333dp</dimen>
<dimen name="dp_268">291.8222dp</dimen>
<dimen name="dp_269">292.9111dp</dimen>
<dimen name="dp_270">294.0000dp</dimen>
<dimen name="dp_271">295.0889dp</dimen>
<dimen name="dp_272">296.1778dp</dimen>
<dimen name="dp_273">297.2667dp</dimen>
<dimen name="dp_274">298.3556dp</dimen>
<dimen name="dp_275">299.4444dp</dimen>
<dimen name="dp_276">300.5333dp</dimen>
<dimen name="dp_277">301.6222dp</dimen>
<dimen name="dp_278">302.7111dp</dimen>
<dimen name="dp_279">303.8000dp</dimen>
<dimen name="dp_280">304.8889dp</dimen>
<dimen name="dp_281">305.9778dp</dimen>
<dimen name="dp_282">307.0667dp</dimen>
<dimen name="dp_283">308.1556dp</dimen>
<dimen name="dp_284">309.2444dp</dimen>
<dimen name="dp_285">310.3333dp</dimen>
<dimen name="dp_286">311.4222dp</dimen>
<dimen name="dp_287">312.5111dp</dimen>
<dimen name="dp_288">313.6000dp</dimen>
<dimen name="dp_289">314.6889dp</dimen>
<dimen name="dp_290">315.7778dp</dimen>
<dimen name="dp_291">316.8667dp</dimen>
<dimen name="dp_292">317.9556dp</dimen>
<dimen name="dp_293">319.0444dp</dimen>
<dimen name="dp_294">320.1333dp</dimen>
<dimen name="dp_295">321.2222dp</dimen>
<dimen name="dp_296">322.3111dp</dimen>
<dimen name="dp_297">323.4000dp</dimen>
<dimen name="dp_298">324.4889dp</dimen>
<dimen name="dp_299">325.5778dp</dimen>
<dimen name="dp_300">326.6667dp</dimen>
<dimen name="dp_301">327.7556dp</dimen>
<dimen name="dp_302">328.8444dp</dimen>
<dimen name="dp_303">329.9333dp</dimen>
<dimen name="dp_304">331.0222dp</dimen>
<dimen name="dp_305">332.1111dp</dimen>
<dimen name="dp_306">333.2000dp</dimen>
<dimen name="dp_307">334.2889dp</dimen>
<dimen name="dp_308">335.3778dp</dimen>
<dimen name="dp_309">336.4667dp</dimen>
<dimen name="dp_310">337.5556dp</dimen>
<dimen name="dp_311">338.6444dp</dimen>
<dimen name="dp_312">339.7333dp</dimen>
<dimen name="dp_313">340.8222dp</dimen>
<dimen name="dp_314">341.9111dp</dimen>
<dimen name="dp_315">343.0000dp</dimen>
<dimen name="dp_316">344.0889dp</dimen>
<dimen name="dp_317">345.1778dp</dimen>
<dimen name="dp_318">346.2667dp</dimen>
<dimen name="dp_319">347.3556dp</dimen>
<dimen name="dp_320">348.4444dp</dimen>
<dimen name="dp_321">349.5333dp</dimen>
<dimen name="dp_322">350.6222dp</dimen>
<dimen name="dp_323">351.7111dp</dimen>
<dimen name="dp_324">352.8000dp</dimen>
<dimen name="dp_325">353.8889dp</dimen>
<dimen name="dp_326">354.9778dp</dimen>
<dimen name="dp_327">356.0667dp</dimen>
<dimen name="dp_328">357.1556dp</dimen>
<dimen name="dp_329">358.2444dp</dimen>
<dimen name="dp_330">359.3333dp</dimen>
<dimen name="dp_331">360.4222dp</dimen>
<dimen name="dp_332">361.5111dp</dimen>
<dimen name="dp_333">362.6000dp</dimen>
<dimen name="dp_334">363.6889dp</dimen>
<dimen name="dp_335">364.7778dp</dimen>
<dimen name="dp_336">365.8667dp</dimen>
<dimen name="dp_337">366.9556dp</dimen>
<dimen name="dp_338">368.0444dp</dimen>
<dimen name="dp_339">369.1333dp</dimen>
<dimen name="dp_340">370.2222dp</dimen>
<dimen name="dp_341">371.3111dp</dimen>
<dimen name="dp_342">372.4000dp</dimen>
<dimen name="dp_343">373.4889dp</dimen>
<dimen name="dp_344">374.5778dp</dimen>
<dimen name="dp_345">375.6667dp</dimen>
<dimen name="dp_346">376.7556dp</dimen>
<dimen name="dp_347">377.8444dp</dimen>
<dimen name="dp_348">378.9333dp</dimen>
<dimen name="dp_349">380.0222dp</dimen>
<dimen name="dp_350">381.1111dp</dimen>
<dimen name="dp_351">382.2000dp</dimen>
<dimen name="dp_352">383.2889dp</dimen>
<dimen name="dp_353">384.3778dp</dimen>
<dimen name="dp_354">385.4667dp</dimen>
<dimen name="dp_355">386.5556dp</dimen>
<dimen name="dp_356">387.6444dp</dimen>
<dimen name="dp_357">388.7333dp</dimen>
<dimen name="dp_358">389.8222dp</dimen>
<dimen name="dp_359">390.9111dp</dimen>
<dimen name="dp_360">392.0000dp</dimen>
<dimen name="dp_365">397.4444dp</dimen>
<dimen name="dp_370">402.8889dp</dimen>
<dimen name="dp_400">435.5556dp</dimen>
<dimen name="dp_410">446.4444dp</dimen>
<dimen name="dp_422">459.5111dp</dimen>
<dimen name="dp_472">513.9556dp</dimen>
<dimen name="dp_500">544.4444dp</dimen>
<dimen name="dp_600">653.3333dp</dimen>
<dimen name="dp_640">696.8889dp</dimen>
<dimen name="dp_720">784.0000dp</dimen>
<dimen name="sp_6">6.5333sp</dimen>
<dimen name="sp_7">7.6222sp</dimen>
<dimen name="sp_8">8.7111sp</dimen>
<dimen name="sp_9">9.8000sp</dimen>
<dimen name="sp_10">10.8889sp</dimen>
<dimen name="sp_11">11.9778sp</dimen>
<dimen name="sp_12">13.0667sp</dimen>
<dimen name="sp_13">14.1556sp</dimen>
<dimen name="sp_14">15.2444sp</dimen>
<dimen name="sp_15">16.3333sp</dimen>
<dimen name="sp_16">17.4222sp</dimen>
<dimen name="sp_17">18.5111sp</dimen>
<dimen name="sp_18">19.6000sp</dimen>
<dimen name="sp_19">20.6889sp</dimen>
<dimen name="sp_20">21.7778sp</dimen>
<dimen name="sp_21">22.8667sp</dimen>
<dimen name="sp_22">23.9556sp</dimen>
<dimen name="sp_23">25.0444sp</dimen>
<dimen name="sp_24">26.1333sp</dimen>
<dimen name="sp_25">27.2222sp</dimen>
<dimen name="sp_28">30.4889sp</dimen>
<dimen name="sp_30">32.6667sp</dimen>
<dimen name="sp_32">34.8444sp</dimen>
<dimen name="sp_34">37.0222sp</dimen>
<dimen name="sp_36">39.2000sp</dimen>
<dimen name="sp_38">41.3778sp</dimen>
<dimen name="sp_40">43.5556sp</dimen>
<dimen name="sp_42">45.7333sp</dimen>
<dimen name="sp_48">52.2667sp</dimen>
</resources>
<?xml version="1.0" encoding="UTF-8"?>
<resources>
<dimen name="activity_horizontal_margin">17.0667dp</dimen>
<dimen name="activity_vertical_margin">17.0667dp</dimen>
<dimen name="title_bar_head">53.3333dp</dimen>
<dimen name="card_common_margin_left">@dimen/dp_15</dimen>
<dimen name="dp_m_60">-64.0000dp</dimen>
<dimen name="dp_m_30">-32.0000dp</dimen>
<dimen name="dp_m_20">-21.3333dp</dimen>
<dimen name="dp_m_12">-12.8000dp</dimen>
<dimen name="dp_m_10">-10.6667dp</dimen>
<dimen name="dp_m_8">-8.5333dp</dimen>
<dimen name="dp_m_5">-5.3333dp</dimen>
<dimen name="dp_m_2">-2.1333dp</dimen>
<dimen name="dp_m_1">-1.0667dp</dimen>
<dimen name="dp_0">0.0000dp</dimen>
<dimen name="dp_0_1">0.1067dp</dimen>
<dimen name="dp_0_5">0.5333dp</dimen>
<dimen name="dp_1">1.0667dp</dimen>
<dimen name="dp_1_5">1.6000dp</dimen>
<dimen name="dp_2">2.1333dp</dimen>
<dimen name="dp_2_5">2.6667dp</dimen>
<dimen name="dp_3">3.2000dp</dimen>
<dimen name="dp_3_5">3.7333dp</dimen>
<dimen name="dp_4">4.2667dp</dimen>
<dimen name="dp_4_5">4.8000dp</dimen>
<dimen name="dp_5">5.3333dp</dimen>
<dimen name="dp_6">6.4000dp</dimen>
<dimen name="dp_7">7.4667dp</dimen>
<dimen name="dp_7_5">8.0000dp</dimen>
<dimen name="dp_8">8.5333dp</dimen>
<dimen name="dp_9">9.6000dp</dimen>
<dimen name="dp_10">10.6667dp</dimen>
<dimen name="dp_11">11.7333dp</dimen>
<dimen name="dp_12">12.8000dp</dimen>
<dimen name="dp_13">13.8667dp</dimen>
<dimen name="dp_14">14.9333dp</dimen>
<dimen name="dp_15">16.0000dp</dimen>
<dimen name="dp_16">17.0667dp</dimen>
<dimen name="dp_17">18.1333dp</dimen>
<dimen name="dp_18">19.2000dp</dimen>
<dimen name="dp_19">20.2667dp</dimen>
<dimen name="dp_20">21.3333dp</dimen>
<dimen name="dp_21">22.4000dp</dimen>
<dimen name="dp_22">23.4667dp</dimen>
<dimen name="dp_23">24.5333dp</dimen>
<dimen name="dp_24">25.6000dp</dimen>
<dimen name="dp_25">26.6667dp</dimen>
<dimen name="dp_26">27.7333dp</dimen>
<dimen name="dp_27">28.8000dp</dimen>
<dimen name="dp_28">29.8667dp</dimen>
<dimen name="dp_29">30.9333dp</dimen>
<dimen name="dp_30">32.0000dp</dimen>
<dimen name="dp_31">33.0667dp</dimen>
<dimen name="dp_32">34.1333dp</dimen>
<dimen name="dp_33">35.2000dp</dimen>
<dimen name="dp_34">36.2667dp</dimen>
<dimen name="dp_35">37.3333dp</dimen>
<dimen name="dp_36">38.4000dp</dimen>
<dimen name="dp_37">39.4667dp</dimen>
<dimen name="dp_38">40.5333dp</dimen>
<dimen name="dp_39">41.6000dp</dimen>
<dimen name="dp_40">42.6667dp</dimen>
<dimen name="dp_41">43.7333dp</dimen>
<dimen name="dp_42">44.8000dp</dimen>
<dimen name="dp_43">45.8667dp</dimen>
<dimen name="dp_44">46.9333dp</dimen>
<dimen name="dp_45">48.0000dp</dimen>
<dimen name="dp_46">49.0667dp</dimen>
<dimen name="dp_47">50.1333dp</dimen>
<dimen name="dp_48">51.2000dp</dimen>
<dimen name="dp_49">52.2667dp</dimen>
<dimen name="dp_50">53.3333dp</dimen>
<dimen name="dp_51">54.4000dp</dimen>
<dimen name="dp_52">55.4667dp</dimen>
<dimen name="dp_53">56.5333dp</dimen>
<dimen name="dp_54">57.6000dp</dimen>
<dimen name="dp_55">58.6667dp</dimen>
<dimen name="dp_56">59.7333dp</dimen>
<dimen name="dp_57">60.8000dp</dimen>
<dimen name="dp_58">61.8667dp</dimen>
<dimen name="dp_59">62.9333dp</dimen>
<dimen name="dp_60">64.0000dp</dimen>
<dimen name="dp_61">65.0667dp</dimen>
<dimen name="dp_62">66.1333dp</dimen>
<dimen name="dp_63">67.2000dp</dimen>
<dimen name="dp_64">68.2667dp</dimen>
<dimen name="dp_65">69.3333dp</dimen>
<dimen name="dp_66">70.4000dp</dimen>
<dimen name="dp_67">71.4667dp</dimen>
<dimen name="dp_68">72.5333dp</dimen>
<dimen name="dp_69">73.6000dp</dimen>
<dimen name="dp_70">74.6667dp</dimen>
<dimen name="dp_71">75.7333dp</dimen>
<dimen name="dp_72">76.8000dp</dimen>
<dimen name="dp_73">77.8667dp</dimen>
<dimen name="dp_74">78.9333dp</dimen>
<dimen name="dp_75">80.0000dp</dimen>
<dimen name="dp_76">81.0667dp</dimen>
<dimen name="dp_77">82.1333dp</dimen>
<dimen name="dp_78">83.2000dp</dimen>
<dimen name="dp_79">84.2667dp</dimen>
<dimen name="dp_80">85.3333dp</dimen>
<dimen name="dp_81">86.4000dp</dimen>
<dimen name="dp_82">87.4667dp</dimen>
<dimen name="dp_83">88.5333dp</dimen>
<dimen name="dp_84">89.6000dp</dimen>
<dimen name="dp_85">90.6667dp</dimen>
<dimen name="dp_86">91.7333dp</dimen>
<dimen name="dp_87">92.8000dp</dimen>
<dimen name="dp_88">93.8667dp</dimen>
<dimen name="dp_89">94.9333dp</dimen>
<dimen name="dp_90">96.0000dp</dimen>
<dimen name="dp_91">97.0667dp</dimen>
<dimen name="dp_92">98.1333dp</dimen>
<dimen name="dp_93">99.2000dp</dimen>
<dimen name="dp_94">100.2667dp</dimen>
<dimen name="dp_95">101.3333dp</dimen>
<dimen name="dp_96">102.4000dp</dimen>
<dimen name="dp_97">103.4667dp</dimen>
<dimen name="dp_98">104.5333dp</dimen>
<dimen name="dp_99">105.6000dp</dimen>
<dimen name="dp_100">106.6667dp</dimen>
<dimen name="dp_101">107.7333dp</dimen>
<dimen name="dp_102">108.8000dp</dimen>
<dimen name="dp_103">109.8667dp</dimen>
<dimen name="dp_104">110.9333dp</dimen>
<dimen name="dp_104_5">111.4667dp</dimen>
<dimen name="dp_105">112.0000dp</dimen>
<dimen name="dp_106">113.0667dp</dimen>
<dimen name="dp_107">114.1333dp</dimen>
<dimen name="dp_108">115.2000dp</dimen>
<dimen name="dp_109">116.2667dp</dimen>
<dimen name="dp_110">117.3333dp</dimen>
<dimen name="dp_111">118.4000dp</dimen>
<dimen name="dp_112">119.4667dp</dimen>
<dimen name="dp_113">120.5333dp</dimen>
<dimen name="dp_114">121.6000dp</dimen>
<dimen name="dp_115">122.6667dp</dimen>
<dimen name="dp_116">123.7333dp</dimen>
<dimen name="dp_117">124.8000dp</dimen>
<dimen name="dp_118">125.8667dp</dimen>
<dimen name="dp_119">126.9333dp</dimen>
<dimen name="dp_120">128.0000dp</dimen>
<dimen name="dp_121">129.0667dp</dimen>
<dimen name="dp_122">130.1333dp</dimen>
<dimen name="dp_123">131.2000dp</dimen>
<dimen name="dp_124">132.2667dp</dimen>
<dimen name="dp_125">133.3333dp</dimen>
<dimen name="dp_126">134.4000dp</dimen>
<dimen name="dp_127">135.4667dp</dimen>
<dimen name="dp_128">136.5333dp</dimen>
<dimen name="dp_129">137.6000dp</dimen>
<dimen name="dp_130">138.6667dp</dimen>
<dimen name="dp_131">139.7333dp</dimen>
<dimen name="dp_132">140.8000dp</dimen>
<dimen name="dp_133">141.8667dp</dimen>
<dimen name="dp_134">142.9333dp</dimen>
<dimen name="dp_134_5">143.4667dp</dimen>
<dimen name="dp_135">144.0000dp</dimen>
<dimen name="dp_136">145.0667dp</dimen>
<dimen name="dp_137">146.1333dp</dimen>
<dimen name="dp_138">147.2000dp</dimen>
<dimen name="dp_139">148.2667dp</dimen>
<dimen name="dp_140">149.3333dp</dimen>
<dimen name="dp_141">150.4000dp</dimen>
<dimen name="dp_142">151.4667dp</dimen>
<dimen name="dp_143">152.5333dp</dimen>
<dimen name="dp_144">153.6000dp</dimen>
<dimen name="dp_145">154.6667dp</dimen>
<dimen name="dp_146">155.7333dp</dimen>
<dimen name="dp_147">156.8000dp</dimen>
<dimen name="dp_148">157.8667dp</dimen>
<dimen name="dp_149">158.9333dp</dimen>
<dimen name="dp_150">160.0000dp</dimen>
<dimen name="dp_151">161.0667dp</dimen>
<dimen name="dp_152">162.1333dp</dimen>
<dimen name="dp_153">163.2000dp</dimen>
<dimen name="dp_154">164.2667dp</dimen>
<dimen name="dp_155">165.3333dp</dimen>
<dimen name="dp_156">166.4000dp</dimen>
<dimen name="dp_157">167.4667dp</dimen>
<dimen name="dp_158">168.5333dp</dimen>
<dimen name="dp_159">169.6000dp</dimen>
<dimen name="dp_160">170.6667dp</dimen>
<dimen name="dp_161">171.7333dp</dimen>
<dimen name="dp_162">172.8000dp</dimen>
<dimen name="dp_163">173.8667dp</dimen>
<dimen name="dp_164">174.9333dp</dimen>
<dimen name="dp_165">176.0000dp</dimen>
<dimen name="dp_166">177.0667dp</dimen>
<dimen name="dp_167">178.1333dp</dimen>
<dimen name="dp_168">179.2000dp</dimen>
<dimen name="dp_169">180.2667dp</dimen>
<dimen name="dp_170">181.3333dp</dimen>
<dimen name="dp_171">182.4000dp</dimen>
<dimen name="dp_172">183.4667dp</dimen>
<dimen name="dp_173">184.5333dp</dimen>
<dimen name="dp_174">185.6000dp</dimen>
<dimen name="dp_175">186.6667dp</dimen>
<dimen name="dp_176">187.7333dp</dimen>
<dimen name="dp_177">188.8000dp</dimen>
<dimen name="dp_178">189.8667dp</dimen>
<dimen name="dp_179">190.9333dp</dimen>
<dimen name="dp_180">192.0000dp</dimen>
<dimen name="dp_181">193.0667dp</dimen>
<dimen name="dp_182">194.1333dp</dimen>
<dimen name="dp_183">195.2000dp</dimen>
<dimen name="dp_184">196.2667dp</dimen>
<dimen name="dp_185">197.3333dp</dimen>
<dimen name="dp_186">198.4000dp</dimen>
<dimen name="dp_187">199.4667dp</dimen>
<dimen name="dp_188">200.5333dp</dimen>
<dimen name="dp_189">201.6000dp</dimen>
<dimen name="dp_190">202.6667dp</dimen>
<dimen name="dp_191">203.7333dp</dimen>
<dimen name="dp_191_25">204.0000dp</dimen>
<dimen name="dp_192">204.8000dp</dimen>
<dimen name="dp_193">205.8667dp</dimen>
<dimen name="dp_194">206.9333dp</dimen>
<dimen name="dp_195">208.0000dp</dimen>
<dimen name="dp_196">209.0667dp</dimen>
<dimen name="dp_197">210.1333dp</dimen>
<dimen name="dp_198">211.2000dp</dimen>
<dimen name="dp_199">212.2667dp</dimen>
<dimen name="dp_200">213.3333dp</dimen>
<dimen name="dp_201">214.4000dp</dimen>
<dimen name="dp_202">215.4667dp</dimen>
<dimen name="dp_203">216.5333dp</dimen>
<dimen name="dp_204">217.6000dp</dimen>
<dimen name="dp_205">218.6667dp</dimen>
<dimen name="dp_206">219.7333dp</dimen>
<dimen name="dp_207">220.8000dp</dimen>
<dimen name="dp_208">221.8667dp</dimen>
<dimen name="dp_209">222.9333dp</dimen>
<dimen name="dp_210">224.0000dp</dimen>
<dimen name="dp_211">225.0667dp</dimen>
<dimen name="dp_212">226.1333dp</dimen>
<dimen name="dp_213">227.2000dp</dimen>
<dimen name="dp_214">228.2667dp</dimen>
<dimen name="dp_215">229.3333dp</dimen>
<dimen name="dp_216">230.4000dp</dimen>
<dimen name="dp_217">231.4667dp</dimen>
<dimen name="dp_218">232.5333dp</dimen>
<dimen name="dp_219">233.6000dp</dimen>
<dimen name="dp_220">234.6667dp</dimen>
<dimen name="dp_221">235.7333dp</dimen>
<dimen name="dp_222">236.8000dp</dimen>
<dimen name="dp_223">237.8667dp</dimen>
<dimen name="dp_224">238.9333dp</dimen>
<dimen name="dp_225">240.0000dp</dimen>
<dimen name="dp_226">241.0667dp</dimen>
<dimen name="dp_227">242.1333dp</dimen>
<dimen name="dp_228">243.2000dp</dimen>
<dimen name="dp_229">244.2667dp</dimen>
<dimen name="dp_230">245.3333dp</dimen>
<dimen name="dp_231">246.4000dp</dimen>
<dimen name="dp_232">247.4667dp</dimen>
<dimen name="dp_233">248.5333dp</dimen>
<dimen name="dp_234">249.6000dp</dimen>
<dimen name="dp_235">250.6667dp</dimen>
<dimen name="dp_236">251.7333dp</dimen>
<dimen name="dp_237">252.8000dp</dimen>
<dimen name="dp_238">253.8667dp</dimen>
<dimen name="dp_239">254.9333dp</dimen>
<dimen name="dp_240">256.0000dp</dimen>
<dimen name="dp_241">257.0667dp</dimen>
<dimen name="dp_242">258.1333dp</dimen>
<dimen name="dp_243">259.2000dp</dimen>
<dimen name="dp_244">260.2667dp</dimen>
<dimen name="dp_245">261.3333dp</dimen>
<dimen name="dp_246">262.4000dp</dimen>
<dimen name="dp_247">263.4667dp</dimen>
<dimen name="dp_248">264.5333dp</dimen>
<dimen name="dp_249">265.6000dp</dimen>
<dimen name="dp_250">266.6667dp</dimen>
<dimen name="dp_251">267.7333dp</dimen>
<dimen name="dp_252">268.8000dp</dimen>
<dimen name="dp_253">269.8667dp</dimen>
<dimen name="dp_254">270.9333dp</dimen>
<dimen name="dp_255">272.0000dp</dimen>
<dimen name="dp_256">273.0667dp</dimen>
<dimen name="dp_257">274.1333dp</dimen>
<dimen name="dp_258">275.2000dp</dimen>
<dimen name="dp_259">276.2667dp</dimen>
<dimen name="dp_260">277.3333dp</dimen>
<dimen name="dp_261">278.4000dp</dimen>
<dimen name="dp_262">279.4667dp</dimen>
<dimen name="dp_263">280.5333dp</dimen>
<dimen name="dp_264">281.6000dp</dimen>
<dimen name="dp_265">282.6667dp</dimen>
<dimen name="dp_266">283.7333dp</dimen>
<dimen name="dp_267">284.8000dp</dimen>
<dimen name="dp_268">285.8667dp</dimen>
<dimen name="dp_269">286.9333dp</dimen>
<dimen name="dp_270">288.0000dp</dimen>
<dimen name="dp_271">289.0667dp</dimen>
<dimen name="dp_272">290.1333dp</dimen>
<dimen name="dp_273">291.2000dp</dimen>
<dimen name="dp_274">292.2667dp</dimen>
<dimen name="dp_275">293.3333dp</dimen>
<dimen name="dp_276">294.4000dp</dimen>
<dimen name="dp_277">295.4667dp</dimen>
<dimen name="dp_278">296.5333dp</dimen>
<dimen name="dp_279">297.6000dp</dimen>
<dimen name="dp_280">298.6667dp</dimen>
<dimen name="dp_281">299.7333dp</dimen>
<dimen name="dp_282">300.8000dp</dimen>
<dimen name="dp_283">301.8667dp</dimen>
<dimen name="dp_284">302.9333dp</dimen>
<dimen name="dp_285">304.0000dp</dimen>
<dimen name="dp_286">305.0667dp</dimen>
<dimen name="dp_287">306.1333dp</dimen>
<dimen name="dp_288">307.2000dp</dimen>
<dimen name="dp_289">308.2667dp</dimen>
<dimen name="dp_290">309.3333dp</dimen>
<dimen name="dp_291">310.4000dp</dimen>
<dimen name="dp_292">311.4667dp</dimen>
<dimen name="dp_293">312.5333dp</dimen>
<dimen name="dp_294">313.6000dp</dimen>
<dimen name="dp_295">314.6667dp</dimen>
<dimen name="dp_296">315.7333dp</dimen>
<dimen name="dp_297">316.8000dp</dimen>
<dimen name="dp_298">317.8667dp</dimen>
<dimen name="dp_299">318.9333dp</dimen>
<dimen name="dp_300">320.0000dp</dimen>
<dimen name="dp_301">321.0667dp</dimen>
<dimen name="dp_302">322.1333dp</dimen>
<dimen name="dp_303">323.2000dp</dimen>
<dimen name="dp_304">324.2667dp</dimen>
<dimen name="dp_305">325.3333dp</dimen>
<dimen name="dp_306">326.4000dp</dimen>
<dimen name="dp_307">327.4667dp</dimen>
<dimen name="dp_308">328.5333dp</dimen>
<dimen name="dp_309">329.6000dp</dimen>
<dimen name="dp_310">330.6667dp</dimen>
<dimen name="dp_311">331.7333dp</dimen>
<dimen name="dp_312">332.8000dp</dimen>
<dimen name="dp_313">333.8667dp</dimen>
<dimen name="dp_314">334.9333dp</dimen>
<dimen name="dp_315">336.0000dp</dimen>
<dimen name="dp_316">337.0667dp</dimen>
<dimen name="dp_317">338.1333dp</dimen>
<dimen name="dp_318">339.2000dp</dimen>
<dimen name="dp_319">340.2667dp</dimen>
<dimen name="dp_320">341.3333dp</dimen>
<dimen name="dp_321">342.4000dp</dimen>
<dimen name="dp_322">343.4667dp</dimen>
<dimen name="dp_323">344.5333dp</dimen>
<dimen name="dp_324">345.6000dp</dimen>
<dimen name="dp_325">346.6667dp</dimen>
<dimen name="dp_326">347.7333dp</dimen>
<dimen name="dp_327">348.8000dp</dimen>
<dimen name="dp_328">349.8667dp</dimen>
<dimen name="dp_329">350.9333dp</dimen>
<dimen name="dp_330">352.0000dp</dimen>
<dimen name="dp_331">353.0667dp</dimen>
<dimen name="dp_332">354.1333dp</dimen>
<dimen name="dp_333">355.2000dp</dimen>
<dimen name="dp_334">356.2667dp</dimen>
<dimen name="dp_335">357.3333dp</dimen>
<dimen name="dp_336">358.4000dp</dimen>
<dimen name="dp_337">359.4667dp</dimen>
<dimen name="dp_338">360.5333dp</dimen>
<dimen name="dp_339">361.6000dp</dimen>
<dimen name="dp_340">362.6667dp</dimen>
<dimen name="dp_341">363.7333dp</dimen>
<dimen name="dp_342">364.8000dp</dimen>
<dimen name="dp_343">365.8667dp</dimen>
<dimen name="dp_344">366.9333dp</dimen>
<dimen name="dp_345">368.0000dp</dimen>
<dimen name="dp_346">369.0667dp</dimen>
<dimen name="dp_347">370.1333dp</dimen>
<dimen name="dp_348">371.2000dp</dimen>
<dimen name="dp_349">372.2667dp</dimen>
<dimen name="dp_350">373.3333dp</dimen>
<dimen name="dp_351">374.4000dp</dimen>
<dimen name="dp_352">375.4667dp</dimen>
<dimen name="dp_353">376.5333dp</dimen>
<dimen name="dp_354">377.6000dp</dimen>
<dimen name="dp_355">378.6667dp</dimen>
<dimen name="dp_356">379.7333dp</dimen>
<dimen name="dp_357">380.8000dp</dimen>
<dimen name="dp_358">381.8667dp</dimen>
<dimen name="dp_359">382.9333dp</dimen>
<dimen name="dp_360">384.0000dp</dimen>
<dimen name="dp_365">389.3333dp</dimen>
<dimen name="dp_370">394.6667dp</dimen>
<dimen name="dp_400">426.6667dp</dimen>
<dimen name="dp_410">437.3333dp</dimen>
<dimen name="dp_422">450.1333dp</dimen>
<dimen name="dp_472">503.4667dp</dimen>
<dimen name="dp_500">533.3333dp</dimen>
<dimen name="dp_600">640.0000dp</dimen>
<dimen name="dp_640">682.6667dp</dimen>
<dimen name="dp_720">768.0000dp</dimen>
<dimen name="sp_6">6.4000sp</dimen>
<dimen name="sp_7">7.4667sp</dimen>
<dimen name="sp_8">8.5333sp</dimen>
<dimen name="sp_9">9.6000sp</dimen>
<dimen name="sp_10">10.6667sp</dimen>
<dimen name="sp_11">11.7333sp</dimen>
<dimen name="sp_12">12.8000sp</dimen>
<dimen name="sp_13">13.8667sp</dimen>
<dimen name="sp_14">14.9333sp</dimen>
<dimen name="sp_15">16.0000sp</dimen>
<dimen name="sp_16">17.0667sp</dimen>
<dimen name="sp_17">18.1333sp</dimen>
<dimen name="sp_18">19.2000sp</dimen>
<dimen name="sp_19">20.2667sp</dimen>
<dimen name="sp_20">21.3333sp</dimen>
<dimen name="sp_21">22.4000sp</dimen>
<dimen name="sp_22">23.4667sp</dimen>
<dimen name="sp_23">24.5333sp</dimen>
<dimen name="sp_24">25.6000sp</dimen>
<dimen name="sp_25">26.6667sp</dimen>
<dimen name="sp_28">29.8667sp</dimen>
<dimen name="sp_30">32.0000sp</dimen>
<dimen name="sp_32">34.1333sp</dimen>
<dimen name="sp_34">36.2667sp</dimen>
<dimen name="sp_36">38.4000sp</dimen>
<dimen name="sp_38">40.5333sp</dimen>
<dimen name="sp_40">42.6667sp</dimen>
<dimen name="sp_42">44.8000sp</dimen>
<dimen name="sp_48">51.2000sp</dimen>
</resources>
<?xml version="1.0" encoding="UTF-8"?>
<resources>
<dimen name="activity_horizontal_margin">17.7778dp</dimen>
<dimen name="activity_vertical_margin">17.7778dp</dimen>
<dimen name="title_bar_head">55.5556dp</dimen>
<dimen name="card_common_margin_left">@dimen/dp_15</dimen>
<dimen name="dp_m_60">-66.6667dp</dimen>
<dimen name="dp_m_30">-33.3333dp</dimen>
<dimen name="dp_m_20">-22.2222dp</dimen>
<dimen name="dp_m_12">-13.3333dp</dimen>
<dimen name="dp_m_10">-11.1111dp</dimen>
<dimen name="dp_m_8">-8.8889dp</dimen>
<dimen name="dp_m_5">-5.5556dp</dimen>
<dimen name="dp_m_2">-2.2222dp</dimen>
<dimen name="dp_m_1">-1.1111dp</dimen>
<dimen name="dp_0">0.0000dp</dimen>
<dimen name="dp_0_1">0.1111dp</dimen>
<dimen name="dp_0_5">0.5556dp</dimen>
<dimen name="dp_1">1.1111dp</dimen>
<dimen name="dp_1_5">1.6667dp</dimen>
<dimen name="dp_2">2.2222dp</dimen>
<dimen name="dp_2_5">2.7778dp</dimen>
<dimen name="dp_3">3.3333dp</dimen>
<dimen name="dp_3_5">3.8889dp</dimen>
<dimen name="dp_4">4.4444dp</dimen>
<dimen name="dp_4_5">5.0000dp</dimen>
<dimen name="dp_5">5.5556dp</dimen>
<dimen name="dp_6">6.6667dp</dimen>
<dimen name="dp_7">7.7778dp</dimen>
<dimen name="dp_7_5">8.3333dp</dimen>
<dimen name="dp_8">8.8889dp</dimen>
<dimen name="dp_9">10.0000dp</dimen>
<dimen name="dp_10">11.1111dp</dimen>
<dimen name="dp_11">12.2222dp</dimen>
<dimen name="dp_12">13.3333dp</dimen>
<dimen name="dp_13">14.4444dp</dimen>
<dimen name="dp_14">15.5556dp</dimen>
<dimen name="dp_15">16.6667dp</dimen>
<dimen name="dp_16">17.7778dp</dimen>
<dimen name="dp_17">18.8889dp</dimen>
<dimen name="dp_18">20.0000dp</dimen>
<dimen name="dp_19">21.1111dp</dimen>
<dimen name="dp_20">22.2222dp</dimen>
<dimen name="dp_21">23.3333dp</dimen>
<dimen name="dp_22">24.4444dp</dimen>
<dimen name="dp_23">25.5556dp</dimen>
<dimen name="dp_24">26.6667dp</dimen>
<dimen name="dp_25">27.7778dp</dimen>
<dimen name="dp_26">28.8889dp</dimen>
<dimen name="dp_27">30.0000dp</dimen>
<dimen name="dp_28">31.1111dp</dimen>
<dimen name="dp_29">32.2222dp</dimen>
<dimen name="dp_30">33.3333dp</dimen>
<dimen name="dp_31">34.4444dp</dimen>
<dimen name="dp_32">35.5556dp</dimen>
<dimen name="dp_33">36.6667dp</dimen>
<dimen name="dp_34">37.7778dp</dimen>
<dimen name="dp_35">38.8889dp</dimen>
<dimen name="dp_36">40.0000dp</dimen>
<dimen name="dp_37">41.1111dp</dimen>
<dimen name="dp_38">42.2222dp</dimen>
<dimen name="dp_39">43.3333dp</dimen>
<dimen name="dp_40">44.4444dp</dimen>
<dimen name="dp_41">45.5556dp</dimen>
<dimen name="dp_42">46.6667dp</dimen>
<dimen name="dp_43">47.7778dp</dimen>
<dimen name="dp_44">48.8889dp</dimen>
<dimen name="dp_45">50.0000dp</dimen>
<dimen name="dp_46">51.1111dp</dimen>
<dimen name="dp_47">52.2222dp</dimen>
<dimen name="dp_48">53.3333dp</dimen>
<dimen name="dp_49">54.4444dp</dimen>
<dimen name="dp_50">55.5556dp</dimen>
<dimen name="dp_51">56.6667dp</dimen>
<dimen name="dp_52">57.7778dp</dimen>
<dimen name="dp_53">58.8889dp</dimen>
<dimen name="dp_54">60.0000dp</dimen>
<dimen name="dp_55">61.1111dp</dimen>
<dimen name="dp_56">62.2222dp</dimen>
<dimen name="dp_57">63.3333dp</dimen>
<dimen name="dp_58">64.4444dp</dimen>
<dimen name="dp_59">65.5556dp</dimen>
<dimen name="dp_60">66.6667dp</dimen>
<dimen name="dp_61">67.7778dp</dimen>
<dimen name="dp_62">68.8889dp</dimen>
<dimen name="dp_63">70.0000dp</dimen>
<dimen name="dp_64">71.1111dp</dimen>
<dimen name="dp_65">72.2222dp</dimen>
<dimen name="dp_66">73.3333dp</dimen>
<dimen name="dp_67">74.4444dp</dimen>
<dimen name="dp_68">75.5556dp</dimen>
<dimen name="dp_69">76.6667dp</dimen>
<dimen name="dp_70">77.7778dp</dimen>
<dimen name="dp_71">78.8889dp</dimen>
<dimen name="dp_72">80.0000dp</dimen>
<dimen name="dp_73">81.1111dp</dimen>
<dimen name="dp_74">82.2222dp</dimen>
<dimen name="dp_75">83.3333dp</dimen>
<dimen name="dp_76">84.4444dp</dimen>
<dimen name="dp_77">85.5556dp</dimen>
<dimen name="dp_78">86.6667dp</dimen>
<dimen name="dp_79">87.7778dp</dimen>
<dimen name="dp_80">88.8889dp</dimen>
<dimen name="dp_81">90.0000dp</dimen>
<dimen name="dp_82">91.1111dp</dimen>
<dimen name="dp_83">92.2222dp</dimen>
<dimen name="dp_84">93.3333dp</dimen>
<dimen name="dp_85">94.4444dp</dimen>
<dimen name="dp_86">95.5556dp</dimen>
<dimen name="dp_87">96.6667dp</dimen>
<dimen name="dp_88">97.7778dp</dimen>
<dimen name="dp_89">98.8889dp</dimen>
<dimen name="dp_90">100.0000dp</dimen>
<dimen name="dp_91">101.1111dp</dimen>
<dimen name="dp_92">102.2222dp</dimen>
<dimen name="dp_93">103.3333dp</dimen>
<dimen name="dp_94">104.4444dp</dimen>
<dimen name="dp_95">105.5556dp</dimen>
<dimen name="dp_96">106.6667dp</dimen>
<dimen name="dp_97">107.7778dp</dimen>
<dimen name="dp_98">108.8889dp</dimen>
<dimen name="dp_99">110.0000dp</dimen>
<dimen name="dp_100">111.1111dp</dimen>
<dimen name="dp_101">112.2222dp</dimen>
<dimen name="dp_102">113.3333dp</dimen>
<dimen name="dp_103">114.4444dp</dimen>
<dimen name="dp_104">115.5556dp</dimen>
<dimen name="dp_104_5">116.1111dp</dimen>
<dimen name="dp_105">116.6667dp</dimen>
<dimen name="dp_106">117.7778dp</dimen>
<dimen name="dp_107">118.8889dp</dimen>
<dimen name="dp_108">120.0000dp</dimen>
<dimen name="dp_109">121.1111dp</dimen>
<dimen name="dp_110">122.2222dp</dimen>
<dimen name="dp_111">123.3333dp</dimen>
<dimen name="dp_112">124.4444dp</dimen>
<dimen name="dp_113">125.5556dp</dimen>
<dimen name="dp_114">126.6667dp</dimen>
<dimen name="dp_115">127.7778dp</dimen>
<dimen name="dp_116">128.8889dp</dimen>
<dimen name="dp_117">130.0000dp</dimen>
<dimen name="dp_118">131.1111dp</dimen>
<dimen name="dp_119">132.2222dp</dimen>
<dimen name="dp_120">133.3333dp</dimen>
<dimen name="dp_121">134.4444dp</dimen>
<dimen name="dp_122">135.5556dp</dimen>
<dimen name="dp_123">136.6667dp</dimen>
<dimen name="dp_124">137.7778dp</dimen>
<dimen name="dp_125">138.8889dp</dimen>
<dimen name="dp_126">140.0000dp</dimen>
<dimen name="dp_127">141.1111dp</dimen>
<dimen name="dp_128">142.2222dp</dimen>
<dimen name="dp_129">143.3333dp</dimen>
<dimen name="dp_130">144.4444dp</dimen>
<dimen name="dp_131">145.5556dp</dimen>
<dimen name="dp_132">146.6667dp</dimen>
<dimen name="dp_133">147.7778dp</dimen>
<dimen name="dp_134">148.8889dp</dimen>
<dimen name="dp_134_5">149.4444dp</dimen>
<dimen name="dp_135">150.0000dp</dimen>
<dimen name="dp_136">151.1111dp</dimen>
<dimen name="dp_137">152.2222dp</dimen>
<dimen name="dp_138">153.3333dp</dimen>
<dimen name="dp_139">154.4444dp</dimen>
<dimen name="dp_140">155.5556dp</dimen>
<dimen name="dp_141">156.6667dp</dimen>
<dimen name="dp_142">157.7778dp</dimen>
<dimen name="dp_143">158.8889dp</dimen>
<dimen name="dp_144">160.0000dp</dimen>
<dimen name="dp_145">161.1111dp</dimen>
<dimen name="dp_146">162.2222dp</dimen>
<dimen name="dp_147">163.3333dp</dimen>
<dimen name="dp_148">164.4444dp</dimen>
<dimen name="dp_149">165.5556dp</dimen>
<dimen name="dp_150">166.6667dp</dimen>
<dimen name="dp_151">167.7778dp</dimen>
<dimen name="dp_152">168.8889dp</dimen>
<dimen name="dp_153">170.0000dp</dimen>
<dimen name="dp_154">171.1111dp</dimen>
<dimen name="dp_155">172.2222dp</dimen>
<dimen name="dp_156">173.3333dp</dimen>
<dimen name="dp_157">174.4444dp</dimen>
<dimen name="dp_158">175.5556dp</dimen>
<dimen name="dp_159">176.6667dp</dimen>
<dimen name="dp_160">177.7778dp</dimen>
<dimen name="dp_161">178.8889dp</dimen>
<dimen name="dp_162">180.0000dp</dimen>
<dimen name="dp_163">181.1111dp</dimen>
<dimen name="dp_164">182.2222dp</dimen>
<dimen name="dp_165">183.3333dp</dimen>
<dimen name="dp_166">184.4444dp</dimen>
<dimen name="dp_167">185.5556dp</dimen>
<dimen name="dp_168">186.6667dp</dimen>
<dimen name="dp_169">187.7778dp</dimen>
<dimen name="dp_170">188.8889dp</dimen>
<dimen name="dp_171">190.0000dp</dimen>
<dimen name="dp_172">191.1111dp</dimen>
<dimen name="dp_173">192.2222dp</dimen>
<dimen name="dp_174">193.3333dp</dimen>
<dimen name="dp_175">194.4444dp</dimen>
<dimen name="dp_176">195.5556dp</dimen>
<dimen name="dp_177">196.6667dp</dimen>
<dimen name="dp_178">197.7778dp</dimen>
<dimen name="dp_179">198.8889dp</dimen>
<dimen name="dp_180">200.0000dp</dimen>
<dimen name="dp_181">201.1111dp</dimen>
<dimen name="dp_182">202.2222dp</dimen>
<dimen name="dp_183">203.3333dp</dimen>
<dimen name="dp_184">204.4444dp</dimen>
<dimen name="dp_185">205.5556dp</dimen>
<dimen name="dp_186">206.6667dp</dimen>
<dimen name="dp_187">207.7778dp</dimen>
<dimen name="dp_188">208.8889dp</dimen>
<dimen name="dp_189">210.0000dp</dimen>
<dimen name="dp_190">211.1111dp</dimen>
<dimen name="dp_191">212.2222dp</dimen>
<dimen name="dp_191_25">212.5000dp</dimen>
<dimen name="dp_192">213.3333dp</dimen>
<dimen name="dp_193">214.4444dp</dimen>
<dimen name="dp_194">215.5556dp</dimen>
<dimen name="dp_195">216.6667dp</dimen>
<dimen name="dp_196">217.7778dp</dimen>
<dimen name="dp_197">218.8889dp</dimen>
<dimen name="dp_198">220.0000dp</dimen>
<dimen name="dp_199">221.1111dp</dimen>
<dimen name="dp_200">222.2222dp</dimen>
<dimen name="dp_201">223.3333dp</dimen>
<dimen name="dp_202">224.4444dp</dimen>
<dimen name="dp_203">225.5556dp</dimen>
<dimen name="dp_204">226.6667dp</dimen>
<dimen name="dp_205">227.7778dp</dimen>
<dimen name="dp_206">228.8889dp</dimen>
<dimen name="dp_207">230.0000dp</dimen>
<dimen name="dp_208">231.1111dp</dimen>
<dimen name="dp_209">232.2222dp</dimen>
<dimen name="dp_210">233.3333dp</dimen>
<dimen name="dp_211">234.4444dp</dimen>
<dimen name="dp_212">235.5556dp</dimen>
<dimen name="dp_213">236.6667dp</dimen>
<dimen name="dp_214">237.7778dp</dimen>
<dimen name="dp_215">238.8889dp</dimen>
<dimen name="dp_216">240.0000dp</dimen>
<dimen name="dp_217">241.1111dp</dimen>
<dimen name="dp_218">242.2222dp</dimen>
<dimen name="dp_219">243.3333dp</dimen>
<dimen name="dp_220">244.4444dp</dimen>
<dimen name="dp_221">245.5556dp</dimen>
<dimen name="dp_222">246.6667dp</dimen>
<dimen name="dp_223">247.7778dp</dimen>
<dimen name="dp_224">248.8889dp</dimen>
<dimen name="dp_225">250.0000dp</dimen>
<dimen name="dp_226">251.1111dp</dimen>
<dimen name="dp_227">252.2222dp</dimen>
<dimen name="dp_228">253.3333dp</dimen>
<dimen name="dp_229">254.4444dp</dimen>
<dimen name="dp_230">255.5556dp</dimen>
<dimen name="dp_231">256.6667dp</dimen>
<dimen name="dp_232">257.7778dp</dimen>
<dimen name="dp_233">258.8889dp</dimen>
<dimen name="dp_234">260.0000dp</dimen>
<dimen name="dp_235">261.1111dp</dimen>
<dimen name="dp_236">262.2222dp</dimen>
<dimen name="dp_237">263.3333dp</dimen>
<dimen name="dp_238">264.4444dp</dimen>
<dimen name="dp_239">265.5556dp</dimen>
<dimen name="dp_240">266.6667dp</dimen>
<dimen name="dp_241">267.7778dp</dimen>
<dimen name="dp_242">268.8889dp</dimen>
<dimen name="dp_243">270.0000dp</dimen>
<dimen name="dp_244">271.1111dp</dimen>
<dimen name="dp_245">272.2222dp</dimen>
<dimen name="dp_246">273.3333dp</dimen>
<dimen name="dp_247">274.4444dp</dimen>
<dimen name="dp_248">275.5556dp</dimen>
<dimen name="dp_249">276.6667dp</dimen>
<dimen name="dp_250">277.7778dp</dimen>
<dimen name="dp_251">278.8889dp</dimen>
<dimen name="dp_252">280.0000dp</dimen>
<dimen name="dp_253">281.1111dp</dimen>
<dimen name="dp_254">282.2222dp</dimen>
<dimen name="dp_255">283.3333dp</dimen>
<dimen name="dp_256">284.4444dp</dimen>
<dimen name="dp_257">285.5556dp</dimen>
<dimen name="dp_258">286.6667dp</dimen>
<dimen name="dp_259">287.7778dp</dimen>
<dimen name="dp_260">288.8889dp</dimen>
<dimen name="dp_261">290.0000dp</dimen>
<dimen name="dp_262">291.1111dp</dimen>
<dimen name="dp_263">292.2222dp</dimen>
<dimen name="dp_264">293.3333dp</dimen>
<dimen name="dp_265">294.4444dp</dimen>
<dimen name="dp_266">295.5556dp</dimen>
<dimen name="dp_267">296.6667dp</dimen>
<dimen name="dp_268">297.7778dp</dimen>
<dimen name="dp_269">298.8889dp</dimen>
<dimen name="dp_270">300.0000dp</dimen>
<dimen name="dp_271">301.1111dp</dimen>
<dimen name="dp_272">302.2222dp</dimen>
<dimen name="dp_273">303.3333dp</dimen>
<dimen name="dp_274">304.4444dp</dimen>
<dimen name="dp_275">305.5556dp</dimen>
<dimen name="dp_276">306.6667dp</dimen>
<dimen name="dp_277">307.7778dp</dimen>
<dimen name="dp_278">308.8889dp</dimen>
<dimen name="dp_279">310.0000dp</dimen>
<dimen name="dp_280">311.1111dp</dimen>
<dimen name="dp_281">312.2222dp</dimen>
<dimen name="dp_282">313.3333dp</dimen>
<dimen name="dp_283">314.4444dp</dimen>
<dimen name="dp_284">315.5556dp</dimen>
<dimen name="dp_285">316.6667dp</dimen>
<dimen name="dp_286">317.7778dp</dimen>
<dimen name="dp_287">318.8889dp</dimen>
<dimen name="dp_288">320.0000dp</dimen>
<dimen name="dp_289">321.1111dp</dimen>
<dimen name="dp_290">322.2222dp</dimen>
<dimen name="dp_291">323.3333dp</dimen>
<dimen name="dp_292">324.4444dp</dimen>
<dimen name="dp_293">325.5556dp</dimen>
<dimen name="dp_294">326.6667dp</dimen>
<dimen name="dp_295">327.7778dp</dimen>
<dimen name="dp_296">328.8889dp</dimen>
<dimen name="dp_297">330.0000dp</dimen>
<dimen name="dp_298">331.1111dp</dimen>
<dimen name="dp_299">332.2222dp</dimen>
<dimen name="dp_300">333.3333dp</dimen>
<dimen name="dp_301">334.4444dp</dimen>
<dimen name="dp_302">335.5556dp</dimen>
<dimen name="dp_303">336.6667dp</dimen>
<dimen name="dp_304">337.7778dp</dimen>
<dimen name="dp_305">338.8889dp</dimen>
<dimen name="dp_306">340.0000dp</dimen>
<dimen name="dp_307">341.1111dp</dimen>
<dimen name="dp_308">342.2222dp</dimen>
<dimen name="dp_309">343.3333dp</dimen>
<dimen name="dp_310">344.4444dp</dimen>
<dimen name="dp_311">345.5556dp</dimen>
<dimen name="dp_312">346.6667dp</dimen>
<dimen name="dp_313">347.7778dp</dimen>
<dimen name="dp_314">348.8889dp</dimen>
<dimen name="dp_315">350.0000dp</dimen>
<dimen name="dp_316">351.1111dp</dimen>
<dimen name="dp_317">352.2222dp</dimen>
<dimen name="dp_318">353.3333dp</dimen>
<dimen name="dp_319">354.4444dp</dimen>
<dimen name="dp_320">355.5556dp</dimen>
<dimen name="dp_321">356.6667dp</dimen>
<dimen name="dp_322">357.7778dp</dimen>
<dimen name="dp_323">358.8889dp</dimen>
<dimen name="dp_324">360.0000dp</dimen>
<dimen name="dp_325">361.1111dp</dimen>
<dimen name="dp_326">362.2222dp</dimen>
<dimen name="dp_327">363.3333dp</dimen>
<dimen name="dp_328">364.4444dp</dimen>
<dimen name="dp_329">365.5556dp</dimen>
<dimen name="dp_330">366.6667dp</dimen>
<dimen name="dp_331">367.7778dp</dimen>
<dimen name="dp_332">368.8889dp</dimen>
<dimen name="dp_333">370.0000dp</dimen>
<dimen name="dp_334">371.1111dp</dimen>
<dimen name="dp_335">372.2222dp</dimen>
<dimen name="dp_336">373.3333dp</dimen>
<dimen name="dp_337">374.4444dp</dimen>
<dimen name="dp_338">375.5556dp</dimen>
<dimen name="dp_339">376.6667dp</dimen>
<dimen name="dp_340">377.7778dp</dimen>
<dimen name="dp_341">378.8889dp</dimen>
<dimen name="dp_342">380.0000dp</dimen>
<dimen name="dp_343">381.1111dp</dimen>
<dimen name="dp_344">382.2222dp</dimen>
<dimen name="dp_345">383.3333dp</dimen>
<dimen name="dp_346">384.4444dp</dimen>
<dimen name="dp_347">385.5556dp</dimen>
<dimen name="dp_348">386.6667dp</dimen>
<dimen name="dp_349">387.7778dp</dimen>
<dimen name="dp_350">388.8889dp</dimen>
<dimen name="dp_351">390.0000dp</dimen>
<dimen name="dp_352">391.1111dp</dimen>
<dimen name="dp_353">392.2222dp</dimen>
<dimen name="dp_354">393.3333dp</dimen>
<dimen name="dp_355">394.4444dp</dimen>
<dimen name="dp_356">395.5556dp</dimen>
<dimen name="dp_357">396.6667dp</dimen>
<dimen name="dp_358">397.7778dp</dimen>
<dimen name="dp_359">398.8889dp</dimen>
<dimen name="dp_360">400.0000dp</dimen>
<dimen name="dp_365">405.5556dp</dimen>
<dimen name="dp_370">411.1111dp</dimen>
<dimen name="dp_400">444.4444dp</dimen>
<dimen name="dp_410">455.5556dp</dimen>
<dimen name="dp_422">468.8889dp</dimen>
<dimen name="dp_472">524.4444dp</dimen>
<dimen name="dp_500">555.5556dp</dimen>
<dimen name="dp_600">666.6667dp</dimen>
<dimen name="dp_640">711.1111dp</dimen>
<dimen name="dp_720">800.0000dp</dimen>
<dimen name="sp_6">6.6667sp</dimen>
<dimen name="sp_7">7.7778sp</dimen>
<dimen name="sp_8">8.8889sp</dimen>
<dimen name="sp_9">10.0000sp</dimen>
<dimen name="sp_10">11.1111sp</dimen>
<dimen name="sp_11">12.2222sp</dimen>
<dimen name="sp_12">13.3333sp</dimen>
<dimen name="sp_13">14.4444sp</dimen>
<dimen name="sp_14">15.5556sp</dimen>
<dimen name="sp_15">16.6667sp</dimen>
<dimen name="sp_16">17.7778sp</dimen>
<dimen name="sp_17">18.8889sp</dimen>
<dimen name="sp_18">20.0000sp</dimen>
<dimen name="sp_19">21.1111sp</dimen>
<dimen name="sp_20">22.2222sp</dimen>
<dimen name="sp_21">23.3333sp</dimen>
<dimen name="sp_22">24.4444sp</dimen>
<dimen name="sp_23">25.5556sp</dimen>
<dimen name="sp_24">26.6667sp</dimen>
<dimen name="sp_25">27.7778sp</dimen>
<dimen name="sp_28">31.1111sp</dimen>
<dimen name="sp_30">33.3333sp</dimen>
<dimen name="sp_32">35.5556sp</dimen>
<dimen name="sp_34">37.7778sp</dimen>
<dimen name="sp_36">40.0000sp</dimen>
<dimen name="sp_38">42.2222sp</dimen>
<dimen name="sp_40">44.4444sp</dimen>
<dimen name="sp_42">46.6667sp</dimen>
<dimen name="sp_48">53.3333sp</dimen>
</resources>
<?xml version="1.0" encoding="UTF-8"?>
<resources>
<dimen name="activity_horizontal_margin">18.2222dp</dimen>
<dimen name="activity_vertical_margin">18.2222dp</dimen>
<dimen name="title_bar_head">56.9444dp</dimen>
<dimen name="card_common_margin_left">@dimen/dp_15</dimen>
<dimen name="dp_m_60">-68.3333dp</dimen>
<dimen name="dp_m_30">-34.1667dp</dimen>
<dimen name="dp_m_20">-22.7778dp</dimen>
<dimen name="dp_m_12">-13.6667dp</dimen>
<dimen name="dp_m_10">-11.3889dp</dimen>
<dimen name="dp_m_8">-9.1111dp</dimen>
<dimen name="dp_m_5">-5.6944dp</dimen>
<dimen name="dp_m_2">-2.2778dp</dimen>
<dimen name="dp_m_1">-1.1389dp</dimen>
<dimen name="dp_0">0.0000dp</dimen>
<dimen name="dp_0_1">0.1139dp</dimen>
<dimen name="dp_0_5">0.5694dp</dimen>
<dimen name="dp_1">1.1389dp</dimen>
<dimen name="dp_1_5">1.7083dp</dimen>
<dimen name="dp_2">2.2778dp</dimen>
<dimen name="dp_2_5">2.8472dp</dimen>
<dimen name="dp_3">3.4167dp</dimen>
<dimen name="dp_3_5">3.9861dp</dimen>
<dimen name="dp_4">4.5556dp</dimen>
<dimen name="dp_4_5">5.1250dp</dimen>
<dimen name="dp_5">5.6944dp</dimen>
<dimen name="dp_6">6.8333dp</dimen>
<dimen name="dp_7">7.9722dp</dimen>
<dimen name="dp_7_5">8.5417dp</dimen>
<dimen name="dp_8">9.1111dp</dimen>
<dimen name="dp_9">10.2500dp</dimen>
<dimen name="dp_10">11.3889dp</dimen>
<dimen name="dp_11">12.5278dp</dimen>
<dimen name="dp_12">13.6667dp</dimen>
<dimen name="dp_13">14.8056dp</dimen>
<dimen name="dp_14">15.9444dp</dimen>
<dimen name="dp_15">17.0833dp</dimen>
<dimen name="dp_16">18.2222dp</dimen>
<dimen name="dp_17">19.3611dp</dimen>
<dimen name="dp_18">20.5000dp</dimen>
<dimen name="dp_19">21.6389dp</dimen>
<dimen name="dp_20">22.7778dp</dimen>
<dimen name="dp_21">23.9167dp</dimen>
<dimen name="dp_22">25.0556dp</dimen>
<dimen name="dp_23">26.1944dp</dimen>
<dimen name="dp_24">27.3333dp</dimen>
<dimen name="dp_25">28.4722dp</dimen>
<dimen name="dp_26">29.6111dp</dimen>
<dimen name="dp_27">30.7500dp</dimen>
<dimen name="dp_28">31.8889dp</dimen>
<dimen name="dp_29">33.0278dp</dimen>
<dimen name="dp_30">34.1667dp</dimen>
<dimen name="dp_31">35.3056dp</dimen>
<dimen name="dp_32">36.4444dp</dimen>
<dimen name="dp_33">37.5833dp</dimen>
<dimen name="dp_34">38.7222dp</dimen>
<dimen name="dp_35">39.8611dp</dimen>
<dimen name="dp_36">41.0000dp</dimen>
<dimen name="dp_37">42.1389dp</dimen>
<dimen name="dp_38">43.2778dp</dimen>
<dimen name="dp_39">44.4167dp</dimen>
<dimen name="dp_40">45.5556dp</dimen>
<dimen name="dp_41">46.6944dp</dimen>
<dimen name="dp_42">47.8333dp</dimen>
<dimen name="dp_43">48.9722dp</dimen>
<dimen name="dp_44">50.1111dp</dimen>
<dimen name="dp_45">51.2500dp</dimen>
<dimen name="dp_46">52.3889dp</dimen>
<dimen name="dp_47">53.5278dp</dimen>
<dimen name="dp_48">54.6667dp</dimen>
<dimen name="dp_49">55.8056dp</dimen>
<dimen name="dp_50">56.9444dp</dimen>
<dimen name="dp_51">58.0833dp</dimen>
<dimen name="dp_52">59.2222dp</dimen>
<dimen name="dp_53">60.3611dp</dimen>
<dimen name="dp_54">61.5000dp</dimen>
<dimen name="dp_55">62.6389dp</dimen>
<dimen name="dp_56">63.7778dp</dimen>
<dimen name="dp_57">64.9167dp</dimen>
<dimen name="dp_58">66.0556dp</dimen>
<dimen name="dp_59">67.1944dp</dimen>
<dimen name="dp_60">68.3333dp</dimen>
<dimen name="dp_61">69.4722dp</dimen>
<dimen name="dp_62">70.6111dp</dimen>
<dimen name="dp_63">71.7500dp</dimen>
<dimen name="dp_64">72.8889dp</dimen>
<dimen name="dp_65">74.0278dp</dimen>
<dimen name="dp_66">75.1667dp</dimen>
<dimen name="dp_67">76.3056dp</dimen>
<dimen name="dp_68">77.4444dp</dimen>
<dimen name="dp_69">78.5833dp</dimen>
<dimen name="dp_70">79.7222dp</dimen>
<dimen name="dp_71">80.8611dp</dimen>
<dimen name="dp_72">82.0000dp</dimen>
<dimen name="dp_73">83.1389dp</dimen>
<dimen name="dp_74">84.2778dp</dimen>
<dimen name="dp_75">85.4167dp</dimen>
<dimen name="dp_76">86.5556dp</dimen>
<dimen name="dp_77">87.6944dp</dimen>
<dimen name="dp_78">88.8333dp</dimen>
<dimen name="dp_79">89.9722dp</dimen>
<dimen name="dp_80">91.1111dp</dimen>
<dimen name="dp_81">92.2500dp</dimen>
<dimen name="dp_82">93.3889dp</dimen>
<dimen name="dp_83">94.5278dp</dimen>
<dimen name="dp_84">95.6667dp</dimen>
<dimen name="dp_85">96.8056dp</dimen>
<dimen name="dp_86">97.9444dp</dimen>
<dimen name="dp_87">99.0833dp</dimen>
<dimen name="dp_88">100.2222dp</dimen>
<dimen name="dp_89">101.3611dp</dimen>
<dimen name="dp_90">102.5000dp</dimen>
<dimen name="dp_91">103.6389dp</dimen>
<dimen name="dp_92">104.7778dp</dimen>
<dimen name="dp_93">105.9167dp</dimen>
<dimen name="dp_94">107.0556dp</dimen>
<dimen name="dp_95">108.1944dp</dimen>
<dimen name="dp_96">109.3333dp</dimen>
<dimen name="dp_97">110.4722dp</dimen>
<dimen name="dp_98">111.6111dp</dimen>
<dimen name="dp_99">112.7500dp</dimen>
<dimen name="dp_100">113.8889dp</dimen>
<dimen name="dp_101">115.0278dp</dimen>
<dimen name="dp_102">116.1667dp</dimen>
<dimen name="dp_103">117.3056dp</dimen>
<dimen name="dp_104">118.4444dp</dimen>
<dimen name="dp_104_5">119.0139dp</dimen>
<dimen name="dp_105">119.5833dp</dimen>
<dimen name="dp_106">120.7222dp</dimen>
<dimen name="dp_107">121.8611dp</dimen>
<dimen name="dp_108">123.0000dp</dimen>
<dimen name="dp_109">124.1389dp</dimen>
<dimen name="dp_110">125.2778dp</dimen>
<dimen name="dp_111">126.4167dp</dimen>
<dimen name="dp_112">127.5556dp</dimen>
<dimen name="dp_113">128.6944dp</dimen>
<dimen name="dp_114">129.8333dp</dimen>
<dimen name="dp_115">130.9722dp</dimen>
<dimen name="dp_116">132.1111dp</dimen>
<dimen name="dp_117">133.2500dp</dimen>
<dimen name="dp_118">134.3889dp</dimen>
<dimen name="dp_119">135.5278dp</dimen>
<dimen name="dp_120">136.6667dp</dimen>
<dimen name="dp_121">137.8056dp</dimen>
<dimen name="dp_122">138.9444dp</dimen>
<dimen name="dp_123">140.0833dp</dimen>
<dimen name="dp_124">141.2222dp</dimen>
<dimen name="dp_125">142.3611dp</dimen>
<dimen name="dp_126">143.5000dp</dimen>
<dimen name="dp_127">144.6389dp</dimen>
<dimen name="dp_128">145.7778dp</dimen>
<dimen name="dp_129">146.9167dp</dimen>
<dimen name="dp_130">148.0556dp</dimen>
<dimen name="dp_131">149.1944dp</dimen>
<dimen name="dp_132">150.3333dp</dimen>
<dimen name="dp_133">151.4722dp</dimen>
<dimen name="dp_134">152.6111dp</dimen>
<dimen name="dp_134_5">153.1806dp</dimen>
<dimen name="dp_135">153.7500dp</dimen>
<dimen name="dp_136">154.8889dp</dimen>
<dimen name="dp_137">156.0278dp</dimen>
<dimen name="dp_138">157.1667dp</dimen>
<dimen name="dp_139">158.3056dp</dimen>
<dimen name="dp_140">159.4444dp</dimen>
<dimen name="dp_141">160.5833dp</dimen>
<dimen name="dp_142">161.7222dp</dimen>
<dimen name="dp_143">162.8611dp</dimen>
<dimen name="dp_144">164.0000dp</dimen>
<dimen name="dp_145">165.1389dp</dimen>
<dimen name="dp_146">166.2778dp</dimen>
<dimen name="dp_147">167.4167dp</dimen>
<dimen name="dp_148">168.5556dp</dimen>
<dimen name="dp_149">169.6944dp</dimen>
<dimen name="dp_150">170.8333dp</dimen>
<dimen name="dp_151">171.9722dp</dimen>
<dimen name="dp_152">173.1111dp</dimen>
<dimen name="dp_153">174.2500dp</dimen>
<dimen name="dp_154">175.3889dp</dimen>
<dimen name="dp_155">176.5278dp</dimen>
<dimen name="dp_156">177.6667dp</dimen>
<dimen name="dp_157">178.8056dp</dimen>
<dimen name="dp_158">179.9444dp</dimen>
<dimen name="dp_159">181.0833dp</dimen>
<dimen name="dp_160">182.2222dp</dimen>
<dimen name="dp_161">183.3611dp</dimen>
<dimen name="dp_162">184.5000dp</dimen>
<dimen name="dp_163">185.6389dp</dimen>
<dimen name="dp_164">186.7778dp</dimen>
<dimen name="dp_165">187.9167dp</dimen>
<dimen name="dp_166">189.0556dp</dimen>
<dimen name="dp_167">190.1944dp</dimen>
<dimen name="dp_168">191.3333dp</dimen>
<dimen name="dp_169">192.4722dp</dimen>
<dimen name="dp_170">193.6111dp</dimen>
<dimen name="dp_171">194.7500dp</dimen>
<dimen name="dp_172">195.8889dp</dimen>
<dimen name="dp_173">197.0278dp</dimen>
<dimen name="dp_174">198.1667dp</dimen>
<dimen name="dp_175">199.3056dp</dimen>
<dimen name="dp_176">200.4444dp</dimen>
<dimen name="dp_177">201.5833dp</dimen>
<dimen name="dp_178">202.7222dp</dimen>
<dimen name="dp_179">203.8611dp</dimen>
<dimen name="dp_180">205.0000dp</dimen>
<dimen name="dp_181">206.1389dp</dimen>
<dimen name="dp_182">207.2778dp</dimen>
<dimen name="dp_183">208.4167dp</dimen>
<dimen name="dp_184">209.5556dp</dimen>
<dimen name="dp_185">210.6944dp</dimen>
<dimen name="dp_186">211.8333dp</dimen>
<dimen name="dp_187">212.9722dp</dimen>
<dimen name="dp_188">214.1111dp</dimen>
<dimen name="dp_189">215.2500dp</dimen>
<dimen name="dp_190">216.3889dp</dimen>
<dimen name="dp_191">217.5278dp</dimen>
<dimen name="dp_191_25">217.8125dp</dimen>
<dimen name="dp_192">218.6667dp</dimen>
<dimen name="dp_193">219.8056dp</dimen>
<dimen name="dp_194">220.9444dp</dimen>
<dimen name="dp_195">222.0833dp</dimen>
<dimen name="dp_196">223.2222dp</dimen>
<dimen name="dp_197">224.3611dp</dimen>
<dimen name="dp_198">225.5000dp</dimen>
<dimen name="dp_199">226.6389dp</dimen>
<dimen name="dp_200">227.7778dp</dimen>
<dimen name="dp_201">228.9167dp</dimen>
<dimen name="dp_202">230.0556dp</dimen>
<dimen name="dp_203">231.1944dp</dimen>
<dimen name="dp_204">232.3333dp</dimen>
<dimen name="dp_205">233.4722dp</dimen>
<dimen name="dp_206">234.6111dp</dimen>
<dimen name="dp_207">235.7500dp</dimen>
<dimen name="dp_208">236.8889dp</dimen>
<dimen name="dp_209">238.0278dp</dimen>
<dimen name="dp_210">239.1667dp</dimen>
<dimen name="dp_211">240.3056dp</dimen>
<dimen name="dp_212">241.4444dp</dimen>
<dimen name="dp_213">242.5833dp</dimen>
<dimen name="dp_214">243.7222dp</dimen>
<dimen name="dp_215">244.8611dp</dimen>
<dimen name="dp_216">246.0000dp</dimen>
<dimen name="dp_217">247.1389dp</dimen>
<dimen name="dp_218">248.2778dp</dimen>
<dimen name="dp_219">249.4167dp</dimen>
<dimen name="dp_220">250.5556dp</dimen>
<dimen name="dp_221">251.6944dp</dimen>
<dimen name="dp_222">252.8333dp</dimen>
<dimen name="dp_223">253.9722dp</dimen>
<dimen name="dp_224">255.1111dp</dimen>
<dimen name="dp_225">256.2500dp</dimen>
<dimen name="dp_226">257.3889dp</dimen>
<dimen name="dp_227">258.5278dp</dimen>
<dimen name="dp_228">259.6667dp</dimen>
<dimen name="dp_229">260.8056dp</dimen>
<dimen name="dp_230">261.9444dp</dimen>
<dimen name="dp_231">263.0833dp</dimen>
<dimen name="dp_232">264.2222dp</dimen>
<dimen name="dp_233">265.3611dp</dimen>
<dimen name="dp_234">266.5000dp</dimen>
<dimen name="dp_235">267.6389dp</dimen>
<dimen name="dp_236">268.7778dp</dimen>
<dimen name="dp_237">269.9167dp</dimen>
<dimen name="dp_238">271.0556dp</dimen>
<dimen name="dp_239">272.1944dp</dimen>
<dimen name="dp_240">273.3333dp</dimen>
<dimen name="dp_241">274.4722dp</dimen>
<dimen name="dp_242">275.6111dp</dimen>
<dimen name="dp_243">276.7500dp</dimen>
<dimen name="dp_244">277.8889dp</dimen>
<dimen name="dp_245">279.0278dp</dimen>
<dimen name="dp_246">280.1667dp</dimen>
<dimen name="dp_247">281.3056dp</dimen>
<dimen name="dp_248">282.4444dp</dimen>
<dimen name="dp_249">283.5833dp</dimen>
<dimen name="dp_250">284.7222dp</dimen>
<dimen name="dp_251">285.8611dp</dimen>
<dimen name="dp_252">287.0000dp</dimen>
<dimen name="dp_253">288.1389dp</dimen>
<dimen name="dp_254">289.2778dp</dimen>
<dimen name="dp_255">290.4167dp</dimen>
<dimen name="dp_256">291.5556dp</dimen>
<dimen name="dp_257">292.6944dp</dimen>
<dimen name="dp_258">293.8333dp</dimen>
<dimen name="dp_259">294.9722dp</dimen>
<dimen name="dp_260">296.1111dp</dimen>
<dimen name="dp_261">297.2500dp</dimen>
<dimen name="dp_262">298.3889dp</dimen>
<dimen name="dp_263">299.5278dp</dimen>
<dimen name="dp_264">300.6667dp</dimen>
<dimen name="dp_265">301.8056dp</dimen>
<dimen name="dp_266">302.9444dp</dimen>
<dimen name="dp_267">304.0833dp</dimen>
<dimen name="dp_268">305.2222dp</dimen>
<dimen name="dp_269">306.3611dp</dimen>
<dimen name="dp_270">307.5000dp</dimen>
<dimen name="dp_271">308.6389dp</dimen>
<dimen name="dp_272">309.7778dp</dimen>
<dimen name="dp_273">310.9167dp</dimen>
<dimen name="dp_274">312.0556dp</dimen>
<dimen name="dp_275">313.1944dp</dimen>
<dimen name="dp_276">314.3333dp</dimen>
<dimen name="dp_277">315.4722dp</dimen>
<dimen name="dp_278">316.6111dp</dimen>
<dimen name="dp_279">317.7500dp</dimen>
<dimen name="dp_280">318.8889dp</dimen>
<dimen name="dp_281">320.0278dp</dimen>
<dimen name="dp_282">321.1667dp</dimen>
<dimen name="dp_283">322.3056dp</dimen>
<dimen name="dp_284">323.4444dp</dimen>
<dimen name="dp_285">324.5833dp</dimen>
<dimen name="dp_286">325.7222dp</dimen>
<dimen name="dp_287">326.8611dp</dimen>
<dimen name="dp_288">328.0000dp</dimen>
<dimen name="dp_289">329.1389dp</dimen>
<dimen name="dp_290">330.2778dp</dimen>
<dimen name="dp_291">331.4167dp</dimen>
<dimen name="dp_292">332.5556dp</dimen>
<dimen name="dp_293">333.6944dp</dimen>
<dimen name="dp_294">334.8333dp</dimen>
<dimen name="dp_295">335.9722dp</dimen>
<dimen name="dp_296">337.1111dp</dimen>
<dimen name="dp_297">338.2500dp</dimen>
<dimen name="dp_298">339.3889dp</dimen>
<dimen name="dp_299">340.5278dp</dimen>
<dimen name="dp_300">341.6667dp</dimen>
<dimen name="dp_301">342.8056dp</dimen>
<dimen name="dp_302">343.9444dp</dimen>
<dimen name="dp_303">345.0833dp</dimen>
<dimen name="dp_304">346.2222dp</dimen>
<dimen name="dp_305">347.3611dp</dimen>
<dimen name="dp_306">348.5000dp</dimen>
<dimen name="dp_307">349.6389dp</dimen>
<dimen name="dp_308">350.7778dp</dimen>
<dimen name="dp_309">351.9167dp</dimen>
<dimen name="dp_310">353.0556dp</dimen>
<dimen name="dp_311">354.1944dp</dimen>
<dimen name="dp_312">355.3333dp</dimen>
<dimen name="dp_313">356.4722dp</dimen>
<dimen name="dp_314">357.6111dp</dimen>
<dimen name="dp_315">358.7500dp</dimen>
<dimen name="dp_316">359.8889dp</dimen>
<dimen name="dp_317">361.0278dp</dimen>
<dimen name="dp_318">362.1667dp</dimen>
<dimen name="dp_319">363.3056dp</dimen>
<dimen name="dp_320">364.4444dp</dimen>
<dimen name="dp_321">365.5833dp</dimen>
<dimen name="dp_322">366.7222dp</dimen>
<dimen name="dp_323">367.8611dp</dimen>
<dimen name="dp_324">369.0000dp</dimen>
<dimen name="dp_325">370.1389dp</dimen>
<dimen name="dp_326">371.2778dp</dimen>
<dimen name="dp_327">372.4167dp</dimen>
<dimen name="dp_328">373.5556dp</dimen>
<dimen name="dp_329">374.6944dp</dimen>
<dimen name="dp_330">375.8333dp</dimen>
<dimen name="dp_331">376.9722dp</dimen>
<dimen name="dp_332">378.1111dp</dimen>
<dimen name="dp_333">379.2500dp</dimen>
<dimen name="dp_334">380.3889dp</dimen>
<dimen name="dp_335">381.5278dp</dimen>
<dimen name="dp_336">382.6667dp</dimen>
<dimen name="dp_337">383.8056dp</dimen>
<dimen name="dp_338">384.9444dp</dimen>
<dimen name="dp_339">386.0833dp</dimen>
<dimen name="dp_340">387.2222dp</dimen>
<dimen name="dp_341">388.3611dp</dimen>
<dimen name="dp_342">389.5000dp</dimen>
<dimen name="dp_343">390.6389dp</dimen>
<dimen name="dp_344">391.7778dp</dimen>
<dimen name="dp_345">392.9167dp</dimen>
<dimen name="dp_346">394.0556dp</dimen>
<dimen name="dp_347">395.1944dp</dimen>
<dimen name="dp_348">396.3333dp</dimen>
<dimen name="dp_349">397.4722dp</dimen>
<dimen name="dp_350">398.6111dp</dimen>
<dimen name="dp_351">399.7500dp</dimen>
<dimen name="dp_352">400.8889dp</dimen>
<dimen name="dp_353">402.0278dp</dimen>
<dimen name="dp_354">403.1667dp</dimen>
<dimen name="dp_355">404.3056dp</dimen>
<dimen name="dp_356">405.4444dp</dimen>
<dimen name="dp_357">406.5833dp</dimen>
<dimen name="dp_358">407.7222dp</dimen>
<dimen name="dp_359">408.8611dp</dimen>
<dimen name="dp_360">410.0000dp</dimen>
<dimen name="dp_365">415.6944dp</dimen>
<dimen name="dp_370">421.3889dp</dimen>
<dimen name="dp_400">455.5556dp</dimen>
<dimen name="dp_410">466.9444dp</dimen>
<dimen name="dp_422">480.6111dp</dimen>
<dimen name="dp_472">537.5556dp</dimen>
<dimen name="dp_500">569.4444dp</dimen>
<dimen name="dp_600">683.3333dp</dimen>
<dimen name="dp_640">728.8889dp</dimen>
<dimen name="dp_720">820.0000dp</dimen>
<dimen name="sp_6">6.8333sp</dimen>
<dimen name="sp_7">7.9722sp</dimen>
<dimen name="sp_8">9.1111sp</dimen>
<dimen name="sp_9">10.2500sp</dimen>
<dimen name="sp_10">11.3889sp</dimen>
<dimen name="sp_11">12.5278sp</dimen>
<dimen name="sp_12">13.6667sp</dimen>
<dimen name="sp_13">14.8056sp</dimen>
<dimen name="sp_14">15.9444sp</dimen>
<dimen name="sp_15">17.0833sp</dimen>
<dimen name="sp_16">18.2222sp</dimen>
<dimen name="sp_17">19.3611sp</dimen>
<dimen name="sp_18">20.5000sp</dimen>
<dimen name="sp_19">21.6389sp</dimen>
<dimen name="sp_20">22.7778sp</dimen>
<dimen name="sp_21">23.9167sp</dimen>
<dimen name="sp_22">25.0556sp</dimen>
<dimen name="sp_23">26.1944sp</dimen>
<dimen name="sp_24">27.3333sp</dimen>
<dimen name="sp_25">28.4722sp</dimen>
<dimen name="sp_28">31.8889sp</dimen>
<dimen name="sp_30">34.1667sp</dimen>
<dimen name="sp_32">36.4444sp</dimen>
<dimen name="sp_34">38.7222sp</dimen>
<dimen name="sp_36">41.0000sp</dimen>
<dimen name="sp_38">43.2778sp</dimen>
<dimen name="sp_40">45.5556sp</dimen>
<dimen name="sp_42">47.8333sp</dimen>
<dimen name="sp_48">54.6667sp</dimen>
</resources>
<?xml version="1.0" encoding="UTF-8"?>
<resources>
<dimen name="activity_horizontal_margin">18.2667dp</dimen>
<dimen name="activity_vertical_margin">18.2667dp</dimen>
<dimen name="title_bar_head">57.0833dp</dimen>
<dimen name="card_common_margin_left">@dimen/dp_15</dimen>
<dimen name="dp_m_60">-68.5000dp</dimen>
<dimen name="dp_m_30">-34.2500dp</dimen>
<dimen name="dp_m_20">-22.8333dp</dimen>
<dimen name="dp_m_12">-13.7000dp</dimen>
<dimen name="dp_m_10">-11.4167dp</dimen>
<dimen name="dp_m_8">-9.1333dp</dimen>
<dimen name="dp_m_5">-5.7083dp</dimen>
<dimen name="dp_m_2">-2.2833dp</dimen>
<dimen name="dp_m_1">-1.1417dp</dimen>
<dimen name="dp_0">0.0000dp</dimen>
<dimen name="dp_0_1">0.1142dp</dimen>
<dimen name="dp_0_5">0.5708dp</dimen>
<dimen name="dp_1">1.1417dp</dimen>
<dimen name="dp_1_5">1.7125dp</dimen>
<dimen name="dp_2">2.2833dp</dimen>
<dimen name="dp_2_5">2.8542dp</dimen>
<dimen name="dp_3">3.4250dp</dimen>
<dimen name="dp_3_5">3.9958dp</dimen>
<dimen name="dp_4">4.5667dp</dimen>
<dimen name="dp_4_5">5.1375dp</dimen>
<dimen name="dp_5">5.7083dp</dimen>
<dimen name="dp_6">6.8500dp</dimen>
<dimen name="dp_7">7.9917dp</dimen>
<dimen name="dp_7_5">8.5625dp</dimen>
<dimen name="dp_8">9.1333dp</dimen>
<dimen name="dp_9">10.2750dp</dimen>
<dimen name="dp_10">11.4167dp</dimen>
<dimen name="dp_11">12.5583dp</dimen>
<dimen name="dp_12">13.7000dp</dimen>
<dimen name="dp_13">14.8417dp</dimen>
<dimen name="dp_14">15.9833dp</dimen>
<dimen name="dp_15">17.1250dp</dimen>
<dimen name="dp_16">18.2667dp</dimen>
<dimen name="dp_17">19.4083dp</dimen>
<dimen name="dp_18">20.5500dp</dimen>
<dimen name="dp_19">21.6917dp</dimen>
<dimen name="dp_20">22.8333dp</dimen>
<dimen name="dp_21">23.9750dp</dimen>
<dimen name="dp_22">25.1167dp</dimen>
<dimen name="dp_23">26.2583dp</dimen>
<dimen name="dp_24">27.4000dp</dimen>
<dimen name="dp_25">28.5417dp</dimen>
<dimen name="dp_26">29.6833dp</dimen>
<dimen name="dp_27">30.8250dp</dimen>
<dimen name="dp_28">31.9667dp</dimen>
<dimen name="dp_29">33.1083dp</dimen>
<dimen name="dp_30">34.2500dp</dimen>
<dimen name="dp_31">35.3917dp</dimen>
<dimen name="dp_32">36.5333dp</dimen>
<dimen name="dp_33">37.6750dp</dimen>
<dimen name="dp_34">38.8167dp</dimen>
<dimen name="dp_35">39.9583dp</dimen>
<dimen name="dp_36">41.1000dp</dimen>
<dimen name="dp_37">42.2417dp</dimen>
<dimen name="dp_38">43.3833dp</dimen>
<dimen name="dp_39">44.5250dp</dimen>
<dimen name="dp_40">45.6667dp</dimen>
<dimen name="dp_41">46.8083dp</dimen>
<dimen name="dp_42">47.9500dp</dimen>
<dimen name="dp_43">49.0917dp</dimen>
<dimen name="dp_44">50.2333dp</dimen>
<dimen name="dp_45">51.3750dp</dimen>
<dimen name="dp_46">52.5167dp</dimen>
<dimen name="dp_47">53.6583dp</dimen>
<dimen name="dp_48">54.8000dp</dimen>
<dimen name="dp_49">55.9417dp</dimen>
<dimen name="dp_50">57.0833dp</dimen>
<dimen name="dp_51">58.2250dp</dimen>
<dimen name="dp_52">59.3667dp</dimen>
<dimen name="dp_53">60.5083dp</dimen>
<dimen name="dp_54">61.6500dp</dimen>
<dimen name="dp_55">62.7917dp</dimen>
<dimen name="dp_56">63.9333dp</dimen>
<dimen name="dp_57">65.0750dp</dimen>
<dimen name="dp_58">66.2167dp</dimen>
<dimen name="dp_59">67.3583dp</dimen>
<dimen name="dp_60">68.5000dp</dimen>
<dimen name="dp_61">69.6417dp</dimen>
<dimen name="dp_62">70.7833dp</dimen>
<dimen name="dp_63">71.9250dp</dimen>
<dimen name="dp_64">73.0667dp</dimen>
<dimen name="dp_65">74.2083dp</dimen>
<dimen name="dp_66">75.3500dp</dimen>
<dimen name="dp_67">76.4917dp</dimen>
<dimen name="dp_68">77.6333dp</dimen>
<dimen name="dp_69">78.7750dp</dimen>
<dimen name="dp_70">79.9167dp</dimen>
<dimen name="dp_71">81.0583dp</dimen>
<dimen name="dp_72">82.2000dp</dimen>
<dimen name="dp_73">83.3417dp</dimen>
<dimen name="dp_74">84.4833dp</dimen>
<dimen name="dp_75">85.6250dp</dimen>
<dimen name="dp_76">86.7667dp</dimen>
<dimen name="dp_77">87.9083dp</dimen>
<dimen name="dp_78">89.0500dp</dimen>
<dimen name="dp_79">90.1917dp</dimen>
<dimen name="dp_80">91.3333dp</dimen>
<dimen name="dp_81">92.4750dp</dimen>
<dimen name="dp_82">93.6167dp</dimen>
<dimen name="dp_83">94.7583dp</dimen>
<dimen name="dp_84">95.9000dp</dimen>
<dimen name="dp_85">97.0417dp</dimen>
<dimen name="dp_86">98.1833dp</dimen>
<dimen name="dp_87">99.3250dp</dimen>
<dimen name="dp_88">100.4667dp</dimen>
<dimen name="dp_89">101.6083dp</dimen>
<dimen name="dp_90">102.7500dp</dimen>
<dimen name="dp_91">103.8917dp</dimen>
<dimen name="dp_92">105.0333dp</dimen>
<dimen name="dp_93">106.1750dp</dimen>
<dimen name="dp_94">107.3167dp</dimen>
<dimen name="dp_95">108.4583dp</dimen>
<dimen name="dp_96">109.6000dp</dimen>
<dimen name="dp_97">110.7417dp</dimen>
<dimen name="dp_98">111.8833dp</dimen>
<dimen name="dp_99">113.0250dp</dimen>
<dimen name="dp_100">114.1667dp</dimen>
<dimen name="dp_101">115.3083dp</dimen>
<dimen name="dp_102">116.4500dp</dimen>
<dimen name="dp_103">117.5917dp</dimen>
<dimen name="dp_104">118.7333dp</dimen>
<dimen name="dp_104_5">119.3042dp</dimen>
<dimen name="dp_105">119.8750dp</dimen>
<dimen name="dp_106">121.0167dp</dimen>
<dimen name="dp_107">122.1583dp</dimen>
<dimen name="dp_108">123.3000dp</dimen>
<dimen name="dp_109">124.4417dp</dimen>
<dimen name="dp_110">125.5833dp</dimen>
<dimen name="dp_111">126.7250dp</dimen>
<dimen name="dp_112">127.8667dp</dimen>
<dimen name="dp_113">129.0083dp</dimen>
<dimen name="dp_114">130.1500dp</dimen>
<dimen name="dp_115">131.2917dp</dimen>
<dimen name="dp_116">132.4333dp</dimen>
<dimen name="dp_117">133.5750dp</dimen>
<dimen name="dp_118">134.7167dp</dimen>
<dimen name="dp_119">135.8583dp</dimen>
<dimen name="dp_120">137.0000dp</dimen>
<dimen name="dp_121">138.1417dp</dimen>
<dimen name="dp_122">139.2833dp</dimen>
<dimen name="dp_123">140.4250dp</dimen>
<dimen name="dp_124">141.5667dp</dimen>
<dimen name="dp_125">142.7083dp</dimen>
<dimen name="dp_126">143.8500dp</dimen>
<dimen name="dp_127">144.9917dp</dimen>
<dimen name="dp_128">146.1333dp</dimen>
<dimen name="dp_129">147.2750dp</dimen>
<dimen name="dp_130">148.4167dp</dimen>
<dimen name="dp_131">149.5583dp</dimen>
<dimen name="dp_132">150.7000dp</dimen>
<dimen name="dp_133">151.8417dp</dimen>
<dimen name="dp_134">152.9833dp</dimen>
<dimen name="dp_134_5">153.5542dp</dimen>
<dimen name="dp_135">154.1250dp</dimen>
<dimen name="dp_136">155.2667dp</dimen>
<dimen name="dp_137">156.4083dp</dimen>
<dimen name="dp_138">157.5500dp</dimen>
<dimen name="dp_139">158.6917dp</dimen>
<dimen name="dp_140">159.8333dp</dimen>
<dimen name="dp_141">160.9750dp</dimen>
<dimen name="dp_142">162.1167dp</dimen>
<dimen name="dp_143">163.2583dp</dimen>
<dimen name="dp_144">164.4000dp</dimen>
<dimen name="dp_145">165.5417dp</dimen>
<dimen name="dp_146">166.6833dp</dimen>
<dimen name="dp_147">167.8250dp</dimen>
<dimen name="dp_148">168.9667dp</dimen>
<dimen name="dp_149">170.1083dp</dimen>
<dimen name="dp_150">171.2500dp</dimen>
<dimen name="dp_151">172.3917dp</dimen>
<dimen name="dp_152">173.5333dp</dimen>
<dimen name="dp_153">174.6750dp</dimen>
<dimen name="dp_154">175.8167dp</dimen>
<dimen name="dp_155">176.9583dp</dimen>
<dimen name="dp_156">178.1000dp</dimen>
<dimen name="dp_157">179.2417dp</dimen>
<dimen name="dp_158">180.3833dp</dimen>
<dimen name="dp_159">181.5250dp</dimen>
<dimen name="dp_160">182.6667dp</dimen>
<dimen name="dp_161">183.8083dp</dimen>
<dimen name="dp_162">184.9500dp</dimen>
<dimen name="dp_163">186.0917dp</dimen>
<dimen name="dp_164">187.2333dp</dimen>
<dimen name="dp_165">188.3750dp</dimen>
<dimen name="dp_166">189.5167dp</dimen>
<dimen name="dp_167">190.6583dp</dimen>
<dimen name="dp_168">191.8000dp</dimen>
<dimen name="dp_169">192.9417dp</dimen>
<dimen name="dp_170">194.0833dp</dimen>
<dimen name="dp_171">195.2250dp</dimen>
<dimen name="dp_172">196.3667dp</dimen>
<dimen name="dp_173">197.5083dp</dimen>
<dimen name="dp_174">198.6500dp</dimen>
<dimen name="dp_175">199.7917dp</dimen>
<dimen name="dp_176">200.9333dp</dimen>
<dimen name="dp_177">202.0750dp</dimen>
<dimen name="dp_178">203.2167dp</dimen>
<dimen name="dp_179">204.3583dp</dimen>
<dimen name="dp_180">205.5000dp</dimen>
<dimen name="dp_181">206.6417dp</dimen>
<dimen name="dp_182">207.7833dp</dimen>
<dimen name="dp_183">208.9250dp</dimen>
<dimen name="dp_184">210.0667dp</dimen>
<dimen name="dp_185">211.2083dp</dimen>
<dimen name="dp_186">212.3500dp</dimen>
<dimen name="dp_187">213.4917dp</dimen>
<dimen name="dp_188">214.6333dp</dimen>
<dimen name="dp_189">215.7750dp</dimen>
<dimen name="dp_190">216.9167dp</dimen>
<dimen name="dp_191">218.0583dp</dimen>
<dimen name="dp_191_25">218.3438dp</dimen>
<dimen name="dp_192">219.2000dp</dimen>
<dimen name="dp_193">220.3417dp</dimen>
<dimen name="dp_194">221.4833dp</dimen>
<dimen name="dp_195">222.6250dp</dimen>
<dimen name="dp_196">223.7667dp</dimen>
<dimen name="dp_197">224.9083dp</dimen>
<dimen name="dp_198">226.0500dp</dimen>
<dimen name="dp_199">227.1917dp</dimen>
<dimen name="dp_200">228.3333dp</dimen>
<dimen name="dp_201">229.4750dp</dimen>
<dimen name="dp_202">230.6167dp</dimen>
<dimen name="dp_203">231.7583dp</dimen>
<dimen name="dp_204">232.9000dp</dimen>
<dimen name="dp_205">234.0417dp</dimen>
<dimen name="dp_206">235.1833dp</dimen>
<dimen name="dp_207">236.3250dp</dimen>
<dimen name="dp_208">237.4667dp</dimen>
<dimen name="dp_209">238.6083dp</dimen>
<dimen name="dp_210">239.7500dp</dimen>
<dimen name="dp_211">240.8917dp</dimen>
<dimen name="dp_212">242.0333dp</dimen>
<dimen name="dp_213">243.1750dp</dimen>
<dimen name="dp_214">244.3167dp</dimen>
<dimen name="dp_215">245.4583dp</dimen>
<dimen name="dp_216">246.6000dp</dimen>
<dimen name="dp_217">247.7417dp</dimen>
<dimen name="dp_218">248.8833dp</dimen>
<dimen name="dp_219">250.0250dp</dimen>
<dimen name="dp_220">251.1667dp</dimen>
<dimen name="dp_221">252.3083dp</dimen>
<dimen name="dp_222">253.4500dp</dimen>
<dimen name="dp_223">254.5917dp</dimen>
<dimen name="dp_224">255.7333dp</dimen>
<dimen name="dp_225">256.8750dp</dimen>
<dimen name="dp_226">258.0167dp</dimen>
<dimen name="dp_227">259.1583dp</dimen>
<dimen name="dp_228">260.3000dp</dimen>
<dimen name="dp_229">261.4417dp</dimen>
<dimen name="dp_230">262.5833dp</dimen>
<dimen name="dp_231">263.7250dp</dimen>
<dimen name="dp_232">264.8667dp</dimen>
<dimen name="dp_233">266.0083dp</dimen>
<dimen name="dp_234">267.1500dp</dimen>
<dimen name="dp_235">268.2917dp</dimen>
<dimen name="dp_236">269.4333dp</dimen>
<dimen name="dp_237">270.5750dp</dimen>
<dimen name="dp_238">271.7167dp</dimen>
<dimen name="dp_239">272.8583dp</dimen>
<dimen name="dp_240">274.0000dp</dimen>
<dimen name="dp_241">275.1417dp</dimen>
<dimen name="dp_242">276.2833dp</dimen>
<dimen name="dp_243">277.4250dp</dimen>
<dimen name="dp_244">278.5667dp</dimen>
<dimen name="dp_245">279.7083dp</dimen>
<dimen name="dp_246">280.8500dp</dimen>
<dimen name="dp_247">281.9917dp</dimen>
<dimen name="dp_248">283.1333dp</dimen>
<dimen name="dp_249">284.2750dp</dimen>
<dimen name="dp_250">285.4167dp</dimen>
<dimen name="dp_251">286.5583dp</dimen>
<dimen name="dp_252">287.7000dp</dimen>
<dimen name="dp_253">288.8417dp</dimen>
<dimen name="dp_254">289.9833dp</dimen>
<dimen name="dp_255">291.1250dp</dimen>
<dimen name="dp_256">292.2667dp</dimen>
<dimen name="dp_257">293.4083dp</dimen>
<dimen name="dp_258">294.5500dp</dimen>
<dimen name="dp_259">295.6917dp</dimen>
<dimen name="dp_260">296.8333dp</dimen>
<dimen name="dp_261">297.9750dp</dimen>
<dimen name="dp_262">299.1167dp</dimen>
<dimen name="dp_263">300.2583dp</dimen>
<dimen name="dp_264">301.4000dp</dimen>
<dimen name="dp_265">302.5417dp</dimen>
<dimen name="dp_266">303.6833dp</dimen>
<dimen name="dp_267">304.8250dp</dimen>
<dimen name="dp_268">305.9667dp</dimen>
<dimen name="dp_269">307.1083dp</dimen>
<dimen name="dp_270">308.2500dp</dimen>
<dimen name="dp_271">309.3917dp</dimen>
<dimen name="dp_272">310.5333dp</dimen>
<dimen name="dp_273">311.6750dp</dimen>
<dimen name="dp_274">312.8167dp</dimen>
<dimen name="dp_275">313.9583dp</dimen>
<dimen name="dp_276">315.1000dp</dimen>
<dimen name="dp_277">316.2417dp</dimen>
<dimen name="dp_278">317.3833dp</dimen>
<dimen name="dp_279">318.5250dp</dimen>
<dimen name="dp_280">319.6667dp</dimen>
<dimen name="dp_281">320.8083dp</dimen>
<dimen name="dp_282">321.9500dp</dimen>
<dimen name="dp_283">323.0917dp</dimen>
<dimen name="dp_284">324.2333dp</dimen>
<dimen name="dp_285">325.3750dp</dimen>
<dimen name="dp_286">326.5167dp</dimen>
<dimen name="dp_287">327.6583dp</dimen>
<dimen name="dp_288">328.8000dp</dimen>
<dimen name="dp_289">329.9417dp</dimen>
<dimen name="dp_290">331.0833dp</dimen>
<dimen name="dp_291">332.2250dp</dimen>
<dimen name="dp_292">333.3667dp</dimen>
<dimen name="dp_293">334.5083dp</dimen>
<dimen name="dp_294">335.6500dp</dimen>
<dimen name="dp_295">336.7917dp</dimen>
<dimen name="dp_296">337.9333dp</dimen>
<dimen name="dp_297">339.0750dp</dimen>
<dimen name="dp_298">340.2167dp</dimen>
<dimen name="dp_299">341.3583dp</dimen>
<dimen name="dp_300">342.5000dp</dimen>
<dimen name="dp_301">343.6417dp</dimen>
<dimen name="dp_302">344.7833dp</dimen>
<dimen name="dp_303">345.9250dp</dimen>
<dimen name="dp_304">347.0667dp</dimen>
<dimen name="dp_305">348.2083dp</dimen>
<dimen name="dp_306">349.3500dp</dimen>
<dimen name="dp_307">350.4917dp</dimen>
<dimen name="dp_308">351.6333dp</dimen>
<dimen name="dp_309">352.7750dp</dimen>
<dimen name="dp_310">353.9167dp</dimen>
<dimen name="dp_311">355.0583dp</dimen>
<dimen name="dp_312">356.2000dp</dimen>
<dimen name="dp_313">357.3417dp</dimen>
<dimen name="dp_314">358.4833dp</dimen>
<dimen name="dp_315">359.6250dp</dimen>
<dimen name="dp_316">360.7667dp</dimen>
<dimen name="dp_317">361.9083dp</dimen>
<dimen name="dp_318">363.0500dp</dimen>
<dimen name="dp_319">364.1917dp</dimen>
<dimen name="dp_320">365.3333dp</dimen>
<dimen name="dp_321">366.4750dp</dimen>
<dimen name="dp_322">367.6167dp</dimen>
<dimen name="dp_323">368.7583dp</dimen>
<dimen name="dp_324">369.9000dp</dimen>
<dimen name="dp_325">371.0417dp</dimen>
<dimen name="dp_326">372.1833dp</dimen>
<dimen name="dp_327">373.3250dp</dimen>
<dimen name="dp_328">374.4667dp</dimen>
<dimen name="dp_329">375.6083dp</dimen>
<dimen name="dp_330">376.7500dp</dimen>
<dimen name="dp_331">377.8917dp</dimen>
<dimen name="dp_332">379.0333dp</dimen>
<dimen name="dp_333">380.1750dp</dimen>
<dimen name="dp_334">381.3167dp</dimen>
<dimen name="dp_335">382.4583dp</dimen>
<dimen name="dp_336">383.6000dp</dimen>
<dimen name="dp_337">384.7417dp</dimen>
<dimen name="dp_338">385.8833dp</dimen>
<dimen name="dp_339">387.0250dp</dimen>
<dimen name="dp_340">388.1667dp</dimen>
<dimen name="dp_341">389.3083dp</dimen>
<dimen name="dp_342">390.4500dp</dimen>
<dimen name="dp_343">391.5917dp</dimen>
<dimen name="dp_344">392.7333dp</dimen>
<dimen name="dp_345">393.8750dp</dimen>
<dimen name="dp_346">395.0167dp</dimen>
<dimen name="dp_347">396.1583dp</dimen>
<dimen name="dp_348">397.3000dp</dimen>
<dimen name="dp_349">398.4417dp</dimen>
<dimen name="dp_350">399.5833dp</dimen>
<dimen name="dp_351">400.7250dp</dimen>
<dimen name="dp_352">401.8667dp</dimen>
<dimen name="dp_353">403.0083dp</dimen>
<dimen name="dp_354">404.1500dp</dimen>
<dimen name="dp_355">405.2917dp</dimen>
<dimen name="dp_356">406.4333dp</dimen>
<dimen name="dp_357">407.5750dp</dimen>
<dimen name="dp_358">408.7167dp</dimen>
<dimen name="dp_359">409.8583dp</dimen>
<dimen name="dp_360">411.0000dp</dimen>
<dimen name="dp_365">416.7083dp</dimen>
<dimen name="dp_370">422.4167dp</dimen>
<dimen name="dp_400">456.6667dp</dimen>
<dimen name="dp_410">468.0833dp</dimen>
<dimen name="dp_422">481.7833dp</dimen>
<dimen name="dp_472">538.8667dp</dimen>
<dimen name="dp_500">570.8333dp</dimen>
<dimen name="dp_600">685.0000dp</dimen>
<dimen name="dp_640">730.6667dp</dimen>
<dimen name="dp_720">822.0000dp</dimen>
<dimen name="sp_6">6.8500sp</dimen>
<dimen name="sp_7">7.9917sp</dimen>
<dimen name="sp_8">9.1333sp</dimen>
<dimen name="sp_9">10.2750sp</dimen>
<dimen name="sp_10">11.4167sp</dimen>
<dimen name="sp_11">12.5583sp</dimen>
<dimen name="sp_12">13.7000sp</dimen>
<dimen name="sp_13">14.8417sp</dimen>
<dimen name="sp_14">15.9833sp</dimen>
<dimen name="sp_15">17.1250sp</dimen>
<dimen name="sp_16">18.2667sp</dimen>
<dimen name="sp_17">19.4083sp</dimen>
<dimen name="sp_18">20.5500sp</dimen>
<dimen name="sp_19">21.6917sp</dimen>
<dimen name="sp_20">22.8333sp</dimen>
<dimen name="sp_21">23.9750sp</dimen>
<dimen name="sp_22">25.1167sp</dimen>
<dimen name="sp_23">26.2583sp</dimen>
<dimen name="sp_24">27.4000sp</dimen>
<dimen name="sp_25">28.5417sp</dimen>
<dimen name="sp_28">31.9667sp</dimen>
<dimen name="sp_30">34.2500sp</dimen>
<dimen name="sp_32">36.5333sp</dimen>
<dimen name="sp_34">38.8167sp</dimen>
<dimen name="sp_36">41.1000sp</dimen>
<dimen name="sp_38">43.3833sp</dimen>
<dimen name="sp_40">45.6667sp</dimen>
<dimen name="sp_42">47.9500sp</dimen>
<dimen name="sp_48">54.8000sp</dimen>
</resources>
<?xml version="1.0" encoding="UTF-8"?>
<resources>
<dimen name="activity_horizontal_margin">19.2000dp</dimen>
<dimen name="activity_vertical_margin">19.2000dp</dimen>
<dimen name="title_bar_head">60.0000dp</dimen>
<dimen name="card_common_margin_left">@dimen/dp_15</dimen>
<dimen name="dp_m_60">-72.0000dp</dimen>
<dimen name="dp_m_30">-36.0000dp</dimen>
<dimen name="dp_m_20">-24.0000dp</dimen>
<dimen name="dp_m_12">-14.4000dp</dimen>
<dimen name="dp_m_10">-12.0000dp</dimen>
<dimen name="dp_m_8">-9.6000dp</dimen>
<dimen name="dp_m_5">-6.0000dp</dimen>
<dimen name="dp_m_2">-2.4000dp</dimen>
<dimen name="dp_m_1">-1.2000dp</dimen>
<dimen name="dp_0">0.0000dp</dimen>
<dimen name="dp_0_1">0.1200dp</dimen>
<dimen name="dp_0_5">0.6000dp</dimen>
<dimen name="dp_1">1.2000dp</dimen>
<dimen name="dp_1_5">1.8000dp</dimen>
<dimen name="dp_2">2.4000dp</dimen>
<dimen name="dp_2_5">3.0000dp</dimen>
<dimen name="dp_3">3.6000dp</dimen>
<dimen name="dp_3_5">4.2000dp</dimen>
<dimen name="dp_4">4.8000dp</dimen>
<dimen name="dp_4_5">5.4000dp</dimen>
<dimen name="dp_5">6.0000dp</dimen>
<dimen name="dp_6">7.2000dp</dimen>
<dimen name="dp_7">8.4000dp</dimen>
<dimen name="dp_7_5">9.0000dp</dimen>
<dimen name="dp_8">9.6000dp</dimen>
<dimen name="dp_9">10.8000dp</dimen>
<dimen name="dp_10">12.0000dp</dimen>
<dimen name="dp_11">13.2000dp</dimen>
<dimen name="dp_12">14.4000dp</dimen>
<dimen name="dp_13">15.6000dp</dimen>
<dimen name="dp_14">16.8000dp</dimen>
<dimen name="dp_15">18.0000dp</dimen>
<dimen name="dp_16">19.2000dp</dimen>
<dimen name="dp_17">20.4000dp</dimen>
<dimen name="dp_18">21.6000dp</dimen>
<dimen name="dp_19">22.8000dp</dimen>
<dimen name="dp_20">24.0000dp</dimen>
<dimen name="dp_21">25.2000dp</dimen>
<dimen name="dp_22">26.4000dp</dimen>
<dimen name="dp_23">27.6000dp</dimen>
<dimen name="dp_24">28.8000dp</dimen>
<dimen name="dp_25">30.0000dp</dimen>
<dimen name="dp_26">31.2000dp</dimen>
<dimen name="dp_27">32.4000dp</dimen>
<dimen name="dp_28">33.6000dp</dimen>
<dimen name="dp_29">34.8000dp</dimen>
<dimen name="dp_30">36.0000dp</dimen>
<dimen name="dp_31">37.2000dp</dimen>
<dimen name="dp_32">38.4000dp</dimen>
<dimen name="dp_33">39.6000dp</dimen>
<dimen name="dp_34">40.8000dp</dimen>
<dimen name="dp_35">42.0000dp</dimen>
<dimen name="dp_36">43.2000dp</dimen>
<dimen name="dp_37">44.4000dp</dimen>
<dimen name="dp_38">45.6000dp</dimen>
<dimen name="dp_39">46.8000dp</dimen>
<dimen name="dp_40">48.0000dp</dimen>
<dimen name="dp_41">49.2000dp</dimen>
<dimen name="dp_42">50.4000dp</dimen>
<dimen name="dp_43">51.6000dp</dimen>
<dimen name="dp_44">52.8000dp</dimen>
<dimen name="dp_45">54.0000dp</dimen>
<dimen name="dp_46">55.2000dp</dimen>
<dimen name="dp_47">56.4000dp</dimen>
<dimen name="dp_48">57.6000dp</dimen>
<dimen name="dp_49">58.8000dp</dimen>
<dimen name="dp_50">60.0000dp</dimen>
<dimen name="dp_51">61.2000dp</dimen>
<dimen name="dp_52">62.4000dp</dimen>
<dimen name="dp_53">63.6000dp</dimen>
<dimen name="dp_54">64.8000dp</dimen>
<dimen name="dp_55">66.0000dp</dimen>
<dimen name="dp_56">67.2000dp</dimen>
<dimen name="dp_57">68.4000dp</dimen>
<dimen name="dp_58">69.6000dp</dimen>
<dimen name="dp_59">70.8000dp</dimen>
<dimen name="dp_60">72.0000dp</dimen>
<dimen name="dp_61">73.2000dp</dimen>
<dimen name="dp_62">74.4000dp</dimen>
<dimen name="dp_63">75.6000dp</dimen>
<dimen name="dp_64">76.8000dp</dimen>
<dimen name="dp_65">78.0000dp</dimen>
<dimen name="dp_66">79.2000dp</dimen>
<dimen name="dp_67">80.4000dp</dimen>
<dimen name="dp_68">81.6000dp</dimen>
<dimen name="dp_69">82.8000dp</dimen>
<dimen name="dp_70">84.0000dp</dimen>
<dimen name="dp_71">85.2000dp</dimen>
<dimen name="dp_72">86.4000dp</dimen>
<dimen name="dp_73">87.6000dp</dimen>
<dimen name="dp_74">88.8000dp</dimen>
<dimen name="dp_75">90.0000dp</dimen>
<dimen name="dp_76">91.2000dp</dimen>
<dimen name="dp_77">92.4000dp</dimen>
<dimen name="dp_78">93.6000dp</dimen>
<dimen name="dp_79">94.8000dp</dimen>
<dimen name="dp_80">96.0000dp</dimen>
<dimen name="dp_81">97.2000dp</dimen>
<dimen name="dp_82">98.4000dp</dimen>
<dimen name="dp_83">99.6000dp</dimen>
<dimen name="dp_84">100.8000dp</dimen>
<dimen name="dp_85">102.0000dp</dimen>
<dimen name="dp_86">103.2000dp</dimen>
<dimen name="dp_87">104.4000dp</dimen>
<dimen name="dp_88">105.6000dp</dimen>
<dimen name="dp_89">106.8000dp</dimen>
<dimen name="dp_90">108.0000dp</dimen>
<dimen name="dp_91">109.2000dp</dimen>
<dimen name="dp_92">110.4000dp</dimen>
<dimen name="dp_93">111.6000dp</dimen>
<dimen name="dp_94">112.8000dp</dimen>
<dimen name="dp_95">114.0000dp</dimen>
<dimen name="dp_96">115.2000dp</dimen>
<dimen name="dp_97">116.4000dp</dimen>
<dimen name="dp_98">117.6000dp</dimen>
<dimen name="dp_99">118.8000dp</dimen>
<dimen name="dp_100">120.0000dp</dimen>
<dimen name="dp_101">121.2000dp</dimen>
<dimen name="dp_102">122.4000dp</dimen>
<dimen name="dp_103">123.6000dp</dimen>
<dimen name="dp_104">124.8000dp</dimen>
<dimen name="dp_104_5">125.4000dp</dimen>
<dimen name="dp_105">126.0000dp</dimen>
<dimen name="dp_106">127.2000dp</dimen>
<dimen name="dp_107">128.4000dp</dimen>
<dimen name="dp_108">129.6000dp</dimen>
<dimen name="dp_109">130.8000dp</dimen>
<dimen name="dp_110">132.0000dp</dimen>
<dimen name="dp_111">133.2000dp</dimen>
<dimen name="dp_112">134.4000dp</dimen>
<dimen name="dp_113">135.6000dp</dimen>
<dimen name="dp_114">136.8000dp</dimen>
<dimen name="dp_115">138.0000dp</dimen>
<dimen name="dp_116">139.2000dp</dimen>
<dimen name="dp_117">140.4000dp</dimen>
<dimen name="dp_118">141.6000dp</dimen>
<dimen name="dp_119">142.8000dp</dimen>
<dimen name="dp_120">144.0000dp</dimen>
<dimen name="dp_121">145.2000dp</dimen>
<dimen name="dp_122">146.4000dp</dimen>
<dimen name="dp_123">147.6000dp</dimen>
<dimen name="dp_124">148.8000dp</dimen>
<dimen name="dp_125">150.0000dp</dimen>
<dimen name="dp_126">151.2000dp</dimen>
<dimen name="dp_127">152.4000dp</dimen>
<dimen name="dp_128">153.6000dp</dimen>
<dimen name="dp_129">154.8000dp</dimen>
<dimen name="dp_130">156.0000dp</dimen>
<dimen name="dp_131">157.2000dp</dimen>
<dimen name="dp_132">158.4000dp</dimen>
<dimen name="dp_133">159.6000dp</dimen>
<dimen name="dp_134">160.8000dp</dimen>
<dimen name="dp_134_5">161.4000dp</dimen>
<dimen name="dp_135">162.0000dp</dimen>
<dimen name="dp_136">163.2000dp</dimen>
<dimen name="dp_137">164.4000dp</dimen>
<dimen name="dp_138">165.6000dp</dimen>
<dimen name="dp_139">166.8000dp</dimen>
<dimen name="dp_140">168.0000dp</dimen>
<dimen name="dp_141">169.2000dp</dimen>
<dimen name="dp_142">170.4000dp</dimen>
<dimen name="dp_143">171.6000dp</dimen>
<dimen name="dp_144">172.8000dp</dimen>
<dimen name="dp_145">174.0000dp</dimen>
<dimen name="dp_146">175.2000dp</dimen>
<dimen name="dp_147">176.4000dp</dimen>
<dimen name="dp_148">177.6000dp</dimen>
<dimen name="dp_149">178.8000dp</dimen>
<dimen name="dp_150">180.0000dp</dimen>
<dimen name="dp_151">181.2000dp</dimen>
<dimen name="dp_152">182.4000dp</dimen>
<dimen name="dp_153">183.6000dp</dimen>
<dimen name="dp_154">184.8000dp</dimen>
<dimen name="dp_155">186.0000dp</dimen>
<dimen name="dp_156">187.2000dp</dimen>
<dimen name="dp_157">188.4000dp</dimen>
<dimen name="dp_158">189.6000dp</dimen>
<dimen name="dp_159">190.8000dp</dimen>
<dimen name="dp_160">192.0000dp</dimen>
<dimen name="dp_161">193.2000dp</dimen>
<dimen name="dp_162">194.4000dp</dimen>
<dimen name="dp_163">195.6000dp</dimen>
<dimen name="dp_164">196.8000dp</dimen>
<dimen name="dp_165">198.0000dp</dimen>
<dimen name="dp_166">199.2000dp</dimen>
<dimen name="dp_167">200.4000dp</dimen>
<dimen name="dp_168">201.6000dp</dimen>
<dimen name="dp_169">202.8000dp</dimen>
<dimen name="dp_170">204.0000dp</dimen>
<dimen name="dp_171">205.2000dp</dimen>
<dimen name="dp_172">206.4000dp</dimen>
<dimen name="dp_173">207.6000dp</dimen>
<dimen name="dp_174">208.8000dp</dimen>
<dimen name="dp_175">210.0000dp</dimen>
<dimen name="dp_176">211.2000dp</dimen>
<dimen name="dp_177">212.4000dp</dimen>
<dimen name="dp_178">213.6000dp</dimen>
<dimen name="dp_179">214.8000dp</dimen>
<dimen name="dp_180">216.0000dp</dimen>
<dimen name="dp_181">217.2000dp</dimen>
<dimen name="dp_182">218.4000dp</dimen>
<dimen name="dp_183">219.6000dp</dimen>
<dimen name="dp_184">220.8000dp</dimen>
<dimen name="dp_185">222.0000dp</dimen>
<dimen name="dp_186">223.2000dp</dimen>
<dimen name="dp_187">224.4000dp</dimen>
<dimen name="dp_188">225.6000dp</dimen>
<dimen name="dp_189">226.8000dp</dimen>
<dimen name="dp_190">228.0000dp</dimen>
<dimen name="dp_191">229.2000dp</dimen>
<dimen name="dp_191_25">229.5000dp</dimen>
<dimen name="dp_192">230.4000dp</dimen>
<dimen name="dp_193">231.6000dp</dimen>
<dimen name="dp_194">232.8000dp</dimen>
<dimen name="dp_195">234.0000dp</dimen>
<dimen name="dp_196">235.2000dp</dimen>
<dimen name="dp_197">236.4000dp</dimen>
<dimen name="dp_198">237.6000dp</dimen>
<dimen name="dp_199">238.8000dp</dimen>
<dimen name="dp_200">240.0000dp</dimen>
<dimen name="dp_201">241.2000dp</dimen>
<dimen name="dp_202">242.4000dp</dimen>
<dimen name="dp_203">243.6000dp</dimen>
<dimen name="dp_204">244.8000dp</dimen>
<dimen name="dp_205">246.0000dp</dimen>
<dimen name="dp_206">247.2000dp</dimen>
<dimen name="dp_207">248.4000dp</dimen>
<dimen name="dp_208">249.6000dp</dimen>
<dimen name="dp_209">250.8000dp</dimen>
<dimen name="dp_210">252.0000dp</dimen>
<dimen name="dp_211">253.2000dp</dimen>
<dimen name="dp_212">254.4000dp</dimen>
<dimen name="dp_213">255.6000dp</dimen>
<dimen name="dp_214">256.8000dp</dimen>
<dimen name="dp_215">258.0000dp</dimen>
<dimen name="dp_216">259.2000dp</dimen>
<dimen name="dp_217">260.4000dp</dimen>
<dimen name="dp_218">261.6000dp</dimen>
<dimen name="dp_219">262.8000dp</dimen>
<dimen name="dp_220">264.0000dp</dimen>
<dimen name="dp_221">265.2000dp</dimen>
<dimen name="dp_222">266.4000dp</dimen>
<dimen name="dp_223">267.6000dp</dimen>
<dimen name="dp_224">268.8000dp</dimen>
<dimen name="dp_225">270.0000dp</dimen>
<dimen name="dp_226">271.2000dp</dimen>
<dimen name="dp_227">272.4000dp</dimen>
<dimen name="dp_228">273.6000dp</dimen>
<dimen name="dp_229">274.8000dp</dimen>
<dimen name="dp_230">276.0000dp</dimen>
<dimen name="dp_231">277.2000dp</dimen>
<dimen name="dp_232">278.4000dp</dimen>
<dimen name="dp_233">279.6000dp</dimen>
<dimen name="dp_234">280.8000dp</dimen>
<dimen name="dp_235">282.0000dp</dimen>
<dimen name="dp_236">283.2000dp</dimen>
<dimen name="dp_237">284.4000dp</dimen>
<dimen name="dp_238">285.6000dp</dimen>
<dimen name="dp_239">286.8000dp</dimen>
<dimen name="dp_240">288.0000dp</dimen>
<dimen name="dp_241">289.2000dp</dimen>
<dimen name="dp_242">290.4000dp</dimen>
<dimen name="dp_243">291.6000dp</dimen>
<dimen name="dp_244">292.8000dp</dimen>
<dimen name="dp_245">294.0000dp</dimen>
<dimen name="dp_246">295.2000dp</dimen>
<dimen name="dp_247">296.4000dp</dimen>
<dimen name="dp_248">297.6000dp</dimen>
<dimen name="dp_249">298.8000dp</dimen>
<dimen name="dp_250">300.0000dp</dimen>
<dimen name="dp_251">301.2000dp</dimen>
<dimen name="dp_252">302.4000dp</dimen>
<dimen name="dp_253">303.6000dp</dimen>
<dimen name="dp_254">304.8000dp</dimen>
<dimen name="dp_255">306.0000dp</dimen>
<dimen name="dp_256">307.2000dp</dimen>
<dimen name="dp_257">308.4000dp</dimen>
<dimen name="dp_258">309.6000dp</dimen>
<dimen name="dp_259">310.8000dp</dimen>
<dimen name="dp_260">312.0000dp</dimen>
<dimen name="dp_261">313.2000dp</dimen>
<dimen name="dp_262">314.4000dp</dimen>
<dimen name="dp_263">315.6000dp</dimen>
<dimen name="dp_264">316.8000dp</dimen>
<dimen name="dp_265">318.0000dp</dimen>
<dimen name="dp_266">319.2000dp</dimen>
<dimen name="dp_267">320.4000dp</dimen>
<dimen name="dp_268">321.6000dp</dimen>
<dimen name="dp_269">322.8000dp</dimen>
<dimen name="dp_270">324.0000dp</dimen>
<dimen name="dp_271">325.2000dp</dimen>
<dimen name="dp_272">326.4000dp</dimen>
<dimen name="dp_273">327.6000dp</dimen>
<dimen name="dp_274">328.8000dp</dimen>
<dimen name="dp_275">330.0000dp</dimen>
<dimen name="dp_276">331.2000dp</dimen>
<dimen name="dp_277">332.4000dp</dimen>
<dimen name="dp_278">333.6000dp</dimen>
<dimen name="dp_279">334.8000dp</dimen>
<dimen name="dp_280">336.0000dp</dimen>
<dimen name="dp_281">337.2000dp</dimen>
<dimen name="dp_282">338.4000dp</dimen>
<dimen name="dp_283">339.6000dp</dimen>
<dimen name="dp_284">340.8000dp</dimen>
<dimen name="dp_285">342.0000dp</dimen>
<dimen name="dp_286">343.2000dp</dimen>
<dimen name="dp_287">344.4000dp</dimen>
<dimen name="dp_288">345.6000dp</dimen>
<dimen name="dp_289">346.8000dp</dimen>
<dimen name="dp_290">348.0000dp</dimen>
<dimen name="dp_291">349.2000dp</dimen>
<dimen name="dp_292">350.4000dp</dimen>
<dimen name="dp_293">351.6000dp</dimen>
<dimen name="dp_294">352.8000dp</dimen>
<dimen name="dp_295">354.0000dp</dimen>
<dimen name="dp_296">355.2000dp</dimen>
<dimen name="dp_297">356.4000dp</dimen>
<dimen name="dp_298">357.6000dp</dimen>
<dimen name="dp_299">358.8000dp</dimen>
<dimen name="dp_300">360.0000dp</dimen>
<dimen name="dp_301">361.2000dp</dimen>
<dimen name="dp_302">362.4000dp</dimen>
<dimen name="dp_303">363.6000dp</dimen>
<dimen name="dp_304">364.8000dp</dimen>
<dimen name="dp_305">366.0000dp</dimen>
<dimen name="dp_306">367.2000dp</dimen>
<dimen name="dp_307">368.4000dp</dimen>
<dimen name="dp_308">369.6000dp</dimen>
<dimen name="dp_309">370.8000dp</dimen>
<dimen name="dp_310">372.0000dp</dimen>
<dimen name="dp_311">373.2000dp</dimen>
<dimen name="dp_312">374.4000dp</dimen>
<dimen name="dp_313">375.6000dp</dimen>
<dimen name="dp_314">376.8000dp</dimen>
<dimen name="dp_315">378.0000dp</dimen>
<dimen name="dp_316">379.2000dp</dimen>
<dimen name="dp_317">380.4000dp</dimen>
<dimen name="dp_318">381.6000dp</dimen>
<dimen name="dp_319">382.8000dp</dimen>
<dimen name="dp_320">384.0000dp</dimen>
<dimen name="dp_321">385.2000dp</dimen>
<dimen name="dp_322">386.4000dp</dimen>
<dimen name="dp_323">387.6000dp</dimen>
<dimen name="dp_324">388.8000dp</dimen>
<dimen name="dp_325">390.0000dp</dimen>
<dimen name="dp_326">391.2000dp</dimen>
<dimen name="dp_327">392.4000dp</dimen>
<dimen name="dp_328">393.6000dp</dimen>
<dimen name="dp_329">394.8000dp</dimen>
<dimen name="dp_330">396.0000dp</dimen>
<dimen name="dp_331">397.2000dp</dimen>
<dimen name="dp_332">398.4000dp</dimen>
<dimen name="dp_333">399.6000dp</dimen>
<dimen name="dp_334">400.8000dp</dimen>
<dimen name="dp_335">402.0000dp</dimen>
<dimen name="dp_336">403.2000dp</dimen>
<dimen name="dp_337">404.4000dp</dimen>
<dimen name="dp_338">405.6000dp</dimen>
<dimen name="dp_339">406.8000dp</dimen>
<dimen name="dp_340">408.0000dp</dimen>
<dimen name="dp_341">409.2000dp</dimen>
<dimen name="dp_342">410.4000dp</dimen>
<dimen name="dp_343">411.6000dp</dimen>
<dimen name="dp_344">412.8000dp</dimen>
<dimen name="dp_345">414.0000dp</dimen>
<dimen name="dp_346">415.2000dp</dimen>
<dimen name="dp_347">416.4000dp</dimen>
<dimen name="dp_348">417.6000dp</dimen>
<dimen name="dp_349">418.8000dp</dimen>
<dimen name="dp_350">420.0000dp</dimen>
<dimen name="dp_351">421.2000dp</dimen>
<dimen name="dp_352">422.4000dp</dimen>
<dimen name="dp_353">423.6000dp</dimen>
<dimen name="dp_354">424.8000dp</dimen>
<dimen name="dp_355">426.0000dp</dimen>
<dimen name="dp_356">427.2000dp</dimen>
<dimen name="dp_357">428.4000dp</dimen>
<dimen name="dp_358">429.6000dp</dimen>
<dimen name="dp_359">430.8000dp</dimen>
<dimen name="dp_360">432.0000dp</dimen>
<dimen name="dp_365">438.0000dp</dimen>
<dimen name="dp_370">444.0000dp</dimen>
<dimen name="dp_400">480.0000dp</dimen>
<dimen name="dp_410">492.0000dp</dimen>
<dimen name="dp_422">506.4000dp</dimen>
<dimen name="dp_472">566.4000dp</dimen>
<dimen name="dp_500">600.0000dp</dimen>
<dimen name="dp_600">720.0000dp</dimen>
<dimen name="dp_640">768.0000dp</dimen>
<dimen name="dp_720">864.0000dp</dimen>
<dimen name="sp_6">7.2000sp</dimen>
<dimen name="sp_7">8.4000sp</dimen>
<dimen name="sp_8">9.6000sp</dimen>
<dimen name="sp_9">10.8000sp</dimen>
<dimen name="sp_10">12.0000sp</dimen>
<dimen name="sp_11">13.2000sp</dimen>
<dimen name="sp_12">14.4000sp</dimen>
<dimen name="sp_13">15.6000sp</dimen>
<dimen name="sp_14">16.8000sp</dimen>
<dimen name="sp_15">18.0000sp</dimen>
<dimen name="sp_16">19.2000sp</dimen>
<dimen name="sp_17">20.4000sp</dimen>
<dimen name="sp_18">21.6000sp</dimen>
<dimen name="sp_19">22.8000sp</dimen>
<dimen name="sp_20">24.0000sp</dimen>
<dimen name="sp_21">25.2000sp</dimen>
<dimen name="sp_22">26.4000sp</dimen>
<dimen name="sp_23">27.6000sp</dimen>
<dimen name="sp_24">28.8000sp</dimen>
<dimen name="sp_25">30.0000sp</dimen>
<dimen name="sp_28">33.6000sp</dimen>
<dimen name="sp_30">36.0000sp</dimen>
<dimen name="sp_32">38.4000sp</dimen>
<dimen name="sp_34">40.8000sp</dimen>
<dimen name="sp_36">43.2000sp</dimen>
<dimen name="sp_38">45.6000sp</dimen>
<dimen name="sp_40">48.0000sp</dimen>
<dimen name="sp_42">50.4000sp</dimen>
<dimen name="sp_48">57.6000sp</dimen>
</resources>
<?xml version="1.0" encoding="UTF-8"?>
<resources>
<dimen name="activity_horizontal_margin">21.3333dp</dimen>
<dimen name="activity_vertical_margin">21.3333dp</dimen>
<dimen name="title_bar_head">66.6667dp</dimen>
<dimen name="card_common_margin_left">@dimen/dp_15</dimen>
<dimen name="dp_m_60">-80.0000dp</dimen>
<dimen name="dp_m_30">-40.0000dp</dimen>
<dimen name="dp_m_20">-26.6667dp</dimen>
<dimen name="dp_m_12">-16.0000dp</dimen>
<dimen name="dp_m_10">-13.3333dp</dimen>
<dimen name="dp_m_8">-10.6667dp</dimen>
<dimen name="dp_m_5">-6.6667dp</dimen>
<dimen name="dp_m_2">-2.6667dp</dimen>
<dimen name="dp_m_1">-1.3333dp</dimen>
<dimen name="dp_0">0.0000dp</dimen>
<dimen name="dp_0_1">0.1333dp</dimen>
<dimen name="dp_0_5">0.6667dp</dimen>
<dimen name="dp_1">1.3333dp</dimen>
<dimen name="dp_1_5">2.0000dp</dimen>
<dimen name="dp_2">2.6667dp</dimen>
<dimen name="dp_2_5">3.3333dp</dimen>
<dimen name="dp_3">4.0000dp</dimen>
<dimen name="dp_3_5">4.6667dp</dimen>
<dimen name="dp_4">5.3333dp</dimen>
<dimen name="dp_4_5">6.0000dp</dimen>
<dimen name="dp_5">6.6667dp</dimen>
<dimen name="dp_6">8.0000dp</dimen>
<dimen name="dp_7">9.3333dp</dimen>
<dimen name="dp_7_5">10.0000dp</dimen>
<dimen name="dp_8">10.6667dp</dimen>
<dimen name="dp_9">12.0000dp</dimen>
<dimen name="dp_10">13.3333dp</dimen>
<dimen name="dp_11">14.6667dp</dimen>
<dimen name="dp_12">16.0000dp</dimen>
<dimen name="dp_13">17.3333dp</dimen>
<dimen name="dp_14">18.6667dp</dimen>
<dimen name="dp_15">20.0000dp</dimen>
<dimen name="dp_16">21.3333dp</dimen>
<dimen name="dp_17">22.6667dp</dimen>
<dimen name="dp_18">24.0000dp</dimen>
<dimen name="dp_19">25.3333dp</dimen>
<dimen name="dp_20">26.6667dp</dimen>
<dimen name="dp_21">28.0000dp</dimen>
<dimen name="dp_22">29.3333dp</dimen>
<dimen name="dp_23">30.6667dp</dimen>
<dimen name="dp_24">32.0000dp</dimen>
<dimen name="dp_25">33.3333dp</dimen>
<dimen name="dp_26">34.6667dp</dimen>
<dimen name="dp_27">36.0000dp</dimen>
<dimen name="dp_28">37.3333dp</dimen>
<dimen name="dp_29">38.6667dp</dimen>
<dimen name="dp_30">40.0000dp</dimen>
<dimen name="dp_31">41.3333dp</dimen>
<dimen name="dp_32">42.6667dp</dimen>
<dimen name="dp_33">44.0000dp</dimen>
<dimen name="dp_34">45.3333dp</dimen>
<dimen name="dp_35">46.6667dp</dimen>
<dimen name="dp_36">48.0000dp</dimen>
<dimen name="dp_37">49.3333dp</dimen>
<dimen name="dp_38">50.6667dp</dimen>
<dimen name="dp_39">52.0000dp</dimen>
<dimen name="dp_40">53.3333dp</dimen>
<dimen name="dp_41">54.6667dp</dimen>
<dimen name="dp_42">56.0000dp</dimen>
<dimen name="dp_43">57.3333dp</dimen>
<dimen name="dp_44">58.6667dp</dimen>
<dimen name="dp_45">60.0000dp</dimen>
<dimen name="dp_46">61.3333dp</dimen>
<dimen name="dp_47">62.6667dp</dimen>
<dimen name="dp_48">64.0000dp</dimen>
<dimen name="dp_49">65.3333dp</dimen>
<dimen name="dp_50">66.6667dp</dimen>
<dimen name="dp_51">68.0000dp</dimen>
<dimen name="dp_52">69.3333dp</dimen>
<dimen name="dp_53">70.6667dp</dimen>
<dimen name="dp_54">72.0000dp</dimen>
<dimen name="dp_55">73.3333dp</dimen>
<dimen name="dp_56">74.6667dp</dimen>
<dimen name="dp_57">76.0000dp</dimen>
<dimen name="dp_58">77.3333dp</dimen>
<dimen name="dp_59">78.6667dp</dimen>
<dimen name="dp_60">80.0000dp</dimen>
<dimen name="dp_61">81.3333dp</dimen>
<dimen name="dp_62">82.6667dp</dimen>
<dimen name="dp_63">84.0000dp</dimen>
<dimen name="dp_64">85.3333dp</dimen>
<dimen name="dp_65">86.6667dp</dimen>
<dimen name="dp_66">88.0000dp</dimen>
<dimen name="dp_67">89.3333dp</dimen>
<dimen name="dp_68">90.6667dp</dimen>
<dimen name="dp_69">92.0000dp</dimen>
<dimen name="dp_70">93.3333dp</dimen>
<dimen name="dp_71">94.6667dp</dimen>
<dimen name="dp_72">96.0000dp</dimen>
<dimen name="dp_73">97.3333dp</dimen>
<dimen name="dp_74">98.6667dp</dimen>
<dimen name="dp_75">100.0000dp</dimen>
<dimen name="dp_76">101.3333dp</dimen>
<dimen name="dp_77">102.6667dp</dimen>
<dimen name="dp_78">104.0000dp</dimen>
<dimen name="dp_79">105.3333dp</dimen>
<dimen name="dp_80">106.6667dp</dimen>
<dimen name="dp_81">108.0000dp</dimen>
<dimen name="dp_82">109.3333dp</dimen>
<dimen name="dp_83">110.6667dp</dimen>
<dimen name="dp_84">112.0000dp</dimen>
<dimen name="dp_85">113.3333dp</dimen>
<dimen name="dp_86">114.6667dp</dimen>
<dimen name="dp_87">116.0000dp</dimen>
<dimen name="dp_88">117.3333dp</dimen>
<dimen name="dp_89">118.6667dp</dimen>
<dimen name="dp_90">120.0000dp</dimen>
<dimen name="dp_91">121.3333dp</dimen>
<dimen name="dp_92">122.6667dp</dimen>
<dimen name="dp_93">124.0000dp</dimen>
<dimen name="dp_94">125.3333dp</dimen>
<dimen name="dp_95">126.6667dp</dimen>
<dimen name="dp_96">128.0000dp</dimen>
<dimen name="dp_97">129.3333dp</dimen>
<dimen name="dp_98">130.6667dp</dimen>
<dimen name="dp_99">132.0000dp</dimen>
<dimen name="dp_100">133.3333dp</dimen>
<dimen name="dp_101">134.6667dp</dimen>
<dimen name="dp_102">136.0000dp</dimen>
<dimen name="dp_103">137.3333dp</dimen>
<dimen name="dp_104">138.6667dp</dimen>
<dimen name="dp_104_5">139.3333dp</dimen>
<dimen name="dp_105">140.0000dp</dimen>
<dimen name="dp_106">141.3333dp</dimen>
<dimen name="dp_107">142.6667dp</dimen>
<dimen name="dp_108">144.0000dp</dimen>
<dimen name="dp_109">145.3333dp</dimen>
<dimen name="dp_110">146.6667dp</dimen>
<dimen name="dp_111">148.0000dp</dimen>
<dimen name="dp_112">149.3333dp</dimen>
<dimen name="dp_113">150.6667dp</dimen>
<dimen name="dp_114">152.0000dp</dimen>
<dimen name="dp_115">153.3333dp</dimen>
<dimen name="dp_116">154.6667dp</dimen>
<dimen name="dp_117">156.0000dp</dimen>
<dimen name="dp_118">157.3333dp</dimen>
<dimen name="dp_119">158.6667dp</dimen>
<dimen name="dp_120">160.0000dp</dimen>
<dimen name="dp_121">161.3333dp</dimen>
<dimen name="dp_122">162.6667dp</dimen>
<dimen name="dp_123">164.0000dp</dimen>
<dimen name="dp_124">165.3333dp</dimen>
<dimen name="dp_125">166.6667dp</dimen>
<dimen name="dp_126">168.0000dp</dimen>
<dimen name="dp_127">169.3333dp</dimen>
<dimen name="dp_128">170.6667dp</dimen>
<dimen name="dp_129">172.0000dp</dimen>
<dimen name="dp_130">173.3333dp</dimen>
<dimen name="dp_131">174.6667dp</dimen>
<dimen name="dp_132">176.0000dp</dimen>
<dimen name="dp_133">177.3333dp</dimen>
<dimen name="dp_134">178.6667dp</dimen>
<dimen name="dp_134_5">179.3333dp</dimen>
<dimen name="dp_135">180.0000dp</dimen>
<dimen name="dp_136">181.3333dp</dimen>
<dimen name="dp_137">182.6667dp</dimen>
<dimen name="dp_138">184.0000dp</dimen>
<dimen name="dp_139">185.3333dp</dimen>
<dimen name="dp_140">186.6667dp</dimen>
<dimen name="dp_141">188.0000dp</dimen>
<dimen name="dp_142">189.3333dp</dimen>
<dimen name="dp_143">190.6667dp</dimen>
<dimen name="dp_144">192.0000dp</dimen>
<dimen name="dp_145">193.3333dp</dimen>
<dimen name="dp_146">194.6667dp</dimen>
<dimen name="dp_147">196.0000dp</dimen>
<dimen name="dp_148">197.3333dp</dimen>
<dimen name="dp_149">198.6667dp</dimen>
<dimen name="dp_150">200.0000dp</dimen>
<dimen name="dp_151">201.3333dp</dimen>
<dimen name="dp_152">202.6667dp</dimen>
<dimen name="dp_153">204.0000dp</dimen>
<dimen name="dp_154">205.3333dp</dimen>
<dimen name="dp_155">206.6667dp</dimen>
<dimen name="dp_156">208.0000dp</dimen>
<dimen name="dp_157">209.3333dp</dimen>
<dimen name="dp_158">210.6667dp</dimen>
<dimen name="dp_159">212.0000dp</dimen>
<dimen name="dp_160">213.3333dp</dimen>
<dimen name="dp_161">214.6667dp</dimen>
<dimen name="dp_162">216.0000dp</dimen>
<dimen name="dp_163">217.3333dp</dimen>
<dimen name="dp_164">218.6667dp</dimen>
<dimen name="dp_165">220.0000dp</dimen>
<dimen name="dp_166">221.3333dp</dimen>
<dimen name="dp_167">222.6667dp</dimen>
<dimen name="dp_168">224.0000dp</dimen>
<dimen name="dp_169">225.3333dp</dimen>
<dimen name="dp_170">226.6667dp</dimen>
<dimen name="dp_171">228.0000dp</dimen>
<dimen name="dp_172">229.3333dp</dimen>
<dimen name="dp_173">230.6667dp</dimen>
<dimen name="dp_174">232.0000dp</dimen>
<dimen name="dp_175">233.3333dp</dimen>
<dimen name="dp_176">234.6667dp</dimen>
<dimen name="dp_177">236.0000dp</dimen>
<dimen name="dp_178">237.3333dp</dimen>
<dimen name="dp_179">238.6667dp</dimen>
<dimen name="dp_180">240.0000dp</dimen>
<dimen name="dp_181">241.3333dp</dimen>
<dimen name="dp_182">242.6667dp</dimen>
<dimen name="dp_183">244.0000dp</dimen>
<dimen name="dp_184">245.3333dp</dimen>
<dimen name="dp_185">246.6667dp</dimen>
<dimen name="dp_186">248.0000dp</dimen>
<dimen name="dp_187">249.3333dp</dimen>
<dimen name="dp_188">250.6667dp</dimen>
<dimen name="dp_189">252.0000dp</dimen>
<dimen name="dp_190">253.3333dp</dimen>
<dimen name="dp_191">254.6667dp</dimen>
<dimen name="dp_191_25">255.0000dp</dimen>
<dimen name="dp_192">256.0000dp</dimen>
<dimen name="dp_193">257.3333dp</dimen>
<dimen name="dp_194">258.6667dp</dimen>
<dimen name="dp_195">260.0000dp</dimen>
<dimen name="dp_196">261.3333dp</dimen>
<dimen name="dp_197">262.6667dp</dimen>
<dimen name="dp_198">264.0000dp</dimen>
<dimen name="dp_199">265.3333dp</dimen>
<dimen name="dp_200">266.6667dp</dimen>
<dimen name="dp_201">268.0000dp</dimen>
<dimen name="dp_202">269.3333dp</dimen>
<dimen name="dp_203">270.6667dp</dimen>
<dimen name="dp_204">272.0000dp</dimen>
<dimen name="dp_205">273.3333dp</dimen>
<dimen name="dp_206">274.6667dp</dimen>
<dimen name="dp_207">276.0000dp</dimen>
<dimen name="dp_208">277.3333dp</dimen>
<dimen name="dp_209">278.6667dp</dimen>
<dimen name="dp_210">280.0000dp</dimen>
<dimen name="dp_211">281.3333dp</dimen>
<dimen name="dp_212">282.6667dp</dimen>
<dimen name="dp_213">284.0000dp</dimen>
<dimen name="dp_214">285.3333dp</dimen>
<dimen name="dp_215">286.6667dp</dimen>
<dimen name="dp_216">288.0000dp</dimen>
<dimen name="dp_217">289.3333dp</dimen>
<dimen name="dp_218">290.6667dp</dimen>
<dimen name="dp_219">292.0000dp</dimen>
<dimen name="dp_220">293.3333dp</dimen>
<dimen name="dp_221">294.6667dp</dimen>
<dimen name="dp_222">296.0000dp</dimen>
<dimen name="dp_223">297.3333dp</dimen>
<dimen name="dp_224">298.6667dp</dimen>
<dimen name="dp_225">300.0000dp</dimen>
<dimen name="dp_226">301.3333dp</dimen>
<dimen name="dp_227">302.6667dp</dimen>
<dimen name="dp_228">304.0000dp</dimen>
<dimen name="dp_229">305.3333dp</dimen>
<dimen name="dp_230">306.6667dp</dimen>
<dimen name="dp_231">308.0000dp</dimen>
<dimen name="dp_232">309.3333dp</dimen>
<dimen name="dp_233">310.6667dp</dimen>
<dimen name="dp_234">312.0000dp</dimen>
<dimen name="dp_235">313.3333dp</dimen>
<dimen name="dp_236">314.6667dp</dimen>
<dimen name="dp_237">316.0000dp</dimen>
<dimen name="dp_238">317.3333dp</dimen>
<dimen name="dp_239">318.6667dp</dimen>
<dimen name="dp_240">320.0000dp</dimen>
<dimen name="dp_241">321.3333dp</dimen>
<dimen name="dp_242">322.6667dp</dimen>
<dimen name="dp_243">324.0000dp</dimen>
<dimen name="dp_244">325.3333dp</dimen>
<dimen name="dp_245">326.6667dp</dimen>
<dimen name="dp_246">328.0000dp</dimen>
<dimen name="dp_247">329.3333dp</dimen>
<dimen name="dp_248">330.6667dp</dimen>
<dimen name="dp_249">332.0000dp</dimen>
<dimen name="dp_250">333.3333dp</dimen>
<dimen name="dp_251">334.6667dp</dimen>
<dimen name="dp_252">336.0000dp</dimen>
<dimen name="dp_253">337.3333dp</dimen>
<dimen name="dp_254">338.6667dp</dimen>
<dimen name="dp_255">340.0000dp</dimen>
<dimen name="dp_256">341.3333dp</dimen>
<dimen name="dp_257">342.6667dp</dimen>
<dimen name="dp_258">344.0000dp</dimen>
<dimen name="dp_259">345.3333dp</dimen>
<dimen name="dp_260">346.6667dp</dimen>
<dimen name="dp_261">348.0000dp</dimen>
<dimen name="dp_262">349.3333dp</dimen>
<dimen name="dp_263">350.6667dp</dimen>
<dimen name="dp_264">352.0000dp</dimen>
<dimen name="dp_265">353.3333dp</dimen>
<dimen name="dp_266">354.6667dp</dimen>
<dimen name="dp_267">356.0000dp</dimen>
<dimen name="dp_268">357.3333dp</dimen>
<dimen name="dp_269">358.6667dp</dimen>
<dimen name="dp_270">360.0000dp</dimen>
<dimen name="dp_271">361.3333dp</dimen>
<dimen name="dp_272">362.6667dp</dimen>
<dimen name="dp_273">364.0000dp</dimen>
<dimen name="dp_274">365.3333dp</dimen>
<dimen name="dp_275">366.6667dp</dimen>
<dimen name="dp_276">368.0000dp</dimen>
<dimen name="dp_277">369.3333dp</dimen>
<dimen name="dp_278">370.6667dp</dimen>
<dimen name="dp_279">372.0000dp</dimen>
<dimen name="dp_280">373.3333dp</dimen>
<dimen name="dp_281">374.6667dp</dimen>
<dimen name="dp_282">376.0000dp</dimen>
<dimen name="dp_283">377.3333dp</dimen>
<dimen name="dp_284">378.6667dp</dimen>
<dimen name="dp_285">380.0000dp</dimen>
<dimen name="dp_286">381.3333dp</dimen>
<dimen name="dp_287">382.6667dp</dimen>
<dimen name="dp_288">384.0000dp</dimen>
<dimen name="dp_289">385.3333dp</dimen>
<dimen name="dp_290">386.6667dp</dimen>
<dimen name="dp_291">388.0000dp</dimen>
<dimen name="dp_292">389.3333dp</dimen>
<dimen name="dp_293">390.6667dp</dimen>
<dimen name="dp_294">392.0000dp</dimen>
<dimen name="dp_295">393.3333dp</dimen>
<dimen name="dp_296">394.6667dp</dimen>
<dimen name="dp_297">396.0000dp</dimen>
<dimen name="dp_298">397.3333dp</dimen>
<dimen name="dp_299">398.6667dp</dimen>
<dimen name="dp_300">400.0000dp</dimen>
<dimen name="dp_301">401.3333dp</dimen>
<dimen name="dp_302">402.6667dp</dimen>
<dimen name="dp_303">404.0000dp</dimen>
<dimen name="dp_304">405.3333dp</dimen>
<dimen name="dp_305">406.6667dp</dimen>
<dimen name="dp_306">408.0000dp</dimen>
<dimen name="dp_307">409.3333dp</dimen>
<dimen name="dp_308">410.6667dp</dimen>
<dimen name="dp_309">412.0000dp</dimen>
<dimen name="dp_310">413.3333dp</dimen>
<dimen name="dp_311">414.6667dp</dimen>
<dimen name="dp_312">416.0000dp</dimen>
<dimen name="dp_313">417.3333dp</dimen>
<dimen name="dp_314">418.6667dp</dimen>
<dimen name="dp_315">420.0000dp</dimen>
<dimen name="dp_316">421.3333dp</dimen>
<dimen name="dp_317">422.6667dp</dimen>
<dimen name="dp_318">424.0000dp</dimen>
<dimen name="dp_319">425.3333dp</dimen>
<dimen name="dp_320">426.6667dp</dimen>
<dimen name="dp_321">428.0000dp</dimen>
<dimen name="dp_322">429.3333dp</dimen>
<dimen name="dp_323">430.6667dp</dimen>
<dimen name="dp_324">432.0000dp</dimen>
<dimen name="dp_325">433.3333dp</dimen>
<dimen name="dp_326">434.6667dp</dimen>
<dimen name="dp_327">436.0000dp</dimen>
<dimen name="dp_328">437.3333dp</dimen>
<dimen name="dp_329">438.6667dp</dimen>
<dimen name="dp_330">440.0000dp</dimen>
<dimen name="dp_331">441.3333dp</dimen>
<dimen name="dp_332">442.6667dp</dimen>
<dimen name="dp_333">444.0000dp</dimen>
<dimen name="dp_334">445.3333dp</dimen>
<dimen name="dp_335">446.6667dp</dimen>
<dimen name="dp_336">448.0000dp</dimen>
<dimen name="dp_337">449.3333dp</dimen>
<dimen name="dp_338">450.6667dp</dimen>
<dimen name="dp_339">452.0000dp</dimen>
<dimen name="dp_340">453.3333dp</dimen>
<dimen name="dp_341">454.6667dp</dimen>
<dimen name="dp_342">456.0000dp</dimen>
<dimen name="dp_343">457.3333dp</dimen>
<dimen name="dp_344">458.6667dp</dimen>
<dimen name="dp_345">460.0000dp</dimen>
<dimen name="dp_346">461.3333dp</dimen>
<dimen name="dp_347">462.6667dp</dimen>
<dimen name="dp_348">464.0000dp</dimen>
<dimen name="dp_349">465.3333dp</dimen>
<dimen name="dp_350">466.6667dp</dimen>
<dimen name="dp_351">468.0000dp</dimen>
<dimen name="dp_352">469.3333dp</dimen>
<dimen name="dp_353">470.6667dp</dimen>
<dimen name="dp_354">472.0000dp</dimen>
<dimen name="dp_355">473.3333dp</dimen>
<dimen name="dp_356">474.6667dp</dimen>
<dimen name="dp_357">476.0000dp</dimen>
<dimen name="dp_358">477.3333dp</dimen>
<dimen name="dp_359">478.6667dp</dimen>
<dimen name="dp_360">480.0000dp</dimen>
<dimen name="dp_365">486.6667dp</dimen>
<dimen name="dp_370">493.3333dp</dimen>
<dimen name="dp_400">533.3333dp</dimen>
<dimen name="dp_410">546.6667dp</dimen>
<dimen name="dp_422">562.6667dp</dimen>
<dimen name="dp_472">629.3333dp</dimen>
<dimen name="dp_500">666.6667dp</dimen>
<dimen name="dp_600">800.0000dp</dimen>
<dimen name="dp_640">853.3333dp</dimen>
<dimen name="dp_720">960.0000dp</dimen>
<dimen name="sp_6">8.0000sp</dimen>
<dimen name="sp_7">9.3333sp</dimen>
<dimen name="sp_8">10.6667sp</dimen>
<dimen name="sp_9">12.0000sp</dimen>
<dimen name="sp_10">13.3333sp</dimen>
<dimen name="sp_11">14.6667sp</dimen>
<dimen name="sp_12">16.0000sp</dimen>
<dimen name="sp_13">17.3333sp</dimen>
<dimen name="sp_14">18.6667sp</dimen>
<dimen name="sp_15">20.0000sp</dimen>
<dimen name="sp_16">21.3333sp</dimen>
<dimen name="sp_17">22.6667sp</dimen>
<dimen name="sp_18">24.0000sp</dimen>
<dimen name="sp_19">25.3333sp</dimen>
<dimen name="sp_20">26.6667sp</dimen>
<dimen name="sp_21">28.0000sp</dimen>
<dimen name="sp_22">29.3333sp</dimen>
<dimen name="sp_23">30.6667sp</dimen>
<dimen name="sp_24">32.0000sp</dimen>
<dimen name="sp_25">33.3333sp</dimen>
<dimen name="sp_28">37.3333sp</dimen>
<dimen name="sp_30">40.0000sp</dimen>
<dimen name="sp_32">42.6667sp</dimen>
<dimen name="sp_34">45.3333sp</dimen>
<dimen name="sp_36">48.0000sp</dimen>
<dimen name="sp_38">50.6667sp</dimen>
<dimen name="sp_40">53.3333sp</dimen>
<dimen name="sp_42">56.0000sp</dimen>
<dimen name="sp_48">64.0000sp</dimen>
</resources>
<?xml version="1.0" encoding="UTF-8"?>
<resources>
<dimen name="activity_horizontal_margin">23.6889dp</dimen>
<dimen name="activity_vertical_margin">23.6889dp</dimen>
<dimen name="title_bar_head">74.0278dp</dimen>
<dimen name="card_common_margin_left">@dimen/dp_15</dimen>
<dimen name="dp_m_60">-88.8333dp</dimen>
<dimen name="dp_m_30">-44.4167dp</dimen>
<dimen name="dp_m_20">-29.6111dp</dimen>
<dimen name="dp_m_12">-17.7667dp</dimen>
<dimen name="dp_m_10">-14.8056dp</dimen>
<dimen name="dp_m_8">-11.8444dp</dimen>
<dimen name="dp_m_5">-7.4028dp</dimen>
<dimen name="dp_m_2">-2.9611dp</dimen>
<dimen name="dp_m_1">-1.4806dp</dimen>
<dimen name="dp_0">0.0000dp</dimen>
<dimen name="dp_0_1">0.1481dp</dimen>
<dimen name="dp_0_5">0.7403dp</dimen>
<dimen name="dp_1">1.4806dp</dimen>
<dimen name="dp_1_5">2.2208dp</dimen>
<dimen name="dp_2">2.9611dp</dimen>
<dimen name="dp_2_5">3.7014dp</dimen>
<dimen name="dp_3">4.4417dp</dimen>
<dimen name="dp_3_5">5.1819dp</dimen>
<dimen name="dp_4">5.9222dp</dimen>
<dimen name="dp_4_5">6.6625dp</dimen>
<dimen name="dp_5">7.4028dp</dimen>
<dimen name="dp_6">8.8833dp</dimen>
<dimen name="dp_7">10.3639dp</dimen>
<dimen name="dp_7_5">11.1042dp</dimen>
<dimen name="dp_8">11.8444dp</dimen>
<dimen name="dp_9">13.3250dp</dimen>
<dimen name="dp_10">14.8056dp</dimen>
<dimen name="dp_11">16.2861dp</dimen>
<dimen name="dp_12">17.7667dp</dimen>
<dimen name="dp_13">19.2472dp</dimen>
<dimen name="dp_14">20.7278dp</dimen>
<dimen name="dp_15">22.2083dp</dimen>
<dimen name="dp_16">23.6889dp</dimen>
<dimen name="dp_17">25.1694dp</dimen>
<dimen name="dp_18">26.6500dp</dimen>
<dimen name="dp_19">28.1306dp</dimen>
<dimen name="dp_20">29.6111dp</dimen>
<dimen name="dp_21">31.0917dp</dimen>
<dimen name="dp_22">32.5722dp</dimen>
<dimen name="dp_23">34.0528dp</dimen>
<dimen name="dp_24">35.5333dp</dimen>
<dimen name="dp_25">37.0139dp</dimen>
<dimen name="dp_26">38.4944dp</dimen>
<dimen name="dp_27">39.9750dp</dimen>
<dimen name="dp_28">41.4556dp</dimen>
<dimen name="dp_29">42.9361dp</dimen>
<dimen name="dp_30">44.4167dp</dimen>
<dimen name="dp_31">45.8972dp</dimen>
<dimen name="dp_32">47.3778dp</dimen>
<dimen name="dp_33">48.8583dp</dimen>
<dimen name="dp_34">50.3389dp</dimen>
<dimen name="dp_35">51.8194dp</dimen>
<dimen name="dp_36">53.3000dp</dimen>
<dimen name="dp_37">54.7806dp</dimen>
<dimen name="dp_38">56.2611dp</dimen>
<dimen name="dp_39">57.7417dp</dimen>
<dimen name="dp_40">59.2222dp</dimen>
<dimen name="dp_41">60.7028dp</dimen>
<dimen name="dp_42">62.1833dp</dimen>
<dimen name="dp_43">63.6639dp</dimen>
<dimen name="dp_44">65.1444dp</dimen>
<dimen name="dp_45">66.6250dp</dimen>
<dimen name="dp_46">68.1056dp</dimen>
<dimen name="dp_47">69.5861dp</dimen>
<dimen name="dp_48">71.0667dp</dimen>
<dimen name="dp_49">72.5472dp</dimen>
<dimen name="dp_50">74.0278dp</dimen>
<dimen name="dp_51">75.5083dp</dimen>
<dimen name="dp_52">76.9889dp</dimen>
<dimen name="dp_53">78.4694dp</dimen>
<dimen name="dp_54">79.9500dp</dimen>
<dimen name="dp_55">81.4306dp</dimen>
<dimen name="dp_56">82.9111dp</dimen>
<dimen name="dp_57">84.3917dp</dimen>
<dimen name="dp_58">85.8722dp</dimen>
<dimen name="dp_59">87.3528dp</dimen>
<dimen name="dp_60">88.8333dp</dimen>
<dimen name="dp_61">90.3139dp</dimen>
<dimen name="dp_62">91.7944dp</dimen>
<dimen name="dp_63">93.2750dp</dimen>
<dimen name="dp_64">94.7556dp</dimen>
<dimen name="dp_65">96.2361dp</dimen>
<dimen name="dp_66">97.7167dp</dimen>
<dimen name="dp_67">99.1972dp</dimen>
<dimen name="dp_68">100.6778dp</dimen>
<dimen name="dp_69">102.1583dp</dimen>
<dimen name="dp_70">103.6389dp</dimen>
<dimen name="dp_71">105.1194dp</dimen>
<dimen name="dp_72">106.6000dp</dimen>
<dimen name="dp_73">108.0806dp</dimen>
<dimen name="dp_74">109.5611dp</dimen>
<dimen name="dp_75">111.0417dp</dimen>
<dimen name="dp_76">112.5222dp</dimen>
<dimen name="dp_77">114.0028dp</dimen>
<dimen name="dp_78">115.4833dp</dimen>
<dimen name="dp_79">116.9639dp</dimen>
<dimen name="dp_80">118.4444dp</dimen>
<dimen name="dp_81">119.9250dp</dimen>
<dimen name="dp_82">121.4056dp</dimen>
<dimen name="dp_83">122.8861dp</dimen>
<dimen name="dp_84">124.3667dp</dimen>
<dimen name="dp_85">125.8472dp</dimen>
<dimen name="dp_86">127.3278dp</dimen>
<dimen name="dp_87">128.8083dp</dimen>
<dimen name="dp_88">130.2889dp</dimen>
<dimen name="dp_89">131.7694dp</dimen>
<dimen name="dp_90">133.2500dp</dimen>
<dimen name="dp_91">134.7306dp</dimen>
<dimen name="dp_92">136.2111dp</dimen>
<dimen name="dp_93">137.6917dp</dimen>
<dimen name="dp_94">139.1722dp</dimen>
<dimen name="dp_95">140.6528dp</dimen>
<dimen name="dp_96">142.1333dp</dimen>
<dimen name="dp_97">143.6139dp</dimen>
<dimen name="dp_98">145.0944dp</dimen>
<dimen name="dp_99">146.5750dp</dimen>
<dimen name="dp_100">148.0556dp</dimen>
<dimen name="dp_101">149.5361dp</dimen>
<dimen name="dp_102">151.0167dp</dimen>
<dimen name="dp_103">152.4972dp</dimen>
<dimen name="dp_104">153.9778dp</dimen>
<dimen name="dp_104_5">154.7181dp</dimen>
<dimen name="dp_105">155.4583dp</dimen>
<dimen name="dp_106">156.9389dp</dimen>
<dimen name="dp_107">158.4194dp</dimen>
<dimen name="dp_108">159.9000dp</dimen>
<dimen name="dp_109">161.3806dp</dimen>
<dimen name="dp_110">162.8611dp</dimen>
<dimen name="dp_111">164.3417dp</dimen>
<dimen name="dp_112">165.8222dp</dimen>
<dimen name="dp_113">167.3028dp</dimen>
<dimen name="dp_114">168.7833dp</dimen>
<dimen name="dp_115">170.2639dp</dimen>
<dimen name="dp_116">171.7444dp</dimen>
<dimen name="dp_117">173.2250dp</dimen>
<dimen name="dp_118">174.7056dp</dimen>
<dimen name="dp_119">176.1861dp</dimen>
<dimen name="dp_120">177.6667dp</dimen>
<dimen name="dp_121">179.1472dp</dimen>
<dimen name="dp_122">180.6278dp</dimen>
<dimen name="dp_123">182.1083dp</dimen>
<dimen name="dp_124">183.5889dp</dimen>
<dimen name="dp_125">185.0694dp</dimen>
<dimen name="dp_126">186.5500dp</dimen>
<dimen name="dp_127">188.0306dp</dimen>
<dimen name="dp_128">189.5111dp</dimen>
<dimen name="dp_129">190.9917dp</dimen>
<dimen name="dp_130">192.4722dp</dimen>
<dimen name="dp_131">193.9528dp</dimen>
<dimen name="dp_132">195.4333dp</dimen>
<dimen name="dp_133">196.9139dp</dimen>
<dimen name="dp_134">198.3944dp</dimen>
<dimen name="dp_134_5">199.1347dp</dimen>
<dimen name="dp_135">199.8750dp</dimen>
<dimen name="dp_136">201.3556dp</dimen>
<dimen name="dp_137">202.8361dp</dimen>
<dimen name="dp_138">204.3167dp</dimen>
<dimen name="dp_139">205.7972dp</dimen>
<dimen name="dp_140">207.2778dp</dimen>
<dimen name="dp_141">208.7583dp</dimen>
<dimen name="dp_142">210.2389dp</dimen>
<dimen name="dp_143">211.7194dp</dimen>
<dimen name="dp_144">213.2000dp</dimen>
<dimen name="dp_145">214.6806dp</dimen>
<dimen name="dp_146">216.1611dp</dimen>
<dimen name="dp_147">217.6417dp</dimen>
<dimen name="dp_148">219.1222dp</dimen>
<dimen name="dp_149">220.6028dp</dimen>
<dimen name="dp_150">222.0833dp</dimen>
<dimen name="dp_151">223.5639dp</dimen>
<dimen name="dp_152">225.0444dp</dimen>
<dimen name="dp_153">226.5250dp</dimen>
<dimen name="dp_154">228.0056dp</dimen>
<dimen name="dp_155">229.4861dp</dimen>
<dimen name="dp_156">230.9667dp</dimen>
<dimen name="dp_157">232.4472dp</dimen>
<dimen name="dp_158">233.9278dp</dimen>
<dimen name="dp_159">235.4083dp</dimen>
<dimen name="dp_160">236.8889dp</dimen>
<dimen name="dp_161">238.3694dp</dimen>
<dimen name="dp_162">239.8500dp</dimen>
<dimen name="dp_163">241.3306dp</dimen>
<dimen name="dp_164">242.8111dp</dimen>
<dimen name="dp_165">244.2917dp</dimen>
<dimen name="dp_166">245.7722dp</dimen>
<dimen name="dp_167">247.2528dp</dimen>
<dimen name="dp_168">248.7333dp</dimen>
<dimen name="dp_169">250.2139dp</dimen>
<dimen name="dp_170">251.6944dp</dimen>
<dimen name="dp_171">253.1750dp</dimen>
<dimen name="dp_172">254.6556dp</dimen>
<dimen name="dp_173">256.1361dp</dimen>
<dimen name="dp_174">257.6167dp</dimen>
<dimen name="dp_175">259.0972dp</dimen>
<dimen name="dp_176">260.5778dp</dimen>
<dimen name="dp_177">262.0583dp</dimen>
<dimen name="dp_178">263.5389dp</dimen>
<dimen name="dp_179">265.0194dp</dimen>
<dimen name="dp_180">266.5000dp</dimen>
<dimen name="dp_181">267.9806dp</dimen>
<dimen name="dp_182">269.4611dp</dimen>
<dimen name="dp_183">270.9417dp</dimen>
<dimen name="dp_184">272.4222dp</dimen>
<dimen name="dp_185">273.9028dp</dimen>
<dimen name="dp_186">275.3833dp</dimen>
<dimen name="dp_187">276.8639dp</dimen>
<dimen name="dp_188">278.3444dp</dimen>
<dimen name="dp_189">279.8250dp</dimen>
<dimen name="dp_190">281.3056dp</dimen>
<dimen name="dp_191">282.7861dp</dimen>
<dimen name="dp_191_25">283.1562dp</dimen>
<dimen name="dp_192">284.2667dp</dimen>
<dimen name="dp_193">285.7472dp</dimen>
<dimen name="dp_194">287.2278dp</dimen>
<dimen name="dp_195">288.7083dp</dimen>
<dimen name="dp_196">290.1889dp</dimen>
<dimen name="dp_197">291.6694dp</dimen>
<dimen name="dp_198">293.1500dp</dimen>
<dimen name="dp_199">294.6306dp</dimen>
<dimen name="dp_200">296.1111dp</dimen>
<dimen name="dp_201">297.5917dp</dimen>
<dimen name="dp_202">299.0722dp</dimen>
<dimen name="dp_203">300.5528dp</dimen>
<dimen name="dp_204">302.0333dp</dimen>
<dimen name="dp_205">303.5139dp</dimen>
<dimen name="dp_206">304.9944dp</dimen>
<dimen name="dp_207">306.4750dp</dimen>
<dimen name="dp_208">307.9556dp</dimen>
<dimen name="dp_209">309.4361dp</dimen>
<dimen name="dp_210">310.9167dp</dimen>
<dimen name="dp_211">312.3972dp</dimen>
<dimen name="dp_212">313.8778dp</dimen>
<dimen name="dp_213">315.3583dp</dimen>
<dimen name="dp_214">316.8389dp</dimen>
<dimen name="dp_215">318.3194dp</dimen>
<dimen name="dp_216">319.8000dp</dimen>
<dimen name="dp_217">321.2806dp</dimen>
<dimen name="dp_218">322.7611dp</dimen>
<dimen name="dp_219">324.2417dp</dimen>
<dimen name="dp_220">325.7222dp</dimen>
<dimen name="dp_221">327.2028dp</dimen>
<dimen name="dp_222">328.6833dp</dimen>
<dimen name="dp_223">330.1639dp</dimen>
<dimen name="dp_224">331.6444dp</dimen>
<dimen name="dp_225">333.1250dp</dimen>
<dimen name="dp_226">334.6056dp</dimen>
<dimen name="dp_227">336.0861dp</dimen>
<dimen name="dp_228">337.5667dp</dimen>
<dimen name="dp_229">339.0472dp</dimen>
<dimen name="dp_230">340.5278dp</dimen>
<dimen name="dp_231">342.0083dp</dimen>
<dimen name="dp_232">343.4889dp</dimen>
<dimen name="dp_233">344.9694dp</dimen>
<dimen name="dp_234">346.4500dp</dimen>
<dimen name="dp_235">347.9306dp</dimen>
<dimen name="dp_236">349.4111dp</dimen>
<dimen name="dp_237">350.8917dp</dimen>
<dimen name="dp_238">352.3722dp</dimen>
<dimen name="dp_239">353.8528dp</dimen>
<dimen name="dp_240">355.3333dp</dimen>
<dimen name="dp_241">356.8139dp</dimen>
<dimen name="dp_242">358.2944dp</dimen>
<dimen name="dp_243">359.7750dp</dimen>
<dimen name="dp_244">361.2556dp</dimen>
<dimen name="dp_245">362.7361dp</dimen>
<dimen name="dp_246">364.2167dp</dimen>
<dimen name="dp_247">365.6972dp</dimen>
<dimen name="dp_248">367.1778dp</dimen>
<dimen name="dp_249">368.6583dp</dimen>
<dimen name="dp_250">370.1389dp</dimen>
<dimen name="dp_251">371.6194dp</dimen>
<dimen name="dp_252">373.1000dp</dimen>
<dimen name="dp_253">374.5806dp</dimen>
<dimen name="dp_254">376.0611dp</dimen>
<dimen name="dp_255">377.5417dp</dimen>
<dimen name="dp_256">379.0222dp</dimen>
<dimen name="dp_257">380.5028dp</dimen>
<dimen name="dp_258">381.9833dp</dimen>
<dimen name="dp_259">383.4639dp</dimen>
<dimen name="dp_260">384.9444dp</dimen>
<dimen name="dp_261">386.4250dp</dimen>
<dimen name="dp_262">387.9056dp</dimen>
<dimen name="dp_263">389.3861dp</dimen>
<dimen name="dp_264">390.8667dp</dimen>
<dimen name="dp_265">392.3472dp</dimen>
<dimen name="dp_266">393.8278dp</dimen>
<dimen name="dp_267">395.3083dp</dimen>
<dimen name="dp_268">396.7889dp</dimen>
<dimen name="dp_269">398.2694dp</dimen>
<dimen name="dp_270">399.7500dp</dimen>
<dimen name="dp_271">401.2306dp</dimen>
<dimen name="dp_272">402.7111dp</dimen>
<dimen name="dp_273">404.1917dp</dimen>
<dimen name="dp_274">405.6722dp</dimen>
<dimen name="dp_275">407.1528dp</dimen>
<dimen name="dp_276">408.6333dp</dimen>
<dimen name="dp_277">410.1139dp</dimen>
<dimen name="dp_278">411.5944dp</dimen>
<dimen name="dp_279">413.0750dp</dimen>
<dimen name="dp_280">414.5556dp</dimen>
<dimen name="dp_281">416.0361dp</dimen>
<dimen name="dp_282">417.5167dp</dimen>
<dimen name="dp_283">418.9972dp</dimen>
<dimen name="dp_284">420.4778dp</dimen>
<dimen name="dp_285">421.9583dp</dimen>
<dimen name="dp_286">423.4389dp</dimen>
<dimen name="dp_287">424.9194dp</dimen>
<dimen name="dp_288">426.4000dp</dimen>
<dimen name="dp_289">427.8806dp</dimen>
<dimen name="dp_290">429.3611dp</dimen>
<dimen name="dp_291">430.8417dp</dimen>
<dimen name="dp_292">432.3222dp</dimen>
<dimen name="dp_293">433.8028dp</dimen>
<dimen name="dp_294">435.2833dp</dimen>
<dimen name="dp_295">436.7639dp</dimen>
<dimen name="dp_296">438.2444dp</dimen>
<dimen name="dp_297">439.7250dp</dimen>
<dimen name="dp_298">441.2056dp</dimen>
<dimen name="dp_299">442.6861dp</dimen>
<dimen name="dp_300">444.1667dp</dimen>
<dimen name="dp_301">445.6472dp</dimen>
<dimen name="dp_302">447.1278dp</dimen>
<dimen name="dp_303">448.6083dp</dimen>
<dimen name="dp_304">450.0889dp</dimen>
<dimen name="dp_305">451.5694dp</dimen>
<dimen name="dp_306">453.0500dp</dimen>
<dimen name="dp_307">454.5306dp</dimen>
<dimen name="dp_308">456.0111dp</dimen>
<dimen name="dp_309">457.4917dp</dimen>
<dimen name="dp_310">458.9722dp</dimen>
<dimen name="dp_311">460.4528dp</dimen>
<dimen name="dp_312">461.9333dp</dimen>
<dimen name="dp_313">463.4139dp</dimen>
<dimen name="dp_314">464.8944dp</dimen>
<dimen name="dp_315">466.3750dp</dimen>
<dimen name="dp_316">467.8556dp</dimen>
<dimen name="dp_317">469.3361dp</dimen>
<dimen name="dp_318">470.8167dp</dimen>
<dimen name="dp_319">472.2972dp</dimen>
<dimen name="dp_320">473.7778dp</dimen>
<dimen name="dp_321">475.2583dp</dimen>
<dimen name="dp_322">476.7389dp</dimen>
<dimen name="dp_323">478.2194dp</dimen>
<dimen name="dp_324">479.7000dp</dimen>
<dimen name="dp_325">481.1806dp</dimen>
<dimen name="dp_326">482.6611dp</dimen>
<dimen name="dp_327">484.1417dp</dimen>
<dimen name="dp_328">485.6222dp</dimen>
<dimen name="dp_329">487.1028dp</dimen>
<dimen name="dp_330">488.5833dp</dimen>
<dimen name="dp_331">490.0639dp</dimen>
<dimen name="dp_332">491.5444dp</dimen>
<dimen name="dp_333">493.0250dp</dimen>
<dimen name="dp_334">494.5056dp</dimen>
<dimen name="dp_335">495.9861dp</dimen>
<dimen name="dp_336">497.4667dp</dimen>
<dimen name="dp_337">498.9472dp</dimen>
<dimen name="dp_338">500.4278dp</dimen>
<dimen name="dp_339">501.9083dp</dimen>
<dimen name="dp_340">503.3889dp</dimen>
<dimen name="dp_341">504.8694dp</dimen>
<dimen name="dp_342">506.3500dp</dimen>
<dimen name="dp_343">507.8306dp</dimen>
<dimen name="dp_344">509.3111dp</dimen>
<dimen name="dp_345">510.7917dp</dimen>
<dimen name="dp_346">512.2722dp</dimen>
<dimen name="dp_347">513.7528dp</dimen>
<dimen name="dp_348">515.2333dp</dimen>
<dimen name="dp_349">516.7139dp</dimen>
<dimen name="dp_350">518.1944dp</dimen>
<dimen name="dp_351">519.6750dp</dimen>
<dimen name="dp_352">521.1556dp</dimen>
<dimen name="dp_353">522.6361dp</dimen>
<dimen name="dp_354">524.1167dp</dimen>
<dimen name="dp_355">525.5972dp</dimen>
<dimen name="dp_356">527.0778dp</dimen>
<dimen name="dp_357">528.5583dp</dimen>
<dimen name="dp_358">530.0389dp</dimen>
<dimen name="dp_359">531.5194dp</dimen>
<dimen name="dp_360">533.0000dp</dimen>
<dimen name="dp_365">540.4028dp</dimen>
<dimen name="dp_370">547.8056dp</dimen>
<dimen name="dp_400">592.2222dp</dimen>
<dimen name="dp_410">607.0278dp</dimen>
<dimen name="dp_422">624.7944dp</dimen>
<dimen name="dp_472">698.8222dp</dimen>
<dimen name="dp_500">740.2778dp</dimen>
<dimen name="dp_600">888.3333dp</dimen>
<dimen name="dp_640">947.5556dp</dimen>
<dimen name="dp_720">1066.0000dp</dimen>
<dimen name="sp_6">8.8833sp</dimen>
<dimen name="sp_7">10.3639sp</dimen>
<dimen name="sp_8">11.8444sp</dimen>
<dimen name="sp_9">13.3250sp</dimen>
<dimen name="sp_10">14.8056sp</dimen>
<dimen name="sp_11">16.2861sp</dimen>
<dimen name="sp_12">17.7667sp</dimen>
<dimen name="sp_13">19.2472sp</dimen>
<dimen name="sp_14">20.7278sp</dimen>
<dimen name="sp_15">22.2083sp</dimen>
<dimen name="sp_16">23.6889sp</dimen>
<dimen name="sp_17">25.1694sp</dimen>
<dimen name="sp_18">26.6500sp</dimen>
<dimen name="sp_19">28.1306sp</dimen>
<dimen name="sp_20">29.6111sp</dimen>
<dimen name="sp_21">31.0917sp</dimen>
<dimen name="sp_22">32.5722sp</dimen>
<dimen name="sp_23">34.0528sp</dimen>
<dimen name="sp_24">35.5333sp</dimen>
<dimen name="sp_25">37.0139sp</dimen>
<dimen name="sp_28">41.4556sp</dimen>
<dimen name="sp_30">44.4167sp</dimen>
<dimen name="sp_32">47.3778sp</dimen>
<dimen name="sp_34">50.3389sp</dimen>
<dimen name="sp_36">53.3000sp</dimen>
<dimen name="sp_38">56.2611sp</dimen>
<dimen name="sp_40">59.2222sp</dimen>
<dimen name="sp_42">62.1833sp</dimen>
<dimen name="sp_48">71.0667sp</dimen>
</resources>
<?xml version="1.0" encoding="UTF-8"?>
<resources>
<dimen name="activity_horizontal_margin">26.3111dp</dimen>
<dimen name="activity_vertical_margin">26.3111dp</dimen>
<dimen name="title_bar_head">82.2222dp</dimen>
<dimen name="card_common_margin_left">@dimen/dp_15</dimen>
<dimen name="dp_m_60">-98.6667dp</dimen>
<dimen name="dp_m_30">-49.3333dp</dimen>
<dimen name="dp_m_20">-32.8889dp</dimen>
<dimen name="dp_m_12">-19.7333dp</dimen>
<dimen name="dp_m_10">-16.4444dp</dimen>
<dimen name="dp_m_8">-13.1556dp</dimen>
<dimen name="dp_m_5">-8.2222dp</dimen>
<dimen name="dp_m_2">-3.2889dp</dimen>
<dimen name="dp_m_1">-1.6444dp</dimen>
<dimen name="dp_0">0.0000dp</dimen>
<dimen name="dp_0_1">0.1644dp</dimen>
<dimen name="dp_0_5">0.8222dp</dimen>
<dimen name="dp_1">1.6444dp</dimen>
<dimen name="dp_1_5">2.4667dp</dimen>
<dimen name="dp_2">3.2889dp</dimen>
<dimen name="dp_2_5">4.1111dp</dimen>
<dimen name="dp_3">4.9333dp</dimen>
<dimen name="dp_3_5">5.7556dp</dimen>
<dimen name="dp_4">6.5778dp</dimen>
<dimen name="dp_4_5">7.4000dp</dimen>
<dimen name="dp_5">8.2222dp</dimen>
<dimen name="dp_6">9.8667dp</dimen>
<dimen name="dp_7">11.5111dp</dimen>
<dimen name="dp_7_5">12.3333dp</dimen>
<dimen name="dp_8">13.1556dp</dimen>
<dimen name="dp_9">14.8000dp</dimen>
<dimen name="dp_10">16.4444dp</dimen>
<dimen name="dp_11">18.0889dp</dimen>
<dimen name="dp_12">19.7333dp</dimen>
<dimen name="dp_13">21.3778dp</dimen>
<dimen name="dp_14">23.0222dp</dimen>
<dimen name="dp_15">24.6667dp</dimen>
<dimen name="dp_16">26.3111dp</dimen>
<dimen name="dp_17">27.9556dp</dimen>
<dimen name="dp_18">29.6000dp</dimen>
<dimen name="dp_19">31.2444dp</dimen>
<dimen name="dp_20">32.8889dp</dimen>
<dimen name="dp_21">34.5333dp</dimen>
<dimen name="dp_22">36.1778dp</dimen>
<dimen name="dp_23">37.8222dp</dimen>
<dimen name="dp_24">39.4667dp</dimen>
<dimen name="dp_25">41.1111dp</dimen>
<dimen name="dp_26">42.7556dp</dimen>
<dimen name="dp_27">44.4000dp</dimen>
<dimen name="dp_28">46.0444dp</dimen>
<dimen name="dp_29">47.6889dp</dimen>
<dimen name="dp_30">49.3333dp</dimen>
<dimen name="dp_31">50.9778dp</dimen>
<dimen name="dp_32">52.6222dp</dimen>
<dimen name="dp_33">54.2667dp</dimen>
<dimen name="dp_34">55.9111dp</dimen>
<dimen name="dp_35">57.5556dp</dimen>
<dimen name="dp_36">59.2000dp</dimen>
<dimen name="dp_37">60.8444dp</dimen>
<dimen name="dp_38">62.4889dp</dimen>
<dimen name="dp_39">64.1333dp</dimen>
<dimen name="dp_40">65.7778dp</dimen>
<dimen name="dp_41">67.4222dp</dimen>
<dimen name="dp_42">69.0667dp</dimen>
<dimen name="dp_43">70.7111dp</dimen>
<dimen name="dp_44">72.3556dp</dimen>
<dimen name="dp_45">74.0000dp</dimen>
<dimen name="dp_46">75.6444dp</dimen>
<dimen name="dp_47">77.2889dp</dimen>
<dimen name="dp_48">78.9333dp</dimen>
<dimen name="dp_49">80.5778dp</dimen>
<dimen name="dp_50">82.2222dp</dimen>
<dimen name="dp_51">83.8667dp</dimen>
<dimen name="dp_52">85.5111dp</dimen>
<dimen name="dp_53">87.1556dp</dimen>
<dimen name="dp_54">88.8000dp</dimen>
<dimen name="dp_55">90.4444dp</dimen>
<dimen name="dp_56">92.0889dp</dimen>
<dimen name="dp_57">93.7333dp</dimen>
<dimen name="dp_58">95.3778dp</dimen>
<dimen name="dp_59">97.0222dp</dimen>
<dimen name="dp_60">98.6667dp</dimen>
<dimen name="dp_61">100.3111dp</dimen>
<dimen name="dp_62">101.9556dp</dimen>
<dimen name="dp_63">103.6000dp</dimen>
<dimen name="dp_64">105.2444dp</dimen>
<dimen name="dp_65">106.8889dp</dimen>
<dimen name="dp_66">108.5333dp</dimen>
<dimen name="dp_67">110.1778dp</dimen>
<dimen name="dp_68">111.8222dp</dimen>
<dimen name="dp_69">113.4667dp</dimen>
<dimen name="dp_70">115.1111dp</dimen>
<dimen name="dp_71">116.7556dp</dimen>
<dimen name="dp_72">118.4000dp</dimen>
<dimen name="dp_73">120.0444dp</dimen>
<dimen name="dp_74">121.6889dp</dimen>
<dimen name="dp_75">123.3333dp</dimen>
<dimen name="dp_76">124.9778dp</dimen>
<dimen name="dp_77">126.6222dp</dimen>
<dimen name="dp_78">128.2667dp</dimen>
<dimen name="dp_79">129.9111dp</dimen>
<dimen name="dp_80">131.5556dp</dimen>
<dimen name="dp_81">133.2000dp</dimen>
<dimen name="dp_82">134.8444dp</dimen>
<dimen name="dp_83">136.4889dp</dimen>
<dimen name="dp_84">138.1333dp</dimen>
<dimen name="dp_85">139.7778dp</dimen>
<dimen name="dp_86">141.4222dp</dimen>
<dimen name="dp_87">143.0667dp</dimen>
<dimen name="dp_88">144.7111dp</dimen>
<dimen name="dp_89">146.3556dp</dimen>
<dimen name="dp_90">148.0000dp</dimen>
<dimen name="dp_91">149.6444dp</dimen>
<dimen name="dp_92">151.2889dp</dimen>
<dimen name="dp_93">152.9333dp</dimen>
<dimen name="dp_94">154.5778dp</dimen>
<dimen name="dp_95">156.2222dp</dimen>
<dimen name="dp_96">157.8667dp</dimen>
<dimen name="dp_97">159.5111dp</dimen>
<dimen name="dp_98">161.1556dp</dimen>
<dimen name="dp_99">162.8000dp</dimen>
<dimen name="dp_100">164.4444dp</dimen>
<dimen name="dp_101">166.0889dp</dimen>
<dimen name="dp_102">167.7333dp</dimen>
<dimen name="dp_103">169.3778dp</dimen>
<dimen name="dp_104">171.0222dp</dimen>
<dimen name="dp_104_5">171.8444dp</dimen>
<dimen name="dp_105">172.6667dp</dimen>
<dimen name="dp_106">174.3111dp</dimen>
<dimen name="dp_107">175.9556dp</dimen>
<dimen name="dp_108">177.6000dp</dimen>
<dimen name="dp_109">179.2444dp</dimen>
<dimen name="dp_110">180.8889dp</dimen>
<dimen name="dp_111">182.5333dp</dimen>
<dimen name="dp_112">184.1778dp</dimen>
<dimen name="dp_113">185.8222dp</dimen>
<dimen name="dp_114">187.4667dp</dimen>
<dimen name="dp_115">189.1111dp</dimen>
<dimen name="dp_116">190.7556dp</dimen>
<dimen name="dp_117">192.4000dp</dimen>
<dimen name="dp_118">194.0444dp</dimen>
<dimen name="dp_119">195.6889dp</dimen>
<dimen name="dp_120">197.3333dp</dimen>
<dimen name="dp_121">198.9778dp</dimen>
<dimen name="dp_122">200.6222dp</dimen>
<dimen name="dp_123">202.2667dp</dimen>
<dimen name="dp_124">203.9111dp</dimen>
<dimen name="dp_125">205.5556dp</dimen>
<dimen name="dp_126">207.2000dp</dimen>
<dimen name="dp_127">208.8444dp</dimen>
<dimen name="dp_128">210.4889dp</dimen>
<dimen name="dp_129">212.1333dp</dimen>
<dimen name="dp_130">213.7778dp</dimen>
<dimen name="dp_131">215.4222dp</dimen>
<dimen name="dp_132">217.0667dp</dimen>
<dimen name="dp_133">218.7111dp</dimen>
<dimen name="dp_134">220.3556dp</dimen>
<dimen name="dp_134_5">221.1778dp</dimen>
<dimen name="dp_135">222.0000dp</dimen>
<dimen name="dp_136">223.6444dp</dimen>
<dimen name="dp_137">225.2889dp</dimen>
<dimen name="dp_138">226.9333dp</dimen>
<dimen name="dp_139">228.5778dp</dimen>
<dimen name="dp_140">230.2222dp</dimen>
<dimen name="dp_141">231.8667dp</dimen>
<dimen name="dp_142">233.5111dp</dimen>
<dimen name="dp_143">235.1556dp</dimen>
<dimen name="dp_144">236.8000dp</dimen>
<dimen name="dp_145">238.4444dp</dimen>
<dimen name="dp_146">240.0889dp</dimen>
<dimen name="dp_147">241.7333dp</dimen>
<dimen name="dp_148">243.3778dp</dimen>
<dimen name="dp_149">245.0222dp</dimen>
<dimen name="dp_150">246.6667dp</dimen>
<dimen name="dp_151">248.3111dp</dimen>
<dimen name="dp_152">249.9556dp</dimen>
<dimen name="dp_153">251.6000dp</dimen>
<dimen name="dp_154">253.2444dp</dimen>
<dimen name="dp_155">254.8889dp</dimen>
<dimen name="dp_156">256.5333dp</dimen>
<dimen name="dp_157">258.1778dp</dimen>
<dimen name="dp_158">259.8222dp</dimen>
<dimen name="dp_159">261.4667dp</dimen>
<dimen name="dp_160">263.1111dp</dimen>
<dimen name="dp_161">264.7556dp</dimen>
<dimen name="dp_162">266.4000dp</dimen>
<dimen name="dp_163">268.0444dp</dimen>
<dimen name="dp_164">269.6889dp</dimen>
<dimen name="dp_165">271.3333dp</dimen>
<dimen name="dp_166">272.9778dp</dimen>
<dimen name="dp_167">274.6222dp</dimen>
<dimen name="dp_168">276.2667dp</dimen>
<dimen name="dp_169">277.9111dp</dimen>
<dimen name="dp_170">279.5556dp</dimen>
<dimen name="dp_171">281.2000dp</dimen>
<dimen name="dp_172">282.8444dp</dimen>
<dimen name="dp_173">284.4889dp</dimen>
<dimen name="dp_174">286.1333dp</dimen>
<dimen name="dp_175">287.7778dp</dimen>
<dimen name="dp_176">289.4222dp</dimen>
<dimen name="dp_177">291.0667dp</dimen>
<dimen name="dp_178">292.7111dp</dimen>
<dimen name="dp_179">294.3556dp</dimen>
<dimen name="dp_180">296.0000dp</dimen>
<dimen name="dp_181">297.6444dp</dimen>
<dimen name="dp_182">299.2889dp</dimen>
<dimen name="dp_183">300.9333dp</dimen>
<dimen name="dp_184">302.5778dp</dimen>
<dimen name="dp_185">304.2222dp</dimen>
<dimen name="dp_186">305.8667dp</dimen>
<dimen name="dp_187">307.5111dp</dimen>
<dimen name="dp_188">309.1556dp</dimen>
<dimen name="dp_189">310.8000dp</dimen>
<dimen name="dp_190">312.4444dp</dimen>
<dimen name="dp_191">314.0889dp</dimen>
<dimen name="dp_191_25">314.5000dp</dimen>
<dimen name="dp_192">315.7333dp</dimen>
<dimen name="dp_193">317.3778dp</dimen>
<dimen name="dp_194">319.0222dp</dimen>
<dimen name="dp_195">320.6667dp</dimen>
<dimen name="dp_196">322.3111dp</dimen>
<dimen name="dp_197">323.9556dp</dimen>
<dimen name="dp_198">325.6000dp</dimen>
<dimen name="dp_199">327.2444dp</dimen>
<dimen name="dp_200">328.8889dp</dimen>
<dimen name="dp_201">330.5333dp</dimen>
<dimen name="dp_202">332.1778dp</dimen>
<dimen name="dp_203">333.8222dp</dimen>
<dimen name="dp_204">335.4667dp</dimen>
<dimen name="dp_205">337.1111dp</dimen>
<dimen name="dp_206">338.7556dp</dimen>
<dimen name="dp_207">340.4000dp</dimen>
<dimen name="dp_208">342.0444dp</dimen>
<dimen name="dp_209">343.6889dp</dimen>
<dimen name="dp_210">345.3333dp</dimen>
<dimen name="dp_211">346.9778dp</dimen>
<dimen name="dp_212">348.6222dp</dimen>
<dimen name="dp_213">350.2667dp</dimen>
<dimen name="dp_214">351.9111dp</dimen>
<dimen name="dp_215">353.5556dp</dimen>
<dimen name="dp_216">355.2000dp</dimen>
<dimen name="dp_217">356.8444dp</dimen>
<dimen name="dp_218">358.4889dp</dimen>
<dimen name="dp_219">360.1333dp</dimen>
<dimen name="dp_220">361.7778dp</dimen>
<dimen name="dp_221">363.4222dp</dimen>
<dimen name="dp_222">365.0667dp</dimen>
<dimen name="dp_223">366.7111dp</dimen>
<dimen name="dp_224">368.3556dp</dimen>
<dimen name="dp_225">370.0000dp</dimen>
<dimen name="dp_226">371.6444dp</dimen>
<dimen name="dp_227">373.2889dp</dimen>
<dimen name="dp_228">374.9333dp</dimen>
<dimen name="dp_229">376.5778dp</dimen>
<dimen name="dp_230">378.2222dp</dimen>
<dimen name="dp_231">379.8667dp</dimen>
<dimen name="dp_232">381.5111dp</dimen>
<dimen name="dp_233">383.1556dp</dimen>
<dimen name="dp_234">384.8000dp</dimen>
<dimen name="dp_235">386.4444dp</dimen>
<dimen name="dp_236">388.0889dp</dimen>
<dimen name="dp_237">389.7333dp</dimen>
<dimen name="dp_238">391.3778dp</dimen>
<dimen name="dp_239">393.0222dp</dimen>
<dimen name="dp_240">394.6667dp</dimen>
<dimen name="dp_241">396.3111dp</dimen>
<dimen name="dp_242">397.9556dp</dimen>
<dimen name="dp_243">399.6000dp</dimen>
<dimen name="dp_244">401.2444dp</dimen>
<dimen name="dp_245">402.8889dp</dimen>
<dimen name="dp_246">404.5333dp</dimen>
<dimen name="dp_247">406.1778dp</dimen>
<dimen name="dp_248">407.8222dp</dimen>
<dimen name="dp_249">409.4667dp</dimen>
<dimen name="dp_250">411.1111dp</dimen>
<dimen name="dp_251">412.7556dp</dimen>
<dimen name="dp_252">414.4000dp</dimen>
<dimen name="dp_253">416.0444dp</dimen>
<dimen name="dp_254">417.6889dp</dimen>
<dimen name="dp_255">419.3333dp</dimen>
<dimen name="dp_256">420.9778dp</dimen>
<dimen name="dp_257">422.6222dp</dimen>
<dimen name="dp_258">424.2667dp</dimen>
<dimen name="dp_259">425.9111dp</dimen>
<dimen name="dp_260">427.5556dp</dimen>
<dimen name="dp_261">429.2000dp</dimen>
<dimen name="dp_262">430.8444dp</dimen>
<dimen name="dp_263">432.4889dp</dimen>
<dimen name="dp_264">434.1333dp</dimen>
<dimen name="dp_265">435.7778dp</dimen>
<dimen name="dp_266">437.4222dp</dimen>
<dimen name="dp_267">439.0667dp</dimen>
<dimen name="dp_268">440.7111dp</dimen>
<dimen name="dp_269">442.3556dp</dimen>
<dimen name="dp_270">444.0000dp</dimen>
<dimen name="dp_271">445.6444dp</dimen>
<dimen name="dp_272">447.2889dp</dimen>
<dimen name="dp_273">448.9333dp</dimen>
<dimen name="dp_274">450.5778dp</dimen>
<dimen name="dp_275">452.2222dp</dimen>
<dimen name="dp_276">453.8667dp</dimen>
<dimen name="dp_277">455.5111dp</dimen>
<dimen name="dp_278">457.1556dp</dimen>
<dimen name="dp_279">458.8000dp</dimen>
<dimen name="dp_280">460.4444dp</dimen>
<dimen name="dp_281">462.0889dp</dimen>
<dimen name="dp_282">463.7333dp</dimen>
<dimen name="dp_283">465.3778dp</dimen>
<dimen name="dp_284">467.0222dp</dimen>
<dimen name="dp_285">468.6667dp</dimen>
<dimen name="dp_286">470.3111dp</dimen>
<dimen name="dp_287">471.9556dp</dimen>
<dimen name="dp_288">473.6000dp</dimen>
<dimen name="dp_289">475.2444dp</dimen>
<dimen name="dp_290">476.8889dp</dimen>
<dimen name="dp_291">478.5333dp</dimen>
<dimen name="dp_292">480.1778dp</dimen>
<dimen name="dp_293">481.8222dp</dimen>
<dimen name="dp_294">483.4667dp</dimen>
<dimen name="dp_295">485.1111dp</dimen>
<dimen name="dp_296">486.7556dp</dimen>
<dimen name="dp_297">488.4000dp</dimen>
<dimen name="dp_298">490.0444dp</dimen>
<dimen name="dp_299">491.6889dp</dimen>
<dimen name="dp_300">493.3333dp</dimen>
<dimen name="dp_301">494.9778dp</dimen>
<dimen name="dp_302">496.6222dp</dimen>
<dimen name="dp_303">498.2667dp</dimen>
<dimen name="dp_304">499.9111dp</dimen>
<dimen name="dp_305">501.5556dp</dimen>
<dimen name="dp_306">503.2000dp</dimen>
<dimen name="dp_307">504.8444dp</dimen>
<dimen name="dp_308">506.4889dp</dimen>
<dimen name="dp_309">508.1333dp</dimen>
<dimen name="dp_310">509.7778dp</dimen>
<dimen name="dp_311">511.4222dp</dimen>
<dimen name="dp_312">513.0667dp</dimen>
<dimen name="dp_313">514.7111dp</dimen>
<dimen name="dp_314">516.3556dp</dimen>
<dimen name="dp_315">518.0000dp</dimen>
<dimen name="dp_316">519.6444dp</dimen>
<dimen name="dp_317">521.2889dp</dimen>
<dimen name="dp_318">522.9333dp</dimen>
<dimen name="dp_319">524.5778dp</dimen>
<dimen name="dp_320">526.2222dp</dimen>
<dimen name="dp_321">527.8667dp</dimen>
<dimen name="dp_322">529.5111dp</dimen>
<dimen name="dp_323">531.1556dp</dimen>
<dimen name="dp_324">532.8000dp</dimen>
<dimen name="dp_325">534.4444dp</dimen>
<dimen name="dp_326">536.0889dp</dimen>
<dimen name="dp_327">537.7333dp</dimen>
<dimen name="dp_328">539.3778dp</dimen>
<dimen name="dp_329">541.0222dp</dimen>
<dimen name="dp_330">542.6667dp</dimen>
<dimen name="dp_331">544.3111dp</dimen>
<dimen name="dp_332">545.9556dp</dimen>
<dimen name="dp_333">547.6000dp</dimen>
<dimen name="dp_334">549.2444dp</dimen>
<dimen name="dp_335">550.8889dp</dimen>
<dimen name="dp_336">552.5333dp</dimen>
<dimen name="dp_337">554.1778dp</dimen>
<dimen name="dp_338">555.8222dp</dimen>
<dimen name="dp_339">557.4667dp</dimen>
<dimen name="dp_340">559.1111dp</dimen>
<dimen name="dp_341">560.7556dp</dimen>
<dimen name="dp_342">562.4000dp</dimen>
<dimen name="dp_343">564.0444dp</dimen>
<dimen name="dp_344">565.6889dp</dimen>
<dimen name="dp_345">567.3333dp</dimen>
<dimen name="dp_346">568.9778dp</dimen>
<dimen name="dp_347">570.6222dp</dimen>
<dimen name="dp_348">572.2667dp</dimen>
<dimen name="dp_349">573.9111dp</dimen>
<dimen name="dp_350">575.5556dp</dimen>
<dimen name="dp_351">577.2000dp</dimen>
<dimen name="dp_352">578.8444dp</dimen>
<dimen name="dp_353">580.4889dp</dimen>
<dimen name="dp_354">582.1333dp</dimen>
<dimen name="dp_355">583.7778dp</dimen>
<dimen name="dp_356">585.4222dp</dimen>
<dimen name="dp_357">587.0667dp</dimen>
<dimen name="dp_358">588.7111dp</dimen>
<dimen name="dp_359">590.3556dp</dimen>
<dimen name="dp_360">592.0000dp</dimen>
<dimen name="dp_365">600.2222dp</dimen>
<dimen name="dp_370">608.4444dp</dimen>
<dimen name="dp_400">657.7778dp</dimen>
<dimen name="dp_410">674.2222dp</dimen>
<dimen name="dp_422">693.9556dp</dimen>
<dimen name="dp_472">776.1778dp</dimen>
<dimen name="dp_500">822.2222dp</dimen>
<dimen name="dp_600">986.6667dp</dimen>
<dimen name="dp_640">1052.4444dp</dimen>
<dimen name="dp_720">1184.0000dp</dimen>
<dimen name="sp_6">9.8667sp</dimen>
<dimen name="sp_7">11.5111sp</dimen>
<dimen name="sp_8">13.1556sp</dimen>
<dimen name="sp_9">14.8000sp</dimen>
<dimen name="sp_10">16.4444sp</dimen>
<dimen name="sp_11">18.0889sp</dimen>
<dimen name="sp_12">19.7333sp</dimen>
<dimen name="sp_13">21.3778sp</dimen>
<dimen name="sp_14">23.0222sp</dimen>
<dimen name="sp_15">24.6667sp</dimen>
<dimen name="sp_16">26.3111sp</dimen>
<dimen name="sp_17">27.9556sp</dimen>
<dimen name="sp_18">29.6000sp</dimen>
<dimen name="sp_19">31.2444sp</dimen>
<dimen name="sp_20">32.8889sp</dimen>
<dimen name="sp_21">34.5333sp</dimen>
<dimen name="sp_22">36.1778sp</dimen>
<dimen name="sp_23">37.8222sp</dimen>
<dimen name="sp_24">39.4667sp</dimen>
<dimen name="sp_25">41.1111sp</dimen>
<dimen name="sp_28">46.0444sp</dimen>
<dimen name="sp_30">49.3333sp</dimen>
<dimen name="sp_32">52.6222sp</dimen>
<dimen name="sp_34">55.9111sp</dimen>
<dimen name="sp_36">59.2000sp</dimen>
<dimen name="sp_38">62.4889sp</dimen>
<dimen name="sp_40">65.7778sp</dimen>
<dimen name="sp_42">69.0667sp</dimen>
<dimen name="sp_48">78.9333sp</dimen>
</resources>
<?xml version="1.0" encoding="UTF-8"?>
<resources>
<dimen name="activity_horizontal_margin">26.6667dp</dimen>
<dimen name="activity_vertical_margin">26.6667dp</dimen>
<dimen name="title_bar_head">83.3333dp</dimen>
<dimen name="card_common_margin_left">@dimen/dp_15</dimen>
<dimen name="dp_m_60">-100.0000dp</dimen>
<dimen name="dp_m_30">-50.0000dp</dimen>
<dimen name="dp_m_20">-33.3333dp</dimen>
<dimen name="dp_m_12">-20.0000dp</dimen>
<dimen name="dp_m_10">-16.6667dp</dimen>
<dimen name="dp_m_8">-13.3333dp</dimen>
<dimen name="dp_m_5">-8.3333dp</dimen>
<dimen name="dp_m_2">-3.3333dp</dimen>
<dimen name="dp_m_1">-1.6667dp</dimen>
<dimen name="dp_0">0.0000dp</dimen>
<dimen name="dp_0_1">0.1667dp</dimen>
<dimen name="dp_0_5">0.8333dp</dimen>
<dimen name="dp_1">1.6667dp</dimen>
<dimen name="dp_1_5">2.5000dp</dimen>
<dimen name="dp_2">3.3333dp</dimen>
<dimen name="dp_2_5">4.1667dp</dimen>
<dimen name="dp_3">5.0000dp</dimen>
<dimen name="dp_3_5">5.8333dp</dimen>
<dimen name="dp_4">6.6667dp</dimen>
<dimen name="dp_4_5">7.5000dp</dimen>
<dimen name="dp_5">8.3333dp</dimen>
<dimen name="dp_6">10.0000dp</dimen>
<dimen name="dp_7">11.6667dp</dimen>
<dimen name="dp_7_5">12.5000dp</dimen>
<dimen name="dp_8">13.3333dp</dimen>
<dimen name="dp_9">15.0000dp</dimen>
<dimen name="dp_10">16.6667dp</dimen>
<dimen name="dp_11">18.3333dp</dimen>
<dimen name="dp_12">20.0000dp</dimen>
<dimen name="dp_13">21.6667dp</dimen>
<dimen name="dp_14">23.3333dp</dimen>
<dimen name="dp_15">25.0000dp</dimen>
<dimen name="dp_16">26.6667dp</dimen>
<dimen name="dp_17">28.3333dp</dimen>
<dimen name="dp_18">30.0000dp</dimen>
<dimen name="dp_19">31.6667dp</dimen>
<dimen name="dp_20">33.3333dp</dimen>
<dimen name="dp_21">35.0000dp</dimen>
<dimen name="dp_22">36.6667dp</dimen>
<dimen name="dp_23">38.3333dp</dimen>
<dimen name="dp_24">40.0000dp</dimen>
<dimen name="dp_25">41.6667dp</dimen>
<dimen name="dp_26">43.3333dp</dimen>
<dimen name="dp_27">45.0000dp</dimen>
<dimen name="dp_28">46.6667dp</dimen>
<dimen name="dp_29">48.3333dp</dimen>
<dimen name="dp_30">50.0000dp</dimen>
<dimen name="dp_31">51.6667dp</dimen>
<dimen name="dp_32">53.3333dp</dimen>
<dimen name="dp_33">55.0000dp</dimen>
<dimen name="dp_34">56.6667dp</dimen>
<dimen name="dp_35">58.3333dp</dimen>
<dimen name="dp_36">60.0000dp</dimen>
<dimen name="dp_37">61.6667dp</dimen>
<dimen name="dp_38">63.3333dp</dimen>
<dimen name="dp_39">65.0000dp</dimen>
<dimen name="dp_40">66.6667dp</dimen>
<dimen name="dp_41">68.3333dp</dimen>
<dimen name="dp_42">70.0000dp</dimen>
<dimen name="dp_43">71.6667dp</dimen>
<dimen name="dp_44">73.3333dp</dimen>
<dimen name="dp_45">75.0000dp</dimen>
<dimen name="dp_46">76.6667dp</dimen>
<dimen name="dp_47">78.3333dp</dimen>
<dimen name="dp_48">80.0000dp</dimen>
<dimen name="dp_49">81.6667dp</dimen>
<dimen name="dp_50">83.3333dp</dimen>
<dimen name="dp_51">85.0000dp</dimen>
<dimen name="dp_52">86.6667dp</dimen>
<dimen name="dp_53">88.3333dp</dimen>
<dimen name="dp_54">90.0000dp</dimen>
<dimen name="dp_55">91.6667dp</dimen>
<dimen name="dp_56">93.3333dp</dimen>
<dimen name="dp_57">95.0000dp</dimen>
<dimen name="dp_58">96.6667dp</dimen>
<dimen name="dp_59">98.3333dp</dimen>
<dimen name="dp_60">100.0000dp</dimen>
<dimen name="dp_61">101.6667dp</dimen>
<dimen name="dp_62">103.3333dp</dimen>
<dimen name="dp_63">105.0000dp</dimen>
<dimen name="dp_64">106.6667dp</dimen>
<dimen name="dp_65">108.3333dp</dimen>
<dimen name="dp_66">110.0000dp</dimen>
<dimen name="dp_67">111.6667dp</dimen>
<dimen name="dp_68">113.3333dp</dimen>
<dimen name="dp_69">115.0000dp</dimen>
<dimen name="dp_70">116.6667dp</dimen>
<dimen name="dp_71">118.3333dp</dimen>
<dimen name="dp_72">120.0000dp</dimen>
<dimen name="dp_73">121.6667dp</dimen>
<dimen name="dp_74">123.3333dp</dimen>
<dimen name="dp_75">125.0000dp</dimen>
<dimen name="dp_76">126.6667dp</dimen>
<dimen name="dp_77">128.3333dp</dimen>
<dimen name="dp_78">130.0000dp</dimen>
<dimen name="dp_79">131.6667dp</dimen>
<dimen name="dp_80">133.3333dp</dimen>
<dimen name="dp_81">135.0000dp</dimen>
<dimen name="dp_82">136.6667dp</dimen>
<dimen name="dp_83">138.3333dp</dimen>
<dimen name="dp_84">140.0000dp</dimen>
<dimen name="dp_85">141.6667dp</dimen>
<dimen name="dp_86">143.3333dp</dimen>
<dimen name="dp_87">145.0000dp</dimen>
<dimen name="dp_88">146.6667dp</dimen>
<dimen name="dp_89">148.3333dp</dimen>
<dimen name="dp_90">150.0000dp</dimen>
<dimen name="dp_91">151.6667dp</dimen>
<dimen name="dp_92">153.3333dp</dimen>
<dimen name="dp_93">155.0000dp</dimen>
<dimen name="dp_94">156.6667dp</dimen>
<dimen name="dp_95">158.3333dp</dimen>
<dimen name="dp_96">160.0000dp</dimen>
<dimen name="dp_97">161.6667dp</dimen>
<dimen name="dp_98">163.3333dp</dimen>
<dimen name="dp_99">165.0000dp</dimen>
<dimen name="dp_100">166.6667dp</dimen>
<dimen name="dp_101">168.3333dp</dimen>
<dimen name="dp_102">170.0000dp</dimen>
<dimen name="dp_103">171.6667dp</dimen>
<dimen name="dp_104">173.3333dp</dimen>
<dimen name="dp_104_5">174.1667dp</dimen>
<dimen name="dp_105">175.0000dp</dimen>
<dimen name="dp_106">176.6667dp</dimen>
<dimen name="dp_107">178.3333dp</dimen>
<dimen name="dp_108">180.0000dp</dimen>
<dimen name="dp_109">181.6667dp</dimen>
<dimen name="dp_110">183.3333dp</dimen>
<dimen name="dp_111">185.0000dp</dimen>
<dimen name="dp_112">186.6667dp</dimen>
<dimen name="dp_113">188.3333dp</dimen>
<dimen name="dp_114">190.0000dp</dimen>
<dimen name="dp_115">191.6667dp</dimen>
<dimen name="dp_116">193.3333dp</dimen>
<dimen name="dp_117">195.0000dp</dimen>
<dimen name="dp_118">196.6667dp</dimen>
<dimen name="dp_119">198.3333dp</dimen>
<dimen name="dp_120">200.0000dp</dimen>
<dimen name="dp_121">201.6667dp</dimen>
<dimen name="dp_122">203.3333dp</dimen>
<dimen name="dp_123">205.0000dp</dimen>
<dimen name="dp_124">206.6667dp</dimen>
<dimen name="dp_125">208.3333dp</dimen>
<dimen name="dp_126">210.0000dp</dimen>
<dimen name="dp_127">211.6667dp</dimen>
<dimen name="dp_128">213.3333dp</dimen>
<dimen name="dp_129">215.0000dp</dimen>
<dimen name="dp_130">216.6667dp</dimen>
<dimen name="dp_131">218.3333dp</dimen>
<dimen name="dp_132">220.0000dp</dimen>
<dimen name="dp_133">221.6667dp</dimen>
<dimen name="dp_134">223.3333dp</dimen>
<dimen name="dp_134_5">224.1667dp</dimen>
<dimen name="dp_135">225.0000dp</dimen>
<dimen name="dp_136">226.6667dp</dimen>
<dimen name="dp_137">228.3333dp</dimen>
<dimen name="dp_138">230.0000dp</dimen>
<dimen name="dp_139">231.6667dp</dimen>
<dimen name="dp_140">233.3333dp</dimen>
<dimen name="dp_141">235.0000dp</dimen>
<dimen name="dp_142">236.6667dp</dimen>
<dimen name="dp_143">238.3333dp</dimen>
<dimen name="dp_144">240.0000dp</dimen>
<dimen name="dp_145">241.6667dp</dimen>
<dimen name="dp_146">243.3333dp</dimen>
<dimen name="dp_147">245.0000dp</dimen>
<dimen name="dp_148">246.6667dp</dimen>
<dimen name="dp_149">248.3333dp</dimen>
<dimen name="dp_150">250.0000dp</dimen>
<dimen name="dp_151">251.6667dp</dimen>
<dimen name="dp_152">253.3333dp</dimen>
<dimen name="dp_153">255.0000dp</dimen>
<dimen name="dp_154">256.6667dp</dimen>
<dimen name="dp_155">258.3333dp</dimen>
<dimen name="dp_156">260.0000dp</dimen>
<dimen name="dp_157">261.6667dp</dimen>
<dimen name="dp_158">263.3333dp</dimen>
<dimen name="dp_159">265.0000dp</dimen>
<dimen name="dp_160">266.6667dp</dimen>
<dimen name="dp_161">268.3333dp</dimen>
<dimen name="dp_162">270.0000dp</dimen>
<dimen name="dp_163">271.6667dp</dimen>
<dimen name="dp_164">273.3333dp</dimen>
<dimen name="dp_165">275.0000dp</dimen>
<dimen name="dp_166">276.6667dp</dimen>
<dimen name="dp_167">278.3333dp</dimen>
<dimen name="dp_168">280.0000dp</dimen>
<dimen name="dp_169">281.6667dp</dimen>
<dimen name="dp_170">283.3333dp</dimen>
<dimen name="dp_171">285.0000dp</dimen>
<dimen name="dp_172">286.6667dp</dimen>
<dimen name="dp_173">288.3333dp</dimen>
<dimen name="dp_174">290.0000dp</dimen>
<dimen name="dp_175">291.6667dp</dimen>
<dimen name="dp_176">293.3333dp</dimen>
<dimen name="dp_177">295.0000dp</dimen>
<dimen name="dp_178">296.6667dp</dimen>
<dimen name="dp_179">298.3333dp</dimen>
<dimen name="dp_180">300.0000dp</dimen>
<dimen name="dp_181">301.6667dp</dimen>
<dimen name="dp_182">303.3333dp</dimen>
<dimen name="dp_183">305.0000dp</dimen>
<dimen name="dp_184">306.6667dp</dimen>
<dimen name="dp_185">308.3333dp</dimen>
<dimen name="dp_186">310.0000dp</dimen>
<dimen name="dp_187">311.6667dp</dimen>
<dimen name="dp_188">313.3333dp</dimen>
<dimen name="dp_189">315.0000dp</dimen>
<dimen name="dp_190">316.6667dp</dimen>
<dimen name="dp_191">318.3333dp</dimen>
<dimen name="dp_191_25">318.7500dp</dimen>
<dimen name="dp_192">320.0000dp</dimen>
<dimen name="dp_193">321.6667dp</dimen>
<dimen name="dp_194">323.3333dp</dimen>
<dimen name="dp_195">325.0000dp</dimen>
<dimen name="dp_196">326.6667dp</dimen>
<dimen name="dp_197">328.3333dp</dimen>
<dimen name="dp_198">330.0000dp</dimen>
<dimen name="dp_199">331.6667dp</dimen>
<dimen name="dp_200">333.3333dp</dimen>
<dimen name="dp_201">335.0000dp</dimen>
<dimen name="dp_202">336.6667dp</dimen>
<dimen name="dp_203">338.3333dp</dimen>
<dimen name="dp_204">340.0000dp</dimen>
<dimen name="dp_205">341.6667dp</dimen>
<dimen name="dp_206">343.3333dp</dimen>
<dimen name="dp_207">345.0000dp</dimen>
<dimen name="dp_208">346.6667dp</dimen>
<dimen name="dp_209">348.3333dp</dimen>
<dimen name="dp_210">350.0000dp</dimen>
<dimen name="dp_211">351.6667dp</dimen>
<dimen name="dp_212">353.3333dp</dimen>
<dimen name="dp_213">355.0000dp</dimen>
<dimen name="dp_214">356.6667dp</dimen>
<dimen name="dp_215">358.3333dp</dimen>
<dimen name="dp_216">360.0000dp</dimen>
<dimen name="dp_217">361.6667dp</dimen>
<dimen name="dp_218">363.3333dp</dimen>
<dimen name="dp_219">365.0000dp</dimen>
<dimen name="dp_220">366.6667dp</dimen>
<dimen name="dp_221">368.3333dp</dimen>
<dimen name="dp_222">370.0000dp</dimen>
<dimen name="dp_223">371.6667dp</dimen>
<dimen name="dp_224">373.3333dp</dimen>
<dimen name="dp_225">375.0000dp</dimen>
<dimen name="dp_226">376.6667dp</dimen>
<dimen name="dp_227">378.3333dp</dimen>
<dimen name="dp_228">380.0000dp</dimen>
<dimen name="dp_229">381.6667dp</dimen>
<dimen name="dp_230">383.3333dp</dimen>
<dimen name="dp_231">385.0000dp</dimen>
<dimen name="dp_232">386.6667dp</dimen>
<dimen name="dp_233">388.3333dp</dimen>
<dimen name="dp_234">390.0000dp</dimen>
<dimen name="dp_235">391.6667dp</dimen>
<dimen name="dp_236">393.3333dp</dimen>
<dimen name="dp_237">395.0000dp</dimen>
<dimen name="dp_238">396.6667dp</dimen>
<dimen name="dp_239">398.3333dp</dimen>
<dimen name="dp_240">400.0000dp</dimen>
<dimen name="dp_241">401.6667dp</dimen>
<dimen name="dp_242">403.3333dp</dimen>
<dimen name="dp_243">405.0000dp</dimen>
<dimen name="dp_244">406.6667dp</dimen>
<dimen name="dp_245">408.3333dp</dimen>
<dimen name="dp_246">410.0000dp</dimen>
<dimen name="dp_247">411.6667dp</dimen>
<dimen name="dp_248">413.3333dp</dimen>
<dimen name="dp_249">415.0000dp</dimen>
<dimen name="dp_250">416.6667dp</dimen>
<dimen name="dp_251">418.3333dp</dimen>
<dimen name="dp_252">420.0000dp</dimen>
<dimen name="dp_253">421.6667dp</dimen>
<dimen name="dp_254">423.3333dp</dimen>
<dimen name="dp_255">425.0000dp</dimen>
<dimen name="dp_256">426.6667dp</dimen>
<dimen name="dp_257">428.3333dp</dimen>
<dimen name="dp_258">430.0000dp</dimen>
<dimen name="dp_259">431.6667dp</dimen>
<dimen name="dp_260">433.3333dp</dimen>
<dimen name="dp_261">435.0000dp</dimen>
<dimen name="dp_262">436.6667dp</dimen>
<dimen name="dp_263">438.3333dp</dimen>
<dimen name="dp_264">440.0000dp</dimen>
<dimen name="dp_265">441.6667dp</dimen>
<dimen name="dp_266">443.3333dp</dimen>
<dimen name="dp_267">445.0000dp</dimen>
<dimen name="dp_268">446.6667dp</dimen>
<dimen name="dp_269">448.3333dp</dimen>
<dimen name="dp_270">450.0000dp</dimen>
<dimen name="dp_271">451.6667dp</dimen>
<dimen name="dp_272">453.3333dp</dimen>
<dimen name="dp_273">455.0000dp</dimen>
<dimen name="dp_274">456.6667dp</dimen>
<dimen name="dp_275">458.3333dp</dimen>
<dimen name="dp_276">460.0000dp</dimen>
<dimen name="dp_277">461.6667dp</dimen>
<dimen name="dp_278">463.3333dp</dimen>
<dimen name="dp_279">465.0000dp</dimen>
<dimen name="dp_280">466.6667dp</dimen>
<dimen name="dp_281">468.3333dp</dimen>
<dimen name="dp_282">470.0000dp</dimen>
<dimen name="dp_283">471.6667dp</dimen>
<dimen name="dp_284">473.3333dp</dimen>
<dimen name="dp_285">475.0000dp</dimen>
<dimen name="dp_286">476.6667dp</dimen>
<dimen name="dp_287">478.3333dp</dimen>
<dimen name="dp_288">480.0000dp</dimen>
<dimen name="dp_289">481.6667dp</dimen>
<dimen name="dp_290">483.3333dp</dimen>
<dimen name="dp_291">485.0000dp</dimen>
<dimen name="dp_292">486.6667dp</dimen>
<dimen name="dp_293">488.3333dp</dimen>
<dimen name="dp_294">490.0000dp</dimen>
<dimen name="dp_295">491.6667dp</dimen>
<dimen name="dp_296">493.3333dp</dimen>
<dimen name="dp_297">495.0000dp</dimen>
<dimen name="dp_298">496.6667dp</dimen>
<dimen name="dp_299">498.3333dp</dimen>
<dimen name="dp_300">500.0000dp</dimen>
<dimen name="dp_301">501.6667dp</dimen>
<dimen name="dp_302">503.3333dp</dimen>
<dimen name="dp_303">505.0000dp</dimen>
<dimen name="dp_304">506.6667dp</dimen>
<dimen name="dp_305">508.3333dp</dimen>
<dimen name="dp_306">510.0000dp</dimen>
<dimen name="dp_307">511.6667dp</dimen>
<dimen name="dp_308">513.3333dp</dimen>
<dimen name="dp_309">515.0000dp</dimen>
<dimen name="dp_310">516.6667dp</dimen>
<dimen name="dp_311">518.3333dp</dimen>
<dimen name="dp_312">520.0000dp</dimen>
<dimen name="dp_313">521.6667dp</dimen>
<dimen name="dp_314">523.3333dp</dimen>
<dimen name="dp_315">525.0000dp</dimen>
<dimen name="dp_316">526.6667dp</dimen>
<dimen name="dp_317">528.3333dp</dimen>
<dimen name="dp_318">530.0000dp</dimen>
<dimen name="dp_319">531.6667dp</dimen>
<dimen name="dp_320">533.3333dp</dimen>
<dimen name="dp_321">535.0000dp</dimen>
<dimen name="dp_322">536.6667dp</dimen>
<dimen name="dp_323">538.3333dp</dimen>
<dimen name="dp_324">540.0000dp</dimen>
<dimen name="dp_325">541.6667dp</dimen>
<dimen name="dp_326">543.3333dp</dimen>
<dimen name="dp_327">545.0000dp</dimen>
<dimen name="dp_328">546.6667dp</dimen>
<dimen name="dp_329">548.3333dp</dimen>
<dimen name="dp_330">550.0000dp</dimen>
<dimen name="dp_331">551.6667dp</dimen>
<dimen name="dp_332">553.3333dp</dimen>
<dimen name="dp_333">555.0000dp</dimen>
<dimen name="dp_334">556.6667dp</dimen>
<dimen name="dp_335">558.3333dp</dimen>
<dimen name="dp_336">560.0000dp</dimen>
<dimen name="dp_337">561.6667dp</dimen>
<dimen name="dp_338">563.3333dp</dimen>
<dimen name="dp_339">565.0000dp</dimen>
<dimen name="dp_340">566.6667dp</dimen>
<dimen name="dp_341">568.3333dp</dimen>
<dimen name="dp_342">570.0000dp</dimen>
<dimen name="dp_343">571.6667dp</dimen>
<dimen name="dp_344">573.3333dp</dimen>
<dimen name="dp_345">575.0000dp</dimen>
<dimen name="dp_346">576.6667dp</dimen>
<dimen name="dp_347">578.3333dp</dimen>
<dimen name="dp_348">580.0000dp</dimen>
<dimen name="dp_349">581.6667dp</dimen>
<dimen name="dp_350">583.3333dp</dimen>
<dimen name="dp_351">585.0000dp</dimen>
<dimen name="dp_352">586.6667dp</dimen>
<dimen name="dp_353">588.3333dp</dimen>
<dimen name="dp_354">590.0000dp</dimen>
<dimen name="dp_355">591.6667dp</dimen>
<dimen name="dp_356">593.3333dp</dimen>
<dimen name="dp_357">595.0000dp</dimen>
<dimen name="dp_358">596.6667dp</dimen>
<dimen name="dp_359">598.3333dp</dimen>
<dimen name="dp_360">600.0000dp</dimen>
<dimen name="dp_365">608.3333dp</dimen>
<dimen name="dp_370">616.6667dp</dimen>
<dimen name="dp_400">666.6667dp</dimen>
<dimen name="dp_410">683.3333dp</dimen>
<dimen name="dp_422">703.3333dp</dimen>
<dimen name="dp_472">786.6667dp</dimen>
<dimen name="dp_500">833.3333dp</dimen>
<dimen name="dp_600">1000.0000dp</dimen>
<dimen name="dp_640">1066.6667dp</dimen>
<dimen name="dp_720">1200.0000dp</dimen>
<dimen name="sp_6">10.0000sp</dimen>
<dimen name="sp_7">11.6667sp</dimen>
<dimen name="sp_8">13.3333sp</dimen>
<dimen name="sp_9">15.0000sp</dimen>
<dimen name="sp_10">16.6667sp</dimen>
<dimen name="sp_11">18.3333sp</dimen>
<dimen name="sp_12">20.0000sp</dimen>
<dimen name="sp_13">21.6667sp</dimen>
<dimen name="sp_14">23.3333sp</dimen>
<dimen name="sp_15">25.0000sp</dimen>
<dimen name="sp_16">26.6667sp</dimen>
<dimen name="sp_17">28.3333sp</dimen>
<dimen name="sp_18">30.0000sp</dimen>
<dimen name="sp_19">31.6667sp</dimen>
<dimen name="sp_20">33.3333sp</dimen>
<dimen name="sp_21">35.0000sp</dimen>
<dimen name="sp_22">36.6667sp</dimen>
<dimen name="sp_23">38.3333sp</dimen>
<dimen name="sp_24">40.0000sp</dimen>
<dimen name="sp_25">41.6667sp</dimen>
<dimen name="sp_28">46.6667sp</dimen>
<dimen name="sp_30">50.0000sp</dimen>
<dimen name="sp_32">53.3333sp</dimen>
<dimen name="sp_34">56.6667sp</dimen>
<dimen name="sp_36">60.0000sp</dimen>
<dimen name="sp_38">63.3333sp</dimen>
<dimen name="sp_40">66.6667sp</dimen>
<dimen name="sp_42">70.0000sp</dimen>
<dimen name="sp_48">80.0000sp</dimen>
</resources>
<?xml version="1.0" encoding="UTF-8"?>
<resources>
<dimen name="activity_horizontal_margin">28.4444dp</dimen>
<dimen name="activity_vertical_margin">28.4444dp</dimen>
<dimen name="title_bar_head">88.8889dp</dimen>
<dimen name="card_common_margin_left">@dimen/dp_15</dimen>
<dimen name="dp_m_60">-106.6667dp</dimen>
<dimen name="dp_m_30">-53.3333dp</dimen>
<dimen name="dp_m_20">-35.5556dp</dimen>
<dimen name="dp_m_12">-21.3333dp</dimen>
<dimen name="dp_m_10">-17.7778dp</dimen>
<dimen name="dp_m_8">-14.2222dp</dimen>
<dimen name="dp_m_5">-8.8889dp</dimen>
<dimen name="dp_m_2">-3.5556dp</dimen>
<dimen name="dp_m_1">-1.7778dp</dimen>
<dimen name="dp_0">0.0000dp</dimen>
<dimen name="dp_0_1">0.1778dp</dimen>
<dimen name="dp_0_5">0.8889dp</dimen>
<dimen name="dp_1">1.7778dp</dimen>
<dimen name="dp_1_5">2.6667dp</dimen>
<dimen name="dp_2">3.5556dp</dimen>
<dimen name="dp_2_5">4.4444dp</dimen>
<dimen name="dp_3">5.3333dp</dimen>
<dimen name="dp_3_5">6.2222dp</dimen>
<dimen name="dp_4">7.1111dp</dimen>
<dimen name="dp_4_5">8.0000dp</dimen>
<dimen name="dp_5">8.8889dp</dimen>
<dimen name="dp_6">10.6667dp</dimen>
<dimen name="dp_7">12.4444dp</dimen>
<dimen name="dp_7_5">13.3333dp</dimen>
<dimen name="dp_8">14.2222dp</dimen>
<dimen name="dp_9">16.0000dp</dimen>
<dimen name="dp_10">17.7778dp</dimen>
<dimen name="dp_11">19.5556dp</dimen>
<dimen name="dp_12">21.3333dp</dimen>
<dimen name="dp_13">23.1111dp</dimen>
<dimen name="dp_14">24.8889dp</dimen>
<dimen name="dp_15">26.6667dp</dimen>
<dimen name="dp_16">28.4444dp</dimen>
<dimen name="dp_17">30.2222dp</dimen>
<dimen name="dp_18">32.0000dp</dimen>
<dimen name="dp_19">33.7778dp</dimen>
<dimen name="dp_20">35.5556dp</dimen>
<dimen name="dp_21">37.3333dp</dimen>
<dimen name="dp_22">39.1111dp</dimen>
<dimen name="dp_23">40.8889dp</dimen>
<dimen name="dp_24">42.6667dp</dimen>
<dimen name="dp_25">44.4444dp</dimen>
<dimen name="dp_26">46.2222dp</dimen>
<dimen name="dp_27">48.0000dp</dimen>
<dimen name="dp_28">49.7778dp</dimen>
<dimen name="dp_29">51.5556dp</dimen>
<dimen name="dp_30">53.3333dp</dimen>
<dimen name="dp_31">55.1111dp</dimen>
<dimen name="dp_32">56.8889dp</dimen>
<dimen name="dp_33">58.6667dp</dimen>
<dimen name="dp_34">60.4444dp</dimen>
<dimen name="dp_35">62.2222dp</dimen>
<dimen name="dp_36">64.0000dp</dimen>
<dimen name="dp_37">65.7778dp</dimen>
<dimen name="dp_38">67.5556dp</dimen>
<dimen name="dp_39">69.3333dp</dimen>
<dimen name="dp_40">71.1111dp</dimen>
<dimen name="dp_41">72.8889dp</dimen>
<dimen name="dp_42">74.6667dp</dimen>
<dimen name="dp_43">76.4444dp</dimen>
<dimen name="dp_44">78.2222dp</dimen>
<dimen name="dp_45">80.0000dp</dimen>
<dimen name="dp_46">81.7778dp</dimen>
<dimen name="dp_47">83.5556dp</dimen>
<dimen name="dp_48">85.3333dp</dimen>
<dimen name="dp_49">87.1111dp</dimen>
<dimen name="dp_50">88.8889dp</dimen>
<dimen name="dp_51">90.6667dp</dimen>
<dimen name="dp_52">92.4444dp</dimen>
<dimen name="dp_53">94.2222dp</dimen>
<dimen name="dp_54">96.0000dp</dimen>
<dimen name="dp_55">97.7778dp</dimen>
<dimen name="dp_56">99.5556dp</dimen>
<dimen name="dp_57">101.3333dp</dimen>
<dimen name="dp_58">103.1111dp</dimen>
<dimen name="dp_59">104.8889dp</dimen>
<dimen name="dp_60">106.6667dp</dimen>
<dimen name="dp_61">108.4444dp</dimen>
<dimen name="dp_62">110.2222dp</dimen>
<dimen name="dp_63">112.0000dp</dimen>
<dimen name="dp_64">113.7778dp</dimen>
<dimen name="dp_65">115.5556dp</dimen>
<dimen name="dp_66">117.3333dp</dimen>
<dimen name="dp_67">119.1111dp</dimen>
<dimen name="dp_68">120.8889dp</dimen>
<dimen name="dp_69">122.6667dp</dimen>
<dimen name="dp_70">124.4444dp</dimen>
<dimen name="dp_71">126.2222dp</dimen>
<dimen name="dp_72">128.0000dp</dimen>
<dimen name="dp_73">129.7778dp</dimen>
<dimen name="dp_74">131.5556dp</dimen>
<dimen name="dp_75">133.3333dp</dimen>
<dimen name="dp_76">135.1111dp</dimen>
<dimen name="dp_77">136.8889dp</dimen>
<dimen name="dp_78">138.6667dp</dimen>
<dimen name="dp_79">140.4444dp</dimen>
<dimen name="dp_80">142.2222dp</dimen>
<dimen name="dp_81">144.0000dp</dimen>
<dimen name="dp_82">145.7778dp</dimen>
<dimen name="dp_83">147.5556dp</dimen>
<dimen name="dp_84">149.3333dp</dimen>
<dimen name="dp_85">151.1111dp</dimen>
<dimen name="dp_86">152.8889dp</dimen>
<dimen name="dp_87">154.6667dp</dimen>
<dimen name="dp_88">156.4444dp</dimen>
<dimen name="dp_89">158.2222dp</dimen>
<dimen name="dp_90">160.0000dp</dimen>
<dimen name="dp_91">161.7778dp</dimen>
<dimen name="dp_92">163.5556dp</dimen>
<dimen name="dp_93">165.3333dp</dimen>
<dimen name="dp_94">167.1111dp</dimen>
<dimen name="dp_95">168.8889dp</dimen>
<dimen name="dp_96">170.6667dp</dimen>
<dimen name="dp_97">172.4444dp</dimen>
<dimen name="dp_98">174.2222dp</dimen>
<dimen name="dp_99">176.0000dp</dimen>
<dimen name="dp_100">177.7778dp</dimen>
<dimen name="dp_101">179.5556dp</dimen>
<dimen name="dp_102">181.3333dp</dimen>
<dimen name="dp_103">183.1111dp</dimen>
<dimen name="dp_104">184.8889dp</dimen>
<dimen name="dp_104_5">185.7778dp</dimen>
<dimen name="dp_105">186.6667dp</dimen>
<dimen name="dp_106">188.4444dp</dimen>
<dimen name="dp_107">190.2222dp</dimen>
<dimen name="dp_108">192.0000dp</dimen>
<dimen name="dp_109">193.7778dp</dimen>
<dimen name="dp_110">195.5556dp</dimen>
<dimen name="dp_111">197.3333dp</dimen>
<dimen name="dp_112">199.1111dp</dimen>
<dimen name="dp_113">200.8889dp</dimen>
<dimen name="dp_114">202.6667dp</dimen>
<dimen name="dp_115">204.4444dp</dimen>
<dimen name="dp_116">206.2222dp</dimen>
<dimen name="dp_117">208.0000dp</dimen>
<dimen name="dp_118">209.7778dp</dimen>
<dimen name="dp_119">211.5556dp</dimen>
<dimen name="dp_120">213.3333dp</dimen>
<dimen name="dp_121">215.1111dp</dimen>
<dimen name="dp_122">216.8889dp</dimen>
<dimen name="dp_123">218.6667dp</dimen>
<dimen name="dp_124">220.4444dp</dimen>
<dimen name="dp_125">222.2222dp</dimen>
<dimen name="dp_126">224.0000dp</dimen>
<dimen name="dp_127">225.7778dp</dimen>
<dimen name="dp_128">227.5556dp</dimen>
<dimen name="dp_129">229.3333dp</dimen>
<dimen name="dp_130">231.1111dp</dimen>
<dimen name="dp_131">232.8889dp</dimen>
<dimen name="dp_132">234.6667dp</dimen>
<dimen name="dp_133">236.4444dp</dimen>
<dimen name="dp_134">238.2222dp</dimen>
<dimen name="dp_134_5">239.1111dp</dimen>
<dimen name="dp_135">240.0000dp</dimen>
<dimen name="dp_136">241.7778dp</dimen>
<dimen name="dp_137">243.5556dp</dimen>
<dimen name="dp_138">245.3333dp</dimen>
<dimen name="dp_139">247.1111dp</dimen>
<dimen name="dp_140">248.8889dp</dimen>
<dimen name="dp_141">250.6667dp</dimen>
<dimen name="dp_142">252.4444dp</dimen>
<dimen name="dp_143">254.2222dp</dimen>
<dimen name="dp_144">256.0000dp</dimen>
<dimen name="dp_145">257.7778dp</dimen>
<dimen name="dp_146">259.5556dp</dimen>
<dimen name="dp_147">261.3333dp</dimen>
<dimen name="dp_148">263.1111dp</dimen>
<dimen name="dp_149">264.8889dp</dimen>
<dimen name="dp_150">266.6667dp</dimen>
<dimen name="dp_151">268.4444dp</dimen>
<dimen name="dp_152">270.2222dp</dimen>
<dimen name="dp_153">272.0000dp</dimen>
<dimen name="dp_154">273.7778dp</dimen>
<dimen name="dp_155">275.5556dp</dimen>
<dimen name="dp_156">277.3333dp</dimen>
<dimen name="dp_157">279.1111dp</dimen>
<dimen name="dp_158">280.8889dp</dimen>
<dimen name="dp_159">282.6667dp</dimen>
<dimen name="dp_160">284.4444dp</dimen>
<dimen name="dp_161">286.2222dp</dimen>
<dimen name="dp_162">288.0000dp</dimen>
<dimen name="dp_163">289.7778dp</dimen>
<dimen name="dp_164">291.5556dp</dimen>
<dimen name="dp_165">293.3333dp</dimen>
<dimen name="dp_166">295.1111dp</dimen>
<dimen name="dp_167">296.8889dp</dimen>
<dimen name="dp_168">298.6667dp</dimen>
<dimen name="dp_169">300.4444dp</dimen>
<dimen name="dp_170">302.2222dp</dimen>
<dimen name="dp_171">304.0000dp</dimen>
<dimen name="dp_172">305.7778dp</dimen>
<dimen name="dp_173">307.5556dp</dimen>
<dimen name="dp_174">309.3333dp</dimen>
<dimen name="dp_175">311.1111dp</dimen>
<dimen name="dp_176">312.8889dp</dimen>
<dimen name="dp_177">314.6667dp</dimen>
<dimen name="dp_178">316.4444dp</dimen>
<dimen name="dp_179">318.2222dp</dimen>
<dimen name="dp_180">320.0000dp</dimen>
<dimen name="dp_181">321.7778dp</dimen>
<dimen name="dp_182">323.5556dp</dimen>
<dimen name="dp_183">325.3333dp</dimen>
<dimen name="dp_184">327.1111dp</dimen>
<dimen name="dp_185">328.8889dp</dimen>
<dimen name="dp_186">330.6667dp</dimen>
<dimen name="dp_187">332.4444dp</dimen>
<dimen name="dp_188">334.2222dp</dimen>
<dimen name="dp_189">336.0000dp</dimen>
<dimen name="dp_190">337.7778dp</dimen>
<dimen name="dp_191">339.5556dp</dimen>
<dimen name="dp_191_25">340.0000dp</dimen>
<dimen name="dp_192">341.3333dp</dimen>
<dimen name="dp_193">343.1111dp</dimen>
<dimen name="dp_194">344.8889dp</dimen>
<dimen name="dp_195">346.6667dp</dimen>
<dimen name="dp_196">348.4444dp</dimen>
<dimen name="dp_197">350.2222dp</dimen>
<dimen name="dp_198">352.0000dp</dimen>
<dimen name="dp_199">353.7778dp</dimen>
<dimen name="dp_200">355.5556dp</dimen>
<dimen name="dp_201">357.3333dp</dimen>
<dimen name="dp_202">359.1111dp</dimen>
<dimen name="dp_203">360.8889dp</dimen>
<dimen name="dp_204">362.6667dp</dimen>
<dimen name="dp_205">364.4444dp</dimen>
<dimen name="dp_206">366.2222dp</dimen>
<dimen name="dp_207">368.0000dp</dimen>
<dimen name="dp_208">369.7778dp</dimen>
<dimen name="dp_209">371.5556dp</dimen>
<dimen name="dp_210">373.3333dp</dimen>
<dimen name="dp_211">375.1111dp</dimen>
<dimen name="dp_212">376.8889dp</dimen>
<dimen name="dp_213">378.6667dp</dimen>
<dimen name="dp_214">380.4444dp</dimen>
<dimen name="dp_215">382.2222dp</dimen>
<dimen name="dp_216">384.0000dp</dimen>
<dimen name="dp_217">385.7778dp</dimen>
<dimen name="dp_218">387.5556dp</dimen>
<dimen name="dp_219">389.3333dp</dimen>
<dimen name="dp_220">391.1111dp</dimen>
<dimen name="dp_221">392.8889dp</dimen>
<dimen name="dp_222">394.6667dp</dimen>
<dimen name="dp_223">396.4444dp</dimen>
<dimen name="dp_224">398.2222dp</dimen>
<dimen name="dp_225">400.0000dp</dimen>
<dimen name="dp_226">401.7778dp</dimen>
<dimen name="dp_227">403.5556dp</dimen>
<dimen name="dp_228">405.3333dp</dimen>
<dimen name="dp_229">407.1111dp</dimen>
<dimen name="dp_230">408.8889dp</dimen>
<dimen name="dp_231">410.6667dp</dimen>
<dimen name="dp_232">412.4444dp</dimen>
<dimen name="dp_233">414.2222dp</dimen>
<dimen name="dp_234">416.0000dp</dimen>
<dimen name="dp_235">417.7778dp</dimen>
<dimen name="dp_236">419.5556dp</dimen>
<dimen name="dp_237">421.3333dp</dimen>
<dimen name="dp_238">423.1111dp</dimen>
<dimen name="dp_239">424.8889dp</dimen>
<dimen name="dp_240">426.6667dp</dimen>
<dimen name="dp_241">428.4444dp</dimen>
<dimen name="dp_242">430.2222dp</dimen>
<dimen name="dp_243">432.0000dp</dimen>
<dimen name="dp_244">433.7778dp</dimen>
<dimen name="dp_245">435.5556dp</dimen>
<dimen name="dp_246">437.3333dp</dimen>
<dimen name="dp_247">439.1111dp</dimen>
<dimen name="dp_248">440.8889dp</dimen>
<dimen name="dp_249">442.6667dp</dimen>
<dimen name="dp_250">444.4444dp</dimen>
<dimen name="dp_251">446.2222dp</dimen>
<dimen name="dp_252">448.0000dp</dimen>
<dimen name="dp_253">449.7778dp</dimen>
<dimen name="dp_254">451.5556dp</dimen>
<dimen name="dp_255">453.3333dp</dimen>
<dimen name="dp_256">455.1111dp</dimen>
<dimen name="dp_257">456.8889dp</dimen>
<dimen name="dp_258">458.6667dp</dimen>
<dimen name="dp_259">460.4444dp</dimen>
<dimen name="dp_260">462.2222dp</dimen>
<dimen name="dp_261">464.0000dp</dimen>
<dimen name="dp_262">465.7778dp</dimen>
<dimen name="dp_263">467.5556dp</dimen>
<dimen name="dp_264">469.3333dp</dimen>
<dimen name="dp_265">471.1111dp</dimen>
<dimen name="dp_266">472.8889dp</dimen>
<dimen name="dp_267">474.6667dp</dimen>
<dimen name="dp_268">476.4444dp</dimen>
<dimen name="dp_269">478.2222dp</dimen>
<dimen name="dp_270">480.0000dp</dimen>
<dimen name="dp_271">481.7778dp</dimen>
<dimen name="dp_272">483.5556dp</dimen>
<dimen name="dp_273">485.3333dp</dimen>
<dimen name="dp_274">487.1111dp</dimen>
<dimen name="dp_275">488.8889dp</dimen>
<dimen name="dp_276">490.6667dp</dimen>
<dimen name="dp_277">492.4444dp</dimen>
<dimen name="dp_278">494.2222dp</dimen>
<dimen name="dp_279">496.0000dp</dimen>
<dimen name="dp_280">497.7778dp</dimen>
<dimen name="dp_281">499.5556dp</dimen>
<dimen name="dp_282">501.3333dp</dimen>
<dimen name="dp_283">503.1111dp</dimen>
<dimen name="dp_284">504.8889dp</dimen>
<dimen name="dp_285">506.6667dp</dimen>
<dimen name="dp_286">508.4444dp</dimen>
<dimen name="dp_287">510.2222dp</dimen>
<dimen name="dp_288">512.0000dp</dimen>
<dimen name="dp_289">513.7778dp</dimen>
<dimen name="dp_290">515.5556dp</dimen>
<dimen name="dp_291">517.3333dp</dimen>
<dimen name="dp_292">519.1111dp</dimen>
<dimen name="dp_293">520.8889dp</dimen>
<dimen name="dp_294">522.6667dp</dimen>
<dimen name="dp_295">524.4444dp</dimen>
<dimen name="dp_296">526.2222dp</dimen>
<dimen name="dp_297">528.0000dp</dimen>
<dimen name="dp_298">529.7778dp</dimen>
<dimen name="dp_299">531.5556dp</dimen>
<dimen name="dp_300">533.3333dp</dimen>
<dimen name="dp_301">535.1111dp</dimen>
<dimen name="dp_302">536.8889dp</dimen>
<dimen name="dp_303">538.6667dp</dimen>
<dimen name="dp_304">540.4444dp</dimen>
<dimen name="dp_305">542.2222dp</dimen>
<dimen name="dp_306">544.0000dp</dimen>
<dimen name="dp_307">545.7778dp</dimen>
<dimen name="dp_308">547.5556dp</dimen>
<dimen name="dp_309">549.3333dp</dimen>
<dimen name="dp_310">551.1111dp</dimen>
<dimen name="dp_311">552.8889dp</dimen>
<dimen name="dp_312">554.6667dp</dimen>
<dimen name="dp_313">556.4444dp</dimen>
<dimen name="dp_314">558.2222dp</dimen>
<dimen name="dp_315">560.0000dp</dimen>
<dimen name="dp_316">561.7778dp</dimen>
<dimen name="dp_317">563.5556dp</dimen>
<dimen name="dp_318">565.3333dp</dimen>
<dimen name="dp_319">567.1111dp</dimen>
<dimen name="dp_320">568.8889dp</dimen>
<dimen name="dp_321">570.6667dp</dimen>
<dimen name="dp_322">572.4444dp</dimen>
<dimen name="dp_323">574.2222dp</dimen>
<dimen name="dp_324">576.0000dp</dimen>
<dimen name="dp_325">577.7778dp</dimen>
<dimen name="dp_326">579.5556dp</dimen>
<dimen name="dp_327">581.3333dp</dimen>
<dimen name="dp_328">583.1111dp</dimen>
<dimen name="dp_329">584.8889dp</dimen>
<dimen name="dp_330">586.6667dp</dimen>
<dimen name="dp_331">588.4444dp</dimen>
<dimen name="dp_332">590.2222dp</dimen>
<dimen name="dp_333">592.0000dp</dimen>
<dimen name="dp_334">593.7778dp</dimen>
<dimen name="dp_335">595.5556dp</dimen>
<dimen name="dp_336">597.3333dp</dimen>
<dimen name="dp_337">599.1111dp</dimen>
<dimen name="dp_338">600.8889dp</dimen>
<dimen name="dp_339">602.6667dp</dimen>
<dimen name="dp_340">604.4444dp</dimen>
<dimen name="dp_341">606.2222dp</dimen>
<dimen name="dp_342">608.0000dp</dimen>
<dimen name="dp_343">609.7778dp</dimen>
<dimen name="dp_344">611.5556dp</dimen>
<dimen name="dp_345">613.3333dp</dimen>
<dimen name="dp_346">615.1111dp</dimen>
<dimen name="dp_347">616.8889dp</dimen>
<dimen name="dp_348">618.6667dp</dimen>
<dimen name="dp_349">620.4444dp</dimen>
<dimen name="dp_350">622.2222dp</dimen>
<dimen name="dp_351">624.0000dp</dimen>
<dimen name="dp_352">625.7778dp</dimen>
<dimen name="dp_353">627.5556dp</dimen>
<dimen name="dp_354">629.3333dp</dimen>
<dimen name="dp_355">631.1111dp</dimen>
<dimen name="dp_356">632.8889dp</dimen>
<dimen name="dp_357">634.6667dp</dimen>
<dimen name="dp_358">636.4444dp</dimen>
<dimen name="dp_359">638.2222dp</dimen>
<dimen name="dp_360">640.0000dp</dimen>
<dimen name="dp_365">648.8889dp</dimen>
<dimen name="dp_370">657.7778dp</dimen>
<dimen name="dp_400">711.1111dp</dimen>
<dimen name="dp_410">728.8889dp</dimen>
<dimen name="dp_422">750.2222dp</dimen>
<dimen name="dp_472">839.1111dp</dimen>
<dimen name="dp_500">888.8889dp</dimen>
<dimen name="dp_600">1066.6667dp</dimen>
<dimen name="dp_640">1137.7778dp</dimen>
<dimen name="dp_720">1280.0000dp</dimen>
<dimen name="sp_6">10.6667sp</dimen>
<dimen name="sp_7">12.4444sp</dimen>
<dimen name="sp_8">14.2222sp</dimen>
<dimen name="sp_9">16.0000sp</dimen>
<dimen name="sp_10">17.7778sp</dimen>
<dimen name="sp_11">19.5556sp</dimen>
<dimen name="sp_12">21.3333sp</dimen>
<dimen name="sp_13">23.1111sp</dimen>
<dimen name="sp_14">24.8889sp</dimen>
<dimen name="sp_15">26.6667sp</dimen>
<dimen name="sp_16">28.4444sp</dimen>
<dimen name="sp_17">30.2222sp</dimen>
<dimen name="sp_18">32.0000sp</dimen>
<dimen name="sp_19">33.7778sp</dimen>
<dimen name="sp_20">35.5556sp</dimen>
<dimen name="sp_21">37.3333sp</dimen>
<dimen name="sp_22">39.1111sp</dimen>
<dimen name="sp_23">40.8889sp</dimen>
<dimen name="sp_24">42.6667sp</dimen>
<dimen name="sp_25">44.4444sp</dimen>
<dimen name="sp_28">49.7778sp</dimen>
<dimen name="sp_30">53.3333sp</dimen>
<dimen name="sp_32">56.8889sp</dimen>
<dimen name="sp_34">60.4444sp</dimen>
<dimen name="sp_36">64.0000sp</dimen>
<dimen name="sp_38">67.5556sp</dimen>
<dimen name="sp_40">71.1111sp</dimen>
<dimen name="sp_42">74.6667sp</dimen>
<dimen name="sp_48">85.3333sp</dimen>
</resources>
<?xml version="1.0" encoding="UTF-8"?>
<resources>
<dimen name="activity_horizontal_margin">29.4222dp</dimen>
<dimen name="activity_vertical_margin">29.4222dp</dimen>
<dimen name="title_bar_head">91.9444dp</dimen>
<dimen name="card_common_margin_left">@dimen/dp_15</dimen>
<dimen name="dp_m_60">-110.3333dp</dimen>
<dimen name="dp_m_30">-55.1667dp</dimen>
<dimen name="dp_m_20">-36.7778dp</dimen>
<dimen name="dp_m_12">-22.0667dp</dimen>
<dimen name="dp_m_10">-18.3889dp</dimen>
<dimen name="dp_m_8">-14.7111dp</dimen>
<dimen name="dp_m_5">-9.1944dp</dimen>
<dimen name="dp_m_2">-3.6778dp</dimen>
<dimen name="dp_m_1">-1.8389dp</dimen>
<dimen name="dp_0">0.0000dp</dimen>
<dimen name="dp_0_1">0.1839dp</dimen>
<dimen name="dp_0_5">0.9194dp</dimen>
<dimen name="dp_1">1.8389dp</dimen>
<dimen name="dp_1_5">2.7583dp</dimen>
<dimen name="dp_2">3.6778dp</dimen>
<dimen name="dp_2_5">4.5972dp</dimen>
<dimen name="dp_3">5.5167dp</dimen>
<dimen name="dp_3_5">6.4361dp</dimen>
<dimen name="dp_4">7.3556dp</dimen>
<dimen name="dp_4_5">8.2750dp</dimen>
<dimen name="dp_5">9.1944dp</dimen>
<dimen name="dp_6">11.0333dp</dimen>
<dimen name="dp_7">12.8722dp</dimen>
<dimen name="dp_7_5">13.7917dp</dimen>
<dimen name="dp_8">14.7111dp</dimen>
<dimen name="dp_9">16.5500dp</dimen>
<dimen name="dp_10">18.3889dp</dimen>
<dimen name="dp_11">20.2278dp</dimen>
<dimen name="dp_12">22.0667dp</dimen>
<dimen name="dp_13">23.9056dp</dimen>
<dimen name="dp_14">25.7444dp</dimen>
<dimen name="dp_15">27.5833dp</dimen>
<dimen name="dp_16">29.4222dp</dimen>
<dimen name="dp_17">31.2611dp</dimen>
<dimen name="dp_18">33.1000dp</dimen>
<dimen name="dp_19">34.9389dp</dimen>
<dimen name="dp_20">36.7778dp</dimen>
<dimen name="dp_21">38.6167dp</dimen>
<dimen name="dp_22">40.4556dp</dimen>
<dimen name="dp_23">42.2944dp</dimen>
<dimen name="dp_24">44.1333dp</dimen>
<dimen name="dp_25">45.9722dp</dimen>
<dimen name="dp_26">47.8111dp</dimen>
<dimen name="dp_27">49.6500dp</dimen>
<dimen name="dp_28">51.4889dp</dimen>
<dimen name="dp_29">53.3278dp</dimen>
<dimen name="dp_30">55.1667dp</dimen>
<dimen name="dp_31">57.0056dp</dimen>
<dimen name="dp_32">58.8444dp</dimen>
<dimen name="dp_33">60.6833dp</dimen>
<dimen name="dp_34">62.5222dp</dimen>
<dimen name="dp_35">64.3611dp</dimen>
<dimen name="dp_36">66.2000dp</dimen>
<dimen name="dp_37">68.0389dp</dimen>
<dimen name="dp_38">69.8778dp</dimen>
<dimen name="dp_39">71.7167dp</dimen>
<dimen name="dp_40">73.5556dp</dimen>
<dimen name="dp_41">75.3944dp</dimen>
<dimen name="dp_42">77.2333dp</dimen>
<dimen name="dp_43">79.0722dp</dimen>
<dimen name="dp_44">80.9111dp</dimen>
<dimen name="dp_45">82.7500dp</dimen>
<dimen name="dp_46">84.5889dp</dimen>
<dimen name="dp_47">86.4278dp</dimen>
<dimen name="dp_48">88.2667dp</dimen>
<dimen name="dp_49">90.1056dp</dimen>
<dimen name="dp_50">91.9444dp</dimen>
<dimen name="dp_51">93.7833dp</dimen>
<dimen name="dp_52">95.6222dp</dimen>
<dimen name="dp_53">97.4611dp</dimen>
<dimen name="dp_54">99.3000dp</dimen>
<dimen name="dp_55">101.1389dp</dimen>
<dimen name="dp_56">102.9778dp</dimen>
<dimen name="dp_57">104.8167dp</dimen>
<dimen name="dp_58">106.6556dp</dimen>
<dimen name="dp_59">108.4944dp</dimen>
<dimen name="dp_60">110.3333dp</dimen>
<dimen name="dp_61">112.1722dp</dimen>
<dimen name="dp_62">114.0111dp</dimen>
<dimen name="dp_63">115.8500dp</dimen>
<dimen name="dp_64">117.6889dp</dimen>
<dimen name="dp_65">119.5278dp</dimen>
<dimen name="dp_66">121.3667dp</dimen>
<dimen name="dp_67">123.2056dp</dimen>
<dimen name="dp_68">125.0444dp</dimen>
<dimen name="dp_69">126.8833dp</dimen>
<dimen name="dp_70">128.7222dp</dimen>
<dimen name="dp_71">130.5611dp</dimen>
<dimen name="dp_72">132.4000dp</dimen>
<dimen name="dp_73">134.2389dp</dimen>
<dimen name="dp_74">136.0778dp</dimen>
<dimen name="dp_75">137.9167dp</dimen>
<dimen name="dp_76">139.7556dp</dimen>
<dimen name="dp_77">141.5944dp</dimen>
<dimen name="dp_78">143.4333dp</dimen>
<dimen name="dp_79">145.2722dp</dimen>
<dimen name="dp_80">147.1111dp</dimen>
<dimen name="dp_81">148.9500dp</dimen>
<dimen name="dp_82">150.7889dp</dimen>
<dimen name="dp_83">152.6278dp</dimen>
<dimen name="dp_84">154.4667dp</dimen>
<dimen name="dp_85">156.3056dp</dimen>
<dimen name="dp_86">158.1444dp</dimen>
<dimen name="dp_87">159.9833dp</dimen>
<dimen name="dp_88">161.8222dp</dimen>
<dimen name="dp_89">163.6611dp</dimen>
<dimen name="dp_90">165.5000dp</dimen>
<dimen name="dp_91">167.3389dp</dimen>
<dimen name="dp_92">169.1778dp</dimen>
<dimen name="dp_93">171.0167dp</dimen>
<dimen name="dp_94">172.8556dp</dimen>
<dimen name="dp_95">174.6944dp</dimen>
<dimen name="dp_96">176.5333dp</dimen>
<dimen name="dp_97">178.3722dp</dimen>
<dimen name="dp_98">180.2111dp</dimen>
<dimen name="dp_99">182.0500dp</dimen>
<dimen name="dp_100">183.8889dp</dimen>
<dimen name="dp_101">185.7278dp</dimen>
<dimen name="dp_102">187.5667dp</dimen>
<dimen name="dp_103">189.4056dp</dimen>
<dimen name="dp_104">191.2444dp</dimen>
<dimen name="dp_104_5">192.1639dp</dimen>
<dimen name="dp_105">193.0833dp</dimen>
<dimen name="dp_106">194.9222dp</dimen>
<dimen name="dp_107">196.7611dp</dimen>
<dimen name="dp_108">198.6000dp</dimen>
<dimen name="dp_109">200.4389dp</dimen>
<dimen name="dp_110">202.2778dp</dimen>
<dimen name="dp_111">204.1167dp</dimen>
<dimen name="dp_112">205.9556dp</dimen>
<dimen name="dp_113">207.7944dp</dimen>
<dimen name="dp_114">209.6333dp</dimen>
<dimen name="dp_115">211.4722dp</dimen>
<dimen name="dp_116">213.3111dp</dimen>
<dimen name="dp_117">215.1500dp</dimen>
<dimen name="dp_118">216.9889dp</dimen>
<dimen name="dp_119">218.8278dp</dimen>
<dimen name="dp_120">220.6667dp</dimen>
<dimen name="dp_121">222.5056dp</dimen>
<dimen name="dp_122">224.3444dp</dimen>
<dimen name="dp_123">226.1833dp</dimen>
<dimen name="dp_124">228.0222dp</dimen>
<dimen name="dp_125">229.8611dp</dimen>
<dimen name="dp_126">231.7000dp</dimen>
<dimen name="dp_127">233.5389dp</dimen>
<dimen name="dp_128">235.3778dp</dimen>
<dimen name="dp_129">237.2167dp</dimen>
<dimen name="dp_130">239.0556dp</dimen>
<dimen name="dp_131">240.8944dp</dimen>
<dimen name="dp_132">242.7333dp</dimen>
<dimen name="dp_133">244.5722dp</dimen>
<dimen name="dp_134">246.4111dp</dimen>
<dimen name="dp_134_5">247.3306dp</dimen>
<dimen name="dp_135">248.2500dp</dimen>
<dimen name="dp_136">250.0889dp</dimen>
<dimen name="dp_137">251.9278dp</dimen>
<dimen name="dp_138">253.7667dp</dimen>
<dimen name="dp_139">255.6056dp</dimen>
<dimen name="dp_140">257.4444dp</dimen>
<dimen name="dp_141">259.2833dp</dimen>
<dimen name="dp_142">261.1222dp</dimen>
<dimen name="dp_143">262.9611dp</dimen>
<dimen name="dp_144">264.8000dp</dimen>
<dimen name="dp_145">266.6389dp</dimen>
<dimen name="dp_146">268.4778dp</dimen>
<dimen name="dp_147">270.3167dp</dimen>
<dimen name="dp_148">272.1556dp</dimen>
<dimen name="dp_149">273.9944dp</dimen>
<dimen name="dp_150">275.8333dp</dimen>
<dimen name="dp_151">277.6722dp</dimen>
<dimen name="dp_152">279.5111dp</dimen>
<dimen name="dp_153">281.3500dp</dimen>
<dimen name="dp_154">283.1889dp</dimen>
<dimen name="dp_155">285.0278dp</dimen>
<dimen name="dp_156">286.8667dp</dimen>
<dimen name="dp_157">288.7056dp</dimen>
<dimen name="dp_158">290.5444dp</dimen>
<dimen name="dp_159">292.3833dp</dimen>
<dimen name="dp_160">294.2222dp</dimen>
<dimen name="dp_161">296.0611dp</dimen>
<dimen name="dp_162">297.9000dp</dimen>
<dimen name="dp_163">299.7389dp</dimen>
<dimen name="dp_164">301.5778dp</dimen>
<dimen name="dp_165">303.4167dp</dimen>
<dimen name="dp_166">305.2556dp</dimen>
<dimen name="dp_167">307.0944dp</dimen>
<dimen name="dp_168">308.9333dp</dimen>
<dimen name="dp_169">310.7722dp</dimen>
<dimen name="dp_170">312.6111dp</dimen>
<dimen name="dp_171">314.4500dp</dimen>
<dimen name="dp_172">316.2889dp</dimen>
<dimen name="dp_173">318.1278dp</dimen>
<dimen name="dp_174">319.9667dp</dimen>
<dimen name="dp_175">321.8056dp</dimen>
<dimen name="dp_176">323.6444dp</dimen>
<dimen name="dp_177">325.4833dp</dimen>
<dimen name="dp_178">327.3222dp</dimen>
<dimen name="dp_179">329.1611dp</dimen>
<dimen name="dp_180">331.0000dp</dimen>
<dimen name="dp_181">332.8389dp</dimen>
<dimen name="dp_182">334.6778dp</dimen>
<dimen name="dp_183">336.5167dp</dimen>
<dimen name="dp_184">338.3556dp</dimen>
<dimen name="dp_185">340.1944dp</dimen>
<dimen name="dp_186">342.0333dp</dimen>
<dimen name="dp_187">343.8722dp</dimen>
<dimen name="dp_188">345.7111dp</dimen>
<dimen name="dp_189">347.5500dp</dimen>
<dimen name="dp_190">349.3889dp</dimen>
<dimen name="dp_191">351.2278dp</dimen>
<dimen name="dp_191_25">351.6875dp</dimen>
<dimen name="dp_192">353.0667dp</dimen>
<dimen name="dp_193">354.9056dp</dimen>
<dimen name="dp_194">356.7444dp</dimen>
<dimen name="dp_195">358.5833dp</dimen>
<dimen name="dp_196">360.4222dp</dimen>
<dimen name="dp_197">362.2611dp</dimen>
<dimen name="dp_198">364.1000dp</dimen>
<dimen name="dp_199">365.9389dp</dimen>
<dimen name="dp_200">367.7778dp</dimen>
<dimen name="dp_201">369.6167dp</dimen>
<dimen name="dp_202">371.4556dp</dimen>
<dimen name="dp_203">373.2944dp</dimen>
<dimen name="dp_204">375.1333dp</dimen>
<dimen name="dp_205">376.9722dp</dimen>
<dimen name="dp_206">378.8111dp</dimen>
<dimen name="dp_207">380.6500dp</dimen>
<dimen name="dp_208">382.4889dp</dimen>
<dimen name="dp_209">384.3278dp</dimen>
<dimen name="dp_210">386.1667dp</dimen>
<dimen name="dp_211">388.0056dp</dimen>
<dimen name="dp_212">389.8444dp</dimen>
<dimen name="dp_213">391.6833dp</dimen>
<dimen name="dp_214">393.5222dp</dimen>
<dimen name="dp_215">395.3611dp</dimen>
<dimen name="dp_216">397.2000dp</dimen>
<dimen name="dp_217">399.0389dp</dimen>
<dimen name="dp_218">400.8778dp</dimen>
<dimen name="dp_219">402.7167dp</dimen>
<dimen name="dp_220">404.5556dp</dimen>
<dimen name="dp_221">406.3944dp</dimen>
<dimen name="dp_222">408.2333dp</dimen>
<dimen name="dp_223">410.0722dp</dimen>
<dimen name="dp_224">411.9111dp</dimen>
<dimen name="dp_225">413.7500dp</dimen>
<dimen name="dp_226">415.5889dp</dimen>
<dimen name="dp_227">417.4278dp</dimen>
<dimen name="dp_228">419.2667dp</dimen>
<dimen name="dp_229">421.1056dp</dimen>
<dimen name="dp_230">422.9444dp</dimen>
<dimen name="dp_231">424.7833dp</dimen>
<dimen name="dp_232">426.6222dp</dimen>
<dimen name="dp_233">428.4611dp</dimen>
<dimen name="dp_234">430.3000dp</dimen>
<dimen name="dp_235">432.1389dp</dimen>
<dimen name="dp_236">433.9778dp</dimen>
<dimen name="dp_237">435.8167dp</dimen>
<dimen name="dp_238">437.6556dp</dimen>
<dimen name="dp_239">439.4944dp</dimen>
<dimen name="dp_240">441.3333dp</dimen>
<dimen name="dp_241">443.1722dp</dimen>
<dimen name="dp_242">445.0111dp</dimen>
<dimen name="dp_243">446.8500dp</dimen>
<dimen name="dp_244">448.6889dp</dimen>
<dimen name="dp_245">450.5278dp</dimen>
<dimen name="dp_246">452.3667dp</dimen>
<dimen name="dp_247">454.2056dp</dimen>
<dimen name="dp_248">456.0444dp</dimen>
<dimen name="dp_249">457.8833dp</dimen>
<dimen name="dp_250">459.7222dp</dimen>
<dimen name="dp_251">461.5611dp</dimen>
<dimen name="dp_252">463.4000dp</dimen>
<dimen name="dp_253">465.2389dp</dimen>
<dimen name="dp_254">467.0778dp</dimen>
<dimen name="dp_255">468.9167dp</dimen>
<dimen name="dp_256">470.7556dp</dimen>
<dimen name="dp_257">472.5944dp</dimen>
<dimen name="dp_258">474.4333dp</dimen>
<dimen name="dp_259">476.2722dp</dimen>
<dimen name="dp_260">478.1111dp</dimen>
<dimen name="dp_261">479.9500dp</dimen>
<dimen name="dp_262">481.7889dp</dimen>
<dimen name="dp_263">483.6278dp</dimen>
<dimen name="dp_264">485.4667dp</dimen>
<dimen name="dp_265">487.3056dp</dimen>
<dimen name="dp_266">489.1444dp</dimen>
<dimen name="dp_267">490.9833dp</dimen>
<dimen name="dp_268">492.8222dp</dimen>
<dimen name="dp_269">494.6611dp</dimen>
<dimen name="dp_270">496.5000dp</dimen>
<dimen name="dp_271">498.3389dp</dimen>
<dimen name="dp_272">500.1778dp</dimen>
<dimen name="dp_273">502.0167dp</dimen>
<dimen name="dp_274">503.8556dp</dimen>
<dimen name="dp_275">505.6944dp</dimen>
<dimen name="dp_276">507.5333dp</dimen>
<dimen name="dp_277">509.3722dp</dimen>
<dimen name="dp_278">511.2111dp</dimen>
<dimen name="dp_279">513.0500dp</dimen>
<dimen name="dp_280">514.8889dp</dimen>
<dimen name="dp_281">516.7278dp</dimen>
<dimen name="dp_282">518.5667dp</dimen>
<dimen name="dp_283">520.4056dp</dimen>
<dimen name="dp_284">522.2444dp</dimen>
<dimen name="dp_285">524.0833dp</dimen>
<dimen name="dp_286">525.9222dp</dimen>
<dimen name="dp_287">527.7611dp</dimen>
<dimen name="dp_288">529.6000dp</dimen>
<dimen name="dp_289">531.4389dp</dimen>
<dimen name="dp_290">533.2778dp</dimen>
<dimen name="dp_291">535.1167dp</dimen>
<dimen name="dp_292">536.9556dp</dimen>
<dimen name="dp_293">538.7944dp</dimen>
<dimen name="dp_294">540.6333dp</dimen>
<dimen name="dp_295">542.4722dp</dimen>
<dimen name="dp_296">544.3111dp</dimen>
<dimen name="dp_297">546.1500dp</dimen>
<dimen name="dp_298">547.9889dp</dimen>
<dimen name="dp_299">549.8278dp</dimen>
<dimen name="dp_300">551.6667dp</dimen>
<dimen name="dp_301">553.5056dp</dimen>
<dimen name="dp_302">555.3444dp</dimen>
<dimen name="dp_303">557.1833dp</dimen>
<dimen name="dp_304">559.0222dp</dimen>
<dimen name="dp_305">560.8611dp</dimen>
<dimen name="dp_306">562.7000dp</dimen>
<dimen name="dp_307">564.5389dp</dimen>
<dimen name="dp_308">566.3778dp</dimen>
<dimen name="dp_309">568.2167dp</dimen>
<dimen name="dp_310">570.0556dp</dimen>
<dimen name="dp_311">571.8944dp</dimen>
<dimen name="dp_312">573.7333dp</dimen>
<dimen name="dp_313">575.5722dp</dimen>
<dimen name="dp_314">577.4111dp</dimen>
<dimen name="dp_315">579.2500dp</dimen>
<dimen name="dp_316">581.0889dp</dimen>
<dimen name="dp_317">582.9278dp</dimen>
<dimen name="dp_318">584.7667dp</dimen>
<dimen name="dp_319">586.6056dp</dimen>
<dimen name="dp_320">588.4444dp</dimen>
<dimen name="dp_321">590.2833dp</dimen>
<dimen name="dp_322">592.1222dp</dimen>
<dimen name="dp_323">593.9611dp</dimen>
<dimen name="dp_324">595.8000dp</dimen>
<dimen name="dp_325">597.6389dp</dimen>
<dimen name="dp_326">599.4778dp</dimen>
<dimen name="dp_327">601.3167dp</dimen>
<dimen name="dp_328">603.1556dp</dimen>
<dimen name="dp_329">604.9944dp</dimen>
<dimen name="dp_330">606.8333dp</dimen>
<dimen name="dp_331">608.6722dp</dimen>
<dimen name="dp_332">610.5111dp</dimen>
<dimen name="dp_333">612.3500dp</dimen>
<dimen name="dp_334">614.1889dp</dimen>
<dimen name="dp_335">616.0278dp</dimen>
<dimen name="dp_336">617.8667dp</dimen>
<dimen name="dp_337">619.7056dp</dimen>
<dimen name="dp_338">621.5444dp</dimen>
<dimen name="dp_339">623.3833dp</dimen>
<dimen name="dp_340">625.2222dp</dimen>
<dimen name="dp_341">627.0611dp</dimen>
<dimen name="dp_342">628.9000dp</dimen>
<dimen name="dp_343">630.7389dp</dimen>
<dimen name="dp_344">632.5778dp</dimen>
<dimen name="dp_345">634.4167dp</dimen>
<dimen name="dp_346">636.2556dp</dimen>
<dimen name="dp_347">638.0944dp</dimen>
<dimen name="dp_348">639.9333dp</dimen>
<dimen name="dp_349">641.7722dp</dimen>
<dimen name="dp_350">643.6111dp</dimen>
<dimen name="dp_351">645.4500dp</dimen>
<dimen name="dp_352">647.2889dp</dimen>
<dimen name="dp_353">649.1278dp</dimen>
<dimen name="dp_354">650.9667dp</dimen>
<dimen name="dp_355">652.8056dp</dimen>
<dimen name="dp_356">654.6444dp</dimen>
<dimen name="dp_357">656.4833dp</dimen>
<dimen name="dp_358">658.3222dp</dimen>
<dimen name="dp_359">660.1611dp</dimen>
<dimen name="dp_360">662.0000dp</dimen>
<dimen name="dp_365">671.1944dp</dimen>
<dimen name="dp_370">680.3889dp</dimen>
<dimen name="dp_400">735.5556dp</dimen>
<dimen name="dp_410">753.9444dp</dimen>
<dimen name="dp_422">776.0111dp</dimen>
<dimen name="dp_472">867.9556dp</dimen>
<dimen name="dp_500">919.4444dp</dimen>
<dimen name="dp_600">1103.3333dp</dimen>
<dimen name="dp_640">1176.8889dp</dimen>
<dimen name="dp_720">1324.0000dp</dimen>
<dimen name="sp_6">11.0333sp</dimen>
<dimen name="sp_7">12.8722sp</dimen>
<dimen name="sp_8">14.7111sp</dimen>
<dimen name="sp_9">16.5500sp</dimen>
<dimen name="sp_10">18.3889sp</dimen>
<dimen name="sp_11">20.2278sp</dimen>
<dimen name="sp_12">22.0667sp</dimen>
<dimen name="sp_13">23.9056sp</dimen>
<dimen name="sp_14">25.7444sp</dimen>
<dimen name="sp_15">27.5833sp</dimen>
<dimen name="sp_16">29.4222sp</dimen>
<dimen name="sp_17">31.2611sp</dimen>
<dimen name="sp_18">33.1000sp</dimen>
<dimen name="sp_19">34.9389sp</dimen>
<dimen name="sp_20">36.7778sp</dimen>
<dimen name="sp_21">38.6167sp</dimen>
<dimen name="sp_22">40.4556sp</dimen>
<dimen name="sp_23">42.2944sp</dimen>
<dimen name="sp_24">44.1333sp</dimen>
<dimen name="sp_25">45.9722sp</dimen>
<dimen name="sp_28">51.4889sp</dimen>
<dimen name="sp_30">55.1667sp</dimen>
<dimen name="sp_32">58.8444sp</dimen>
<dimen name="sp_34">62.5222sp</dimen>
<dimen name="sp_36">66.2000sp</dimen>
<dimen name="sp_38">69.8778sp</dimen>
<dimen name="sp_40">73.5556sp</dimen>
<dimen name="sp_42">77.2333sp</dimen>
<dimen name="sp_48">88.2667sp</dimen>
</resources>
<?xml version="1.0" encoding="UTF-8"?>
<resources>
<dimen name="activity_horizontal_margin">32.0000dp</dimen>
<dimen name="activity_vertical_margin">32.0000dp</dimen>
<dimen name="title_bar_head">100.0000dp</dimen>
<dimen name="card_common_margin_left">@dimen/dp_15</dimen>
<dimen name="dp_m_60">-120.0000dp</dimen>
<dimen name="dp_m_30">-60.0000dp</dimen>
<dimen name="dp_m_20">-40.0000dp</dimen>
<dimen name="dp_m_12">-24.0000dp</dimen>
<dimen name="dp_m_10">-20.0000dp</dimen>
<dimen name="dp_m_8">-16.0000dp</dimen>
<dimen name="dp_m_5">-10.0000dp</dimen>
<dimen name="dp_m_2">-4.0000dp</dimen>
<dimen name="dp_m_1">-2.0000dp</dimen>
<dimen name="dp_0">0.0000dp</dimen>
<dimen name="dp_0_1">0.2000dp</dimen>
<dimen name="dp_0_5">1.0000dp</dimen>
<dimen name="dp_1">2.0000dp</dimen>
<dimen name="dp_1_5">3.0000dp</dimen>
<dimen name="dp_2">4.0000dp</dimen>
<dimen name="dp_2_5">5.0000dp</dimen>
<dimen name="dp_3">6.0000dp</dimen>
<dimen name="dp_3_5">7.0000dp</dimen>
<dimen name="dp_4">8.0000dp</dimen>
<dimen name="dp_4_5">9.0000dp</dimen>
<dimen name="dp_5">10.0000dp</dimen>
<dimen name="dp_6">12.0000dp</dimen>
<dimen name="dp_7">14.0000dp</dimen>
<dimen name="dp_7_5">15.0000dp</dimen>
<dimen name="dp_8">16.0000dp</dimen>
<dimen name="dp_9">18.0000dp</dimen>
<dimen name="dp_10">20.0000dp</dimen>
<dimen name="dp_11">22.0000dp</dimen>
<dimen name="dp_12">24.0000dp</dimen>
<dimen name="dp_13">26.0000dp</dimen>
<dimen name="dp_14">28.0000dp</dimen>
<dimen name="dp_15">30.0000dp</dimen>
<dimen name="dp_16">32.0000dp</dimen>
<dimen name="dp_17">34.0000dp</dimen>
<dimen name="dp_18">36.0000dp</dimen>
<dimen name="dp_19">38.0000dp</dimen>
<dimen name="dp_20">40.0000dp</dimen>
<dimen name="dp_21">42.0000dp</dimen>
<dimen name="dp_22">44.0000dp</dimen>
<dimen name="dp_23">46.0000dp</dimen>
<dimen name="dp_24">48.0000dp</dimen>
<dimen name="dp_25">50.0000dp</dimen>
<dimen name="dp_26">52.0000dp</dimen>
<dimen name="dp_27">54.0000dp</dimen>
<dimen name="dp_28">56.0000dp</dimen>
<dimen name="dp_29">58.0000dp</dimen>
<dimen name="dp_30">60.0000dp</dimen>
<dimen name="dp_31">62.0000dp</dimen>
<dimen name="dp_32">64.0000dp</dimen>
<dimen name="dp_33">66.0000dp</dimen>
<dimen name="dp_34">68.0000dp</dimen>
<dimen name="dp_35">70.0000dp</dimen>
<dimen name="dp_36">72.0000dp</dimen>
<dimen name="dp_37">74.0000dp</dimen>
<dimen name="dp_38">76.0000dp</dimen>
<dimen name="dp_39">78.0000dp</dimen>
<dimen name="dp_40">80.0000dp</dimen>
<dimen name="dp_41">82.0000dp</dimen>
<dimen name="dp_42">84.0000dp</dimen>
<dimen name="dp_43">86.0000dp</dimen>
<dimen name="dp_44">88.0000dp</dimen>
<dimen name="dp_45">90.0000dp</dimen>
<dimen name="dp_46">92.0000dp</dimen>
<dimen name="dp_47">94.0000dp</dimen>
<dimen name="dp_48">96.0000dp</dimen>
<dimen name="dp_49">98.0000dp</dimen>
<dimen name="dp_50">100.0000dp</dimen>
<dimen name="dp_51">102.0000dp</dimen>
<dimen name="dp_52">104.0000dp</dimen>
<dimen name="dp_53">106.0000dp</dimen>
<dimen name="dp_54">108.0000dp</dimen>
<dimen name="dp_55">110.0000dp</dimen>
<dimen name="dp_56">112.0000dp</dimen>
<dimen name="dp_57">114.0000dp</dimen>
<dimen name="dp_58">116.0000dp</dimen>
<dimen name="dp_59">118.0000dp</dimen>
<dimen name="dp_60">120.0000dp</dimen>
<dimen name="dp_61">122.0000dp</dimen>
<dimen name="dp_62">124.0000dp</dimen>
<dimen name="dp_63">126.0000dp</dimen>
<dimen name="dp_64">128.0000dp</dimen>
<dimen name="dp_65">130.0000dp</dimen>
<dimen name="dp_66">132.0000dp</dimen>
<dimen name="dp_67">134.0000dp</dimen>
<dimen name="dp_68">136.0000dp</dimen>
<dimen name="dp_69">138.0000dp</dimen>
<dimen name="dp_70">140.0000dp</dimen>
<dimen name="dp_71">142.0000dp</dimen>
<dimen name="dp_72">144.0000dp</dimen>
<dimen name="dp_73">146.0000dp</dimen>
<dimen name="dp_74">148.0000dp</dimen>
<dimen name="dp_75">150.0000dp</dimen>
<dimen name="dp_76">152.0000dp</dimen>
<dimen name="dp_77">154.0000dp</dimen>
<dimen name="dp_78">156.0000dp</dimen>
<dimen name="dp_79">158.0000dp</dimen>
<dimen name="dp_80">160.0000dp</dimen>
<dimen name="dp_81">162.0000dp</dimen>
<dimen name="dp_82">164.0000dp</dimen>
<dimen name="dp_83">166.0000dp</dimen>
<dimen name="dp_84">168.0000dp</dimen>
<dimen name="dp_85">170.0000dp</dimen>
<dimen name="dp_86">172.0000dp</dimen>
<dimen name="dp_87">174.0000dp</dimen>
<dimen name="dp_88">176.0000dp</dimen>
<dimen name="dp_89">178.0000dp</dimen>
<dimen name="dp_90">180.0000dp</dimen>
<dimen name="dp_91">182.0000dp</dimen>
<dimen name="dp_92">184.0000dp</dimen>
<dimen name="dp_93">186.0000dp</dimen>
<dimen name="dp_94">188.0000dp</dimen>
<dimen name="dp_95">190.0000dp</dimen>
<dimen name="dp_96">192.0000dp</dimen>
<dimen name="dp_97">194.0000dp</dimen>
<dimen name="dp_98">196.0000dp</dimen>
<dimen name="dp_99">198.0000dp</dimen>
<dimen name="dp_100">200.0000dp</dimen>
<dimen name="dp_101">202.0000dp</dimen>
<dimen name="dp_102">204.0000dp</dimen>
<dimen name="dp_103">206.0000dp</dimen>
<dimen name="dp_104">208.0000dp</dimen>
<dimen name="dp_104_5">209.0000dp</dimen>
<dimen name="dp_105">210.0000dp</dimen>
<dimen name="dp_106">212.0000dp</dimen>
<dimen name="dp_107">214.0000dp</dimen>
<dimen name="dp_108">216.0000dp</dimen>
<dimen name="dp_109">218.0000dp</dimen>
<dimen name="dp_110">220.0000dp</dimen>
<dimen name="dp_111">222.0000dp</dimen>
<dimen name="dp_112">224.0000dp</dimen>
<dimen name="dp_113">226.0000dp</dimen>
<dimen name="dp_114">228.0000dp</dimen>
<dimen name="dp_115">230.0000dp</dimen>
<dimen name="dp_116">232.0000dp</dimen>
<dimen name="dp_117">234.0000dp</dimen>
<dimen name="dp_118">236.0000dp</dimen>
<dimen name="dp_119">238.0000dp</dimen>
<dimen name="dp_120">240.0000dp</dimen>
<dimen name="dp_121">242.0000dp</dimen>
<dimen name="dp_122">244.0000dp</dimen>
<dimen name="dp_123">246.0000dp</dimen>
<dimen name="dp_124">248.0000dp</dimen>
<dimen name="dp_125">250.0000dp</dimen>
<dimen name="dp_126">252.0000dp</dimen>
<dimen name="dp_127">254.0000dp</dimen>
<dimen name="dp_128">256.0000dp</dimen>
<dimen name="dp_129">258.0000dp</dimen>
<dimen name="dp_130">260.0000dp</dimen>
<dimen name="dp_131">262.0000dp</dimen>
<dimen name="dp_132">264.0000dp</dimen>
<dimen name="dp_133">266.0000dp</dimen>
<dimen name="dp_134">268.0000dp</dimen>
<dimen name="dp_134_5">269.0000dp</dimen>
<dimen name="dp_135">270.0000dp</dimen>
<dimen name="dp_136">272.0000dp</dimen>
<dimen name="dp_137">274.0000dp</dimen>
<dimen name="dp_138">276.0000dp</dimen>
<dimen name="dp_139">278.0000dp</dimen>
<dimen name="dp_140">280.0000dp</dimen>
<dimen name="dp_141">282.0000dp</dimen>
<dimen name="dp_142">284.0000dp</dimen>
<dimen name="dp_143">286.0000dp</dimen>
<dimen name="dp_144">288.0000dp</dimen>
<dimen name="dp_145">290.0000dp</dimen>
<dimen name="dp_146">292.0000dp</dimen>
<dimen name="dp_147">294.0000dp</dimen>
<dimen name="dp_148">296.0000dp</dimen>
<dimen name="dp_149">298.0000dp</dimen>
<dimen name="dp_150">300.0000dp</dimen>
<dimen name="dp_151">302.0000dp</dimen>
<dimen name="dp_152">304.0000dp</dimen>
<dimen name="dp_153">306.0000dp</dimen>
<dimen name="dp_154">308.0000dp</dimen>
<dimen name="dp_155">310.0000dp</dimen>
<dimen name="dp_156">312.0000dp</dimen>
<dimen name="dp_157">314.0000dp</dimen>
<dimen name="dp_158">316.0000dp</dimen>
<dimen name="dp_159">318.0000dp</dimen>
<dimen name="dp_160">320.0000dp</dimen>
<dimen name="dp_161">322.0000dp</dimen>
<dimen name="dp_162">324.0000dp</dimen>
<dimen name="dp_163">326.0000dp</dimen>
<dimen name="dp_164">328.0000dp</dimen>
<dimen name="dp_165">330.0000dp</dimen>
<dimen name="dp_166">332.0000dp</dimen>
<dimen name="dp_167">334.0000dp</dimen>
<dimen name="dp_168">336.0000dp</dimen>
<dimen name="dp_169">338.0000dp</dimen>
<dimen name="dp_170">340.0000dp</dimen>
<dimen name="dp_171">342.0000dp</dimen>
<dimen name="dp_172">344.0000dp</dimen>
<dimen name="dp_173">346.0000dp</dimen>
<dimen name="dp_174">348.0000dp</dimen>
<dimen name="dp_175">350.0000dp</dimen>
<dimen name="dp_176">352.0000dp</dimen>
<dimen name="dp_177">354.0000dp</dimen>
<dimen name="dp_178">356.0000dp</dimen>
<dimen name="dp_179">358.0000dp</dimen>
<dimen name="dp_180">360.0000dp</dimen>
<dimen name="dp_181">362.0000dp</dimen>
<dimen name="dp_182">364.0000dp</dimen>
<dimen name="dp_183">366.0000dp</dimen>
<dimen name="dp_184">368.0000dp</dimen>
<dimen name="dp_185">370.0000dp</dimen>
<dimen name="dp_186">372.0000dp</dimen>
<dimen name="dp_187">374.0000dp</dimen>
<dimen name="dp_188">376.0000dp</dimen>
<dimen name="dp_189">378.0000dp</dimen>
<dimen name="dp_190">380.0000dp</dimen>
<dimen name="dp_191">382.0000dp</dimen>
<dimen name="dp_191_25">382.5000dp</dimen>
<dimen name="dp_192">384.0000dp</dimen>
<dimen name="dp_193">386.0000dp</dimen>
<dimen name="dp_194">388.0000dp</dimen>
<dimen name="dp_195">390.0000dp</dimen>
<dimen name="dp_196">392.0000dp</dimen>
<dimen name="dp_197">394.0000dp</dimen>
<dimen name="dp_198">396.0000dp</dimen>
<dimen name="dp_199">398.0000dp</dimen>
<dimen name="dp_200">400.0000dp</dimen>
<dimen name="dp_201">402.0000dp</dimen>
<dimen name="dp_202">404.0000dp</dimen>
<dimen name="dp_203">406.0000dp</dimen>
<dimen name="dp_204">408.0000dp</dimen>
<dimen name="dp_205">410.0000dp</dimen>
<dimen name="dp_206">412.0000dp</dimen>
<dimen name="dp_207">414.0000dp</dimen>
<dimen name="dp_208">416.0000dp</dimen>
<dimen name="dp_209">418.0000dp</dimen>
<dimen name="dp_210">420.0000dp</dimen>
<dimen name="dp_211">422.0000dp</dimen>
<dimen name="dp_212">424.0000dp</dimen>
<dimen name="dp_213">426.0000dp</dimen>
<dimen name="dp_214">428.0000dp</dimen>
<dimen name="dp_215">430.0000dp</dimen>
<dimen name="dp_216">432.0000dp</dimen>
<dimen name="dp_217">434.0000dp</dimen>
<dimen name="dp_218">436.0000dp</dimen>
<dimen name="dp_219">438.0000dp</dimen>
<dimen name="dp_220">440.0000dp</dimen>
<dimen name="dp_221">442.0000dp</dimen>
<dimen name="dp_222">444.0000dp</dimen>
<dimen name="dp_223">446.0000dp</dimen>
<dimen name="dp_224">448.0000dp</dimen>
<dimen name="dp_225">450.0000dp</dimen>
<dimen name="dp_226">452.0000dp</dimen>
<dimen name="dp_227">454.0000dp</dimen>
<dimen name="dp_228">456.0000dp</dimen>
<dimen name="dp_229">458.0000dp</dimen>
<dimen name="dp_230">460.0000dp</dimen>
<dimen name="dp_231">462.0000dp</dimen>
<dimen name="dp_232">464.0000dp</dimen>
<dimen name="dp_233">466.0000dp</dimen>
<dimen name="dp_234">468.0000dp</dimen>
<dimen name="dp_235">470.0000dp</dimen>
<dimen name="dp_236">472.0000dp</dimen>
<dimen name="dp_237">474.0000dp</dimen>
<dimen name="dp_238">476.0000dp</dimen>
<dimen name="dp_239">478.0000dp</dimen>
<dimen name="dp_240">480.0000dp</dimen>
<dimen name="dp_241">482.0000dp</dimen>
<dimen name="dp_242">484.0000dp</dimen>
<dimen name="dp_243">486.0000dp</dimen>
<dimen name="dp_244">488.0000dp</dimen>
<dimen name="dp_245">490.0000dp</dimen>
<dimen name="dp_246">492.0000dp</dimen>
<dimen name="dp_247">494.0000dp</dimen>
<dimen name="dp_248">496.0000dp</dimen>
<dimen name="dp_249">498.0000dp</dimen>
<dimen name="dp_250">500.0000dp</dimen>
<dimen name="dp_251">502.0000dp</dimen>
<dimen name="dp_252">504.0000dp</dimen>
<dimen name="dp_253">506.0000dp</dimen>
<dimen name="dp_254">508.0000dp</dimen>
<dimen name="dp_255">510.0000dp</dimen>
<dimen name="dp_256">512.0000dp</dimen>
<dimen name="dp_257">514.0000dp</dimen>
<dimen name="dp_258">516.0000dp</dimen>
<dimen name="dp_259">518.0000dp</dimen>
<dimen name="dp_260">520.0000dp</dimen>
<dimen name="dp_261">522.0000dp</dimen>
<dimen name="dp_262">524.0000dp</dimen>
<dimen name="dp_263">526.0000dp</dimen>
<dimen name="dp_264">528.0000dp</dimen>
<dimen name="dp_265">530.0000dp</dimen>
<dimen name="dp_266">532.0000dp</dimen>
<dimen name="dp_267">534.0000dp</dimen>
<dimen name="dp_268">536.0000dp</dimen>
<dimen name="dp_269">538.0000dp</dimen>
<dimen name="dp_270">540.0000dp</dimen>
<dimen name="dp_271">542.0000dp</dimen>
<dimen name="dp_272">544.0000dp</dimen>
<dimen name="dp_273">546.0000dp</dimen>
<dimen name="dp_274">548.0000dp</dimen>
<dimen name="dp_275">550.0000dp</dimen>
<dimen name="dp_276">552.0000dp</dimen>
<dimen name="dp_277">554.0000dp</dimen>
<dimen name="dp_278">556.0000dp</dimen>
<dimen name="dp_279">558.0000dp</dimen>
<dimen name="dp_280">560.0000dp</dimen>
<dimen name="dp_281">562.0000dp</dimen>
<dimen name="dp_282">564.0000dp</dimen>
<dimen name="dp_283">566.0000dp</dimen>
<dimen name="dp_284">568.0000dp</dimen>
<dimen name="dp_285">570.0000dp</dimen>
<dimen name="dp_286">572.0000dp</dimen>
<dimen name="dp_287">574.0000dp</dimen>
<dimen name="dp_288">576.0000dp</dimen>
<dimen name="dp_289">578.0000dp</dimen>
<dimen name="dp_290">580.0000dp</dimen>
<dimen name="dp_291">582.0000dp</dimen>
<dimen name="dp_292">584.0000dp</dimen>
<dimen name="dp_293">586.0000dp</dimen>
<dimen name="dp_294">588.0000dp</dimen>
<dimen name="dp_295">590.0000dp</dimen>
<dimen name="dp_296">592.0000dp</dimen>
<dimen name="dp_297">594.0000dp</dimen>
<dimen name="dp_298">596.0000dp</dimen>
<dimen name="dp_299">598.0000dp</dimen>
<dimen name="dp_300">600.0000dp</dimen>
<dimen name="dp_301">602.0000dp</dimen>
<dimen name="dp_302">604.0000dp</dimen>
<dimen name="dp_303">606.0000dp</dimen>
<dimen name="dp_304">608.0000dp</dimen>
<dimen name="dp_305">610.0000dp</dimen>
<dimen name="dp_306">612.0000dp</dimen>
<dimen name="dp_307">614.0000dp</dimen>
<dimen name="dp_308">616.0000dp</dimen>
<dimen name="dp_309">618.0000dp</dimen>
<dimen name="dp_310">620.0000dp</dimen>
<dimen name="dp_311">622.0000dp</dimen>
<dimen name="dp_312">624.0000dp</dimen>
<dimen name="dp_313">626.0000dp</dimen>
<dimen name="dp_314">628.0000dp</dimen>
<dimen name="dp_315">630.0000dp</dimen>
<dimen name="dp_316">632.0000dp</dimen>
<dimen name="dp_317">634.0000dp</dimen>
<dimen name="dp_318">636.0000dp</dimen>
<dimen name="dp_319">638.0000dp</dimen>
<dimen name="dp_320">640.0000dp</dimen>
<dimen name="dp_321">642.0000dp</dimen>
<dimen name="dp_322">644.0000dp</dimen>
<dimen name="dp_323">646.0000dp</dimen>
<dimen name="dp_324">648.0000dp</dimen>
<dimen name="dp_325">650.0000dp</dimen>
<dimen name="dp_326">652.0000dp</dimen>
<dimen name="dp_327">654.0000dp</dimen>
<dimen name="dp_328">656.0000dp</dimen>
<dimen name="dp_329">658.0000dp</dimen>
<dimen name="dp_330">660.0000dp</dimen>
<dimen name="dp_331">662.0000dp</dimen>
<dimen name="dp_332">664.0000dp</dimen>
<dimen name="dp_333">666.0000dp</dimen>
<dimen name="dp_334">668.0000dp</dimen>
<dimen name="dp_335">670.0000dp</dimen>
<dimen name="dp_336">672.0000dp</dimen>
<dimen name="dp_337">674.0000dp</dimen>
<dimen name="dp_338">676.0000dp</dimen>
<dimen name="dp_339">678.0000dp</dimen>
<dimen name="dp_340">680.0000dp</dimen>
<dimen name="dp_341">682.0000dp</dimen>
<dimen name="dp_342">684.0000dp</dimen>
<dimen name="dp_343">686.0000dp</dimen>
<dimen name="dp_344">688.0000dp</dimen>
<dimen name="dp_345">690.0000dp</dimen>
<dimen name="dp_346">692.0000dp</dimen>
<dimen name="dp_347">694.0000dp</dimen>
<dimen name="dp_348">696.0000dp</dimen>
<dimen name="dp_349">698.0000dp</dimen>
<dimen name="dp_350">700.0000dp</dimen>
<dimen name="dp_351">702.0000dp</dimen>
<dimen name="dp_352">704.0000dp</dimen>
<dimen name="dp_353">706.0000dp</dimen>
<dimen name="dp_354">708.0000dp</dimen>
<dimen name="dp_355">710.0000dp</dimen>
<dimen name="dp_356">712.0000dp</dimen>
<dimen name="dp_357">714.0000dp</dimen>
<dimen name="dp_358">716.0000dp</dimen>
<dimen name="dp_359">718.0000dp</dimen>
<dimen name="dp_360">720.0000dp</dimen>
<dimen name="dp_365">730.0000dp</dimen>
<dimen name="dp_370">740.0000dp</dimen>
<dimen name="dp_400">800.0000dp</dimen>
<dimen name="dp_410">820.0000dp</dimen>
<dimen name="dp_422">844.0000dp</dimen>
<dimen name="dp_472">944.0000dp</dimen>
<dimen name="dp_500">1000.0000dp</dimen>
<dimen name="dp_600">1200.0000dp</dimen>
<dimen name="dp_640">1280.0000dp</dimen>
<dimen name="dp_720">1440.0000dp</dimen>
<dimen name="sp_6">12.0000sp</dimen>
<dimen name="sp_7">14.0000sp</dimen>
<dimen name="sp_8">16.0000sp</dimen>
<dimen name="sp_9">18.0000sp</dimen>
<dimen name="sp_10">20.0000sp</dimen>
<dimen name="sp_11">22.0000sp</dimen>
<dimen name="sp_12">24.0000sp</dimen>
<dimen name="sp_13">26.0000sp</dimen>
<dimen name="sp_14">28.0000sp</dimen>
<dimen name="sp_15">30.0000sp</dimen>
<dimen name="sp_16">32.0000sp</dimen>
<dimen name="sp_17">34.0000sp</dimen>
<dimen name="sp_18">36.0000sp</dimen>
<dimen name="sp_19">38.0000sp</dimen>
<dimen name="sp_20">40.0000sp</dimen>
<dimen name="sp_21">42.0000sp</dimen>
<dimen name="sp_22">44.0000sp</dimen>
<dimen name="sp_23">46.0000sp</dimen>
<dimen name="sp_24">48.0000sp</dimen>
<dimen name="sp_25">50.0000sp</dimen>
<dimen name="sp_28">56.0000sp</dimen>
<dimen name="sp_30">60.0000sp</dimen>
<dimen name="sp_32">64.0000sp</dimen>
<dimen name="sp_34">68.0000sp</dimen>
<dimen name="sp_36">72.0000sp</dimen>
<dimen name="sp_38">76.0000sp</dimen>
<dimen name="sp_40">80.0000sp</dimen>
<dimen name="sp_42">84.0000sp</dimen>
<dimen name="sp_48">96.0000sp</dimen>
</resources>
<?xml version="1.0" encoding="UTF-8"?>
<resources>
<dimen name="activity_horizontal_margin">34.1333dp</dimen>
<dimen name="activity_vertical_margin">34.1333dp</dimen>
<dimen name="title_bar_head">106.6667dp</dimen>
<dimen name="card_common_margin_left">@dimen/dp_15</dimen>
<dimen name="dp_m_60">-128.0000dp</dimen>
<dimen name="dp_m_30">-64.0000dp</dimen>
<dimen name="dp_m_20">-42.6667dp</dimen>
<dimen name="dp_m_12">-25.6000dp</dimen>
<dimen name="dp_m_10">-21.3333dp</dimen>
<dimen name="dp_m_8">-17.0667dp</dimen>
<dimen name="dp_m_5">-10.6667dp</dimen>
<dimen name="dp_m_2">-4.2667dp</dimen>
<dimen name="dp_m_1">-2.1333dp</dimen>
<dimen name="dp_0">0.0000dp</dimen>
<dimen name="dp_0_1">0.2133dp</dimen>
<dimen name="dp_0_5">1.0667dp</dimen>
<dimen name="dp_1">2.1333dp</dimen>
<dimen name="dp_1_5">3.2000dp</dimen>
<dimen name="dp_2">4.2667dp</dimen>
<dimen name="dp_2_5">5.3333dp</dimen>
<dimen name="dp_3">6.4000dp</dimen>
<dimen name="dp_3_5">7.4667dp</dimen>
<dimen name="dp_4">8.5333dp</dimen>
<dimen name="dp_4_5">9.6000dp</dimen>
<dimen name="dp_5">10.6667dp</dimen>
<dimen name="dp_6">12.8000dp</dimen>
<dimen name="dp_7">14.9333dp</dimen>
<dimen name="dp_7_5">16.0000dp</dimen>
<dimen name="dp_8">17.0667dp</dimen>
<dimen name="dp_9">19.2000dp</dimen>
<dimen name="dp_10">21.3333dp</dimen>
<dimen name="dp_11">23.4667dp</dimen>
<dimen name="dp_12">25.6000dp</dimen>
<dimen name="dp_13">27.7333dp</dimen>
<dimen name="dp_14">29.8667dp</dimen>
<dimen name="dp_15">32.0000dp</dimen>
<dimen name="dp_16">34.1333dp</dimen>
<dimen name="dp_17">36.2667dp</dimen>
<dimen name="dp_18">38.4000dp</dimen>
<dimen name="dp_19">40.5333dp</dimen>
<dimen name="dp_20">42.6667dp</dimen>
<dimen name="dp_21">44.8000dp</dimen>
<dimen name="dp_22">46.9333dp</dimen>
<dimen name="dp_23">49.0667dp</dimen>
<dimen name="dp_24">51.2000dp</dimen>
<dimen name="dp_25">53.3333dp</dimen>
<dimen name="dp_26">55.4667dp</dimen>
<dimen name="dp_27">57.6000dp</dimen>
<dimen name="dp_28">59.7333dp</dimen>
<dimen name="dp_29">61.8667dp</dimen>
<dimen name="dp_30">64.0000dp</dimen>
<dimen name="dp_31">66.1333dp</dimen>
<dimen name="dp_32">68.2667dp</dimen>
<dimen name="dp_33">70.4000dp</dimen>
<dimen name="dp_34">72.5333dp</dimen>
<dimen name="dp_35">74.6667dp</dimen>
<dimen name="dp_36">76.8000dp</dimen>
<dimen name="dp_37">78.9333dp</dimen>
<dimen name="dp_38">81.0667dp</dimen>
<dimen name="dp_39">83.2000dp</dimen>
<dimen name="dp_40">85.3333dp</dimen>
<dimen name="dp_41">87.4667dp</dimen>
<dimen name="dp_42">89.6000dp</dimen>
<dimen name="dp_43">91.7333dp</dimen>
<dimen name="dp_44">93.8667dp</dimen>
<dimen name="dp_45">96.0000dp</dimen>
<dimen name="dp_46">98.1333dp</dimen>
<dimen name="dp_47">100.2667dp</dimen>
<dimen name="dp_48">102.4000dp</dimen>
<dimen name="dp_49">104.5333dp</dimen>
<dimen name="dp_50">106.6667dp</dimen>
<dimen name="dp_51">108.8000dp</dimen>
<dimen name="dp_52">110.9333dp</dimen>
<dimen name="dp_53">113.0667dp</dimen>
<dimen name="dp_54">115.2000dp</dimen>
<dimen name="dp_55">117.3333dp</dimen>
<dimen name="dp_56">119.4667dp</dimen>
<dimen name="dp_57">121.6000dp</dimen>
<dimen name="dp_58">123.7333dp</dimen>
<dimen name="dp_59">125.8667dp</dimen>
<dimen name="dp_60">128.0000dp</dimen>
<dimen name="dp_61">130.1333dp</dimen>
<dimen name="dp_62">132.2667dp</dimen>
<dimen name="dp_63">134.4000dp</dimen>
<dimen name="dp_64">136.5333dp</dimen>
<dimen name="dp_65">138.6667dp</dimen>
<dimen name="dp_66">140.8000dp</dimen>
<dimen name="dp_67">142.9333dp</dimen>
<dimen name="dp_68">145.0667dp</dimen>
<dimen name="dp_69">147.2000dp</dimen>
<dimen name="dp_70">149.3333dp</dimen>
<dimen name="dp_71">151.4667dp</dimen>
<dimen name="dp_72">153.6000dp</dimen>
<dimen name="dp_73">155.7333dp</dimen>
<dimen name="dp_74">157.8667dp</dimen>
<dimen name="dp_75">160.0000dp</dimen>
<dimen name="dp_76">162.1333dp</dimen>
<dimen name="dp_77">164.2667dp</dimen>
<dimen name="dp_78">166.4000dp</dimen>
<dimen name="dp_79">168.5333dp</dimen>
<dimen name="dp_80">170.6667dp</dimen>
<dimen name="dp_81">172.8000dp</dimen>
<dimen name="dp_82">174.9333dp</dimen>
<dimen name="dp_83">177.0667dp</dimen>
<dimen name="dp_84">179.2000dp</dimen>
<dimen name="dp_85">181.3333dp</dimen>
<dimen name="dp_86">183.4667dp</dimen>
<dimen name="dp_87">185.6000dp</dimen>
<dimen name="dp_88">187.7333dp</dimen>
<dimen name="dp_89">189.8667dp</dimen>
<dimen name="dp_90">192.0000dp</dimen>
<dimen name="dp_91">194.1333dp</dimen>
<dimen name="dp_92">196.2667dp</dimen>
<dimen name="dp_93">198.4000dp</dimen>
<dimen name="dp_94">200.5333dp</dimen>
<dimen name="dp_95">202.6667dp</dimen>
<dimen name="dp_96">204.8000dp</dimen>
<dimen name="dp_97">206.9333dp</dimen>
<dimen name="dp_98">209.0667dp</dimen>
<dimen name="dp_99">211.2000dp</dimen>
<dimen name="dp_100">213.3333dp</dimen>
<dimen name="dp_101">215.4667dp</dimen>
<dimen name="dp_102">217.6000dp</dimen>
<dimen name="dp_103">219.7333dp</dimen>
<dimen name="dp_104">221.8667dp</dimen>
<dimen name="dp_104_5">222.9333dp</dimen>
<dimen name="dp_105">224.0000dp</dimen>
<dimen name="dp_106">226.1333dp</dimen>
<dimen name="dp_107">228.2667dp</dimen>
<dimen name="dp_108">230.4000dp</dimen>
<dimen name="dp_109">232.5333dp</dimen>
<dimen name="dp_110">234.6667dp</dimen>
<dimen name="dp_111">236.8000dp</dimen>
<dimen name="dp_112">238.9333dp</dimen>
<dimen name="dp_113">241.0667dp</dimen>
<dimen name="dp_114">243.2000dp</dimen>
<dimen name="dp_115">245.3333dp</dimen>
<dimen name="dp_116">247.4667dp</dimen>
<dimen name="dp_117">249.6000dp</dimen>
<dimen name="dp_118">251.7333dp</dimen>
<dimen name="dp_119">253.8667dp</dimen>
<dimen name="dp_120">256.0000dp</dimen>
<dimen name="dp_121">258.1333dp</dimen>
<dimen name="dp_122">260.2667dp</dimen>
<dimen name="dp_123">262.4000dp</dimen>
<dimen name="dp_124">264.5333dp</dimen>
<dimen name="dp_125">266.6667dp</dimen>
<dimen name="dp_126">268.8000dp</dimen>
<dimen name="dp_127">270.9333dp</dimen>
<dimen name="dp_128">273.0667dp</dimen>
<dimen name="dp_129">275.2000dp</dimen>
<dimen name="dp_130">277.3333dp</dimen>
<dimen name="dp_131">279.4667dp</dimen>
<dimen name="dp_132">281.6000dp</dimen>
<dimen name="dp_133">283.7333dp</dimen>
<dimen name="dp_134">285.8667dp</dimen>
<dimen name="dp_134_5">286.9333dp</dimen>
<dimen name="dp_135">288.0000dp</dimen>
<dimen name="dp_136">290.1333dp</dimen>
<dimen name="dp_137">292.2667dp</dimen>
<dimen name="dp_138">294.4000dp</dimen>
<dimen name="dp_139">296.5333dp</dimen>
<dimen name="dp_140">298.6667dp</dimen>
<dimen name="dp_141">300.8000dp</dimen>
<dimen name="dp_142">302.9333dp</dimen>
<dimen name="dp_143">305.0667dp</dimen>
<dimen name="dp_144">307.2000dp</dimen>
<dimen name="dp_145">309.3333dp</dimen>
<dimen name="dp_146">311.4667dp</dimen>
<dimen name="dp_147">313.6000dp</dimen>
<dimen name="dp_148">315.7333dp</dimen>
<dimen name="dp_149">317.8667dp</dimen>
<dimen name="dp_150">320.0000dp</dimen>
<dimen name="dp_151">322.1333dp</dimen>
<dimen name="dp_152">324.2667dp</dimen>
<dimen name="dp_153">326.4000dp</dimen>
<dimen name="dp_154">328.5333dp</dimen>
<dimen name="dp_155">330.6667dp</dimen>
<dimen name="dp_156">332.8000dp</dimen>
<dimen name="dp_157">334.9333dp</dimen>
<dimen name="dp_158">337.0667dp</dimen>
<dimen name="dp_159">339.2000dp</dimen>
<dimen name="dp_160">341.3333dp</dimen>
<dimen name="dp_161">343.4667dp</dimen>
<dimen name="dp_162">345.6000dp</dimen>
<dimen name="dp_163">347.7333dp</dimen>
<dimen name="dp_164">349.8667dp</dimen>
<dimen name="dp_165">352.0000dp</dimen>
<dimen name="dp_166">354.1333dp</dimen>
<dimen name="dp_167">356.2667dp</dimen>
<dimen name="dp_168">358.4000dp</dimen>
<dimen name="dp_169">360.5333dp</dimen>
<dimen name="dp_170">362.6667dp</dimen>
<dimen name="dp_171">364.8000dp</dimen>
<dimen name="dp_172">366.9333dp</dimen>
<dimen name="dp_173">369.0667dp</dimen>
<dimen name="dp_174">371.2000dp</dimen>
<dimen name="dp_175">373.3333dp</dimen>
<dimen name="dp_176">375.4667dp</dimen>
<dimen name="dp_177">377.6000dp</dimen>
<dimen name="dp_178">379.7333dp</dimen>
<dimen name="dp_179">381.8667dp</dimen>
<dimen name="dp_180">384.0000dp</dimen>
<dimen name="dp_181">386.1333dp</dimen>
<dimen name="dp_182">388.2667dp</dimen>
<dimen name="dp_183">390.4000dp</dimen>
<dimen name="dp_184">392.5333dp</dimen>
<dimen name="dp_185">394.6667dp</dimen>
<dimen name="dp_186">396.8000dp</dimen>
<dimen name="dp_187">398.9333dp</dimen>
<dimen name="dp_188">401.0667dp</dimen>
<dimen name="dp_189">403.2000dp</dimen>
<dimen name="dp_190">405.3333dp</dimen>
<dimen name="dp_191">407.4667dp</dimen>
<dimen name="dp_191_25">408.0000dp</dimen>
<dimen name="dp_192">409.6000dp</dimen>
<dimen name="dp_193">411.7333dp</dimen>
<dimen name="dp_194">413.8667dp</dimen>
<dimen name="dp_195">416.0000dp</dimen>
<dimen name="dp_196">418.1333dp</dimen>
<dimen name="dp_197">420.2667dp</dimen>
<dimen name="dp_198">422.4000dp</dimen>
<dimen name="dp_199">424.5333dp</dimen>
<dimen name="dp_200">426.6667dp</dimen>
<dimen name="dp_201">428.8000dp</dimen>
<dimen name="dp_202">430.9333dp</dimen>
<dimen name="dp_203">433.0667dp</dimen>
<dimen name="dp_204">435.2000dp</dimen>
<dimen name="dp_205">437.3333dp</dimen>
<dimen name="dp_206">439.4667dp</dimen>
<dimen name="dp_207">441.6000dp</dimen>
<dimen name="dp_208">443.7333dp</dimen>
<dimen name="dp_209">445.8667dp</dimen>
<dimen name="dp_210">448.0000dp</dimen>
<dimen name="dp_211">450.1333dp</dimen>
<dimen name="dp_212">452.2667dp</dimen>
<dimen name="dp_213">454.4000dp</dimen>
<dimen name="dp_214">456.5333dp</dimen>
<dimen name="dp_215">458.6667dp</dimen>
<dimen name="dp_216">460.8000dp</dimen>
<dimen name="dp_217">462.9333dp</dimen>
<dimen name="dp_218">465.0667dp</dimen>
<dimen name="dp_219">467.2000dp</dimen>
<dimen name="dp_220">469.3333dp</dimen>
<dimen name="dp_221">471.4667dp</dimen>
<dimen name="dp_222">473.6000dp</dimen>
<dimen name="dp_223">475.7333dp</dimen>
<dimen name="dp_224">477.8667dp</dimen>
<dimen name="dp_225">480.0000dp</dimen>
<dimen name="dp_226">482.1333dp</dimen>
<dimen name="dp_227">484.2667dp</dimen>
<dimen name="dp_228">486.4000dp</dimen>
<dimen name="dp_229">488.5333dp</dimen>
<dimen name="dp_230">490.6667dp</dimen>
<dimen name="dp_231">492.8000dp</dimen>
<dimen name="dp_232">494.9333dp</dimen>
<dimen name="dp_233">497.0667dp</dimen>
<dimen name="dp_234">499.2000dp</dimen>
<dimen name="dp_235">501.3333dp</dimen>
<dimen name="dp_236">503.4667dp</dimen>
<dimen name="dp_237">505.6000dp</dimen>
<dimen name="dp_238">507.7333dp</dimen>
<dimen name="dp_239">509.8667dp</dimen>
<dimen name="dp_240">512.0000dp</dimen>
<dimen name="dp_241">514.1333dp</dimen>
<dimen name="dp_242">516.2667dp</dimen>
<dimen name="dp_243">518.4000dp</dimen>
<dimen name="dp_244">520.5333dp</dimen>
<dimen name="dp_245">522.6667dp</dimen>
<dimen name="dp_246">524.8000dp</dimen>
<dimen name="dp_247">526.9333dp</dimen>
<dimen name="dp_248">529.0667dp</dimen>
<dimen name="dp_249">531.2000dp</dimen>
<dimen name="dp_250">533.3333dp</dimen>
<dimen name="dp_251">535.4667dp</dimen>
<dimen name="dp_252">537.6000dp</dimen>
<dimen name="dp_253">539.7333dp</dimen>
<dimen name="dp_254">541.8667dp</dimen>
<dimen name="dp_255">544.0000dp</dimen>
<dimen name="dp_256">546.1333dp</dimen>
<dimen name="dp_257">548.2667dp</dimen>
<dimen name="dp_258">550.4000dp</dimen>
<dimen name="dp_259">552.5333dp</dimen>
<dimen name="dp_260">554.6667dp</dimen>
<dimen name="dp_261">556.8000dp</dimen>
<dimen name="dp_262">558.9333dp</dimen>
<dimen name="dp_263">561.0667dp</dimen>
<dimen name="dp_264">563.2000dp</dimen>
<dimen name="dp_265">565.3333dp</dimen>
<dimen name="dp_266">567.4667dp</dimen>
<dimen name="dp_267">569.6000dp</dimen>
<dimen name="dp_268">571.7333dp</dimen>
<dimen name="dp_269">573.8667dp</dimen>
<dimen name="dp_270">576.0000dp</dimen>
<dimen name="dp_271">578.1333dp</dimen>
<dimen name="dp_272">580.2667dp</dimen>
<dimen name="dp_273">582.4000dp</dimen>
<dimen name="dp_274">584.5333dp</dimen>
<dimen name="dp_275">586.6667dp</dimen>
<dimen name="dp_276">588.8000dp</dimen>
<dimen name="dp_277">590.9333dp</dimen>
<dimen name="dp_278">593.0667dp</dimen>
<dimen name="dp_279">595.2000dp</dimen>
<dimen name="dp_280">597.3333dp</dimen>
<dimen name="dp_281">599.4667dp</dimen>
<dimen name="dp_282">601.6000dp</dimen>
<dimen name="dp_283">603.7333dp</dimen>
<dimen name="dp_284">605.8667dp</dimen>
<dimen name="dp_285">608.0000dp</dimen>
<dimen name="dp_286">610.1333dp</dimen>
<dimen name="dp_287">612.2667dp</dimen>
<dimen name="dp_288">614.4000dp</dimen>
<dimen name="dp_289">616.5333dp</dimen>
<dimen name="dp_290">618.6667dp</dimen>
<dimen name="dp_291">620.8000dp</dimen>
<dimen name="dp_292">622.9333dp</dimen>
<dimen name="dp_293">625.0667dp</dimen>
<dimen name="dp_294">627.2000dp</dimen>
<dimen name="dp_295">629.3333dp</dimen>
<dimen name="dp_296">631.4667dp</dimen>
<dimen name="dp_297">633.6000dp</dimen>
<dimen name="dp_298">635.7333dp</dimen>
<dimen name="dp_299">637.8667dp</dimen>
<dimen name="dp_300">640.0000dp</dimen>
<dimen name="dp_301">642.1333dp</dimen>
<dimen name="dp_302">644.2667dp</dimen>
<dimen name="dp_303">646.4000dp</dimen>
<dimen name="dp_304">648.5333dp</dimen>
<dimen name="dp_305">650.6667dp</dimen>
<dimen name="dp_306">652.8000dp</dimen>
<dimen name="dp_307">654.9333dp</dimen>
<dimen name="dp_308">657.0667dp</dimen>
<dimen name="dp_309">659.2000dp</dimen>
<dimen name="dp_310">661.3333dp</dimen>
<dimen name="dp_311">663.4667dp</dimen>
<dimen name="dp_312">665.6000dp</dimen>
<dimen name="dp_313">667.7333dp</dimen>
<dimen name="dp_314">669.8667dp</dimen>
<dimen name="dp_315">672.0000dp</dimen>
<dimen name="dp_316">674.1333dp</dimen>
<dimen name="dp_317">676.2667dp</dimen>
<dimen name="dp_318">678.4000dp</dimen>
<dimen name="dp_319">680.5333dp</dimen>
<dimen name="dp_320">682.6667dp</dimen>
<dimen name="dp_321">684.8000dp</dimen>
<dimen name="dp_322">686.9333dp</dimen>
<dimen name="dp_323">689.0667dp</dimen>
<dimen name="dp_324">691.2000dp</dimen>
<dimen name="dp_325">693.3333dp</dimen>
<dimen name="dp_326">695.4667dp</dimen>
<dimen name="dp_327">697.6000dp</dimen>
<dimen name="dp_328">699.7333dp</dimen>
<dimen name="dp_329">701.8667dp</dimen>
<dimen name="dp_330">704.0000dp</dimen>
<dimen name="dp_331">706.1333dp</dimen>
<dimen name="dp_332">708.2667dp</dimen>
<dimen name="dp_333">710.4000dp</dimen>
<dimen name="dp_334">712.5333dp</dimen>
<dimen name="dp_335">714.6667dp</dimen>
<dimen name="dp_336">716.8000dp</dimen>
<dimen name="dp_337">718.9333dp</dimen>
<dimen name="dp_338">721.0667dp</dimen>
<dimen name="dp_339">723.2000dp</dimen>
<dimen name="dp_340">725.3333dp</dimen>
<dimen name="dp_341">727.4667dp</dimen>
<dimen name="dp_342">729.6000dp</dimen>
<dimen name="dp_343">731.7333dp</dimen>
<dimen name="dp_344">733.8667dp</dimen>
<dimen name="dp_345">736.0000dp</dimen>
<dimen name="dp_346">738.1333dp</dimen>
<dimen name="dp_347">740.2667dp</dimen>
<dimen name="dp_348">742.4000dp</dimen>
<dimen name="dp_349">744.5333dp</dimen>
<dimen name="dp_350">746.6667dp</dimen>
<dimen name="dp_351">748.8000dp</dimen>
<dimen name="dp_352">750.9333dp</dimen>
<dimen name="dp_353">753.0667dp</dimen>
<dimen name="dp_354">755.2000dp</dimen>
<dimen name="dp_355">757.3333dp</dimen>
<dimen name="dp_356">759.4667dp</dimen>
<dimen name="dp_357">761.6000dp</dimen>
<dimen name="dp_358">763.7333dp</dimen>
<dimen name="dp_359">765.8667dp</dimen>
<dimen name="dp_360">768.0000dp</dimen>
<dimen name="dp_365">778.6667dp</dimen>
<dimen name="dp_370">789.3333dp</dimen>
<dimen name="dp_400">853.3333dp</dimen>
<dimen name="dp_410">874.6667dp</dimen>
<dimen name="dp_422">900.2667dp</dimen>
<dimen name="dp_472">1006.9333dp</dimen>
<dimen name="dp_500">1066.6667dp</dimen>
<dimen name="dp_600">1280.0000dp</dimen>
<dimen name="dp_640">1365.3333dp</dimen>
<dimen name="dp_720">1536.0000dp</dimen>
<dimen name="sp_6">12.8000sp</dimen>
<dimen name="sp_7">14.9333sp</dimen>
<dimen name="sp_8">17.0667sp</dimen>
<dimen name="sp_9">19.2000sp</dimen>
<dimen name="sp_10">21.3333sp</dimen>
<dimen name="sp_11">23.4667sp</dimen>
<dimen name="sp_12">25.6000sp</dimen>
<dimen name="sp_13">27.7333sp</dimen>
<dimen name="sp_14">29.8667sp</dimen>
<dimen name="sp_15">32.0000sp</dimen>
<dimen name="sp_16">34.1333sp</dimen>
<dimen name="sp_17">36.2667sp</dimen>
<dimen name="sp_18">38.4000sp</dimen>
<dimen name="sp_19">40.5333sp</dimen>
<dimen name="sp_20">42.6667sp</dimen>
<dimen name="sp_21">44.8000sp</dimen>
<dimen name="sp_22">46.9333sp</dimen>
<dimen name="sp_23">49.0667sp</dimen>
<dimen name="sp_24">51.2000sp</dimen>
<dimen name="sp_25">53.3333sp</dimen>
<dimen name="sp_28">59.7333sp</dimen>
<dimen name="sp_30">64.0000sp</dimen>
<dimen name="sp_32">68.2667sp</dimen>
<dimen name="sp_34">72.5333sp</dimen>
<dimen name="sp_36">76.8000sp</dimen>
<dimen name="sp_38">81.0667sp</dimen>
<dimen name="sp_40">85.3333sp</dimen>
<dimen name="sp_42">89.6000sp</dimen>
<dimen name="sp_48">102.4000sp</dimen>
</resources>
<?xml version="1.0" encoding="UTF-8"?>
<resources>
<dimen name="activity_horizontal_margin">35.5556dp</dimen>
<dimen name="activity_vertical_margin">35.5556dp</dimen>
<dimen name="title_bar_head">111.1111dp</dimen>
<dimen name="card_common_margin_left">@dimen/dp_15</dimen>
<dimen name="dp_m_60">-133.3333dp</dimen>
<dimen name="dp_m_30">-66.6667dp</dimen>
<dimen name="dp_m_20">-44.4444dp</dimen>
<dimen name="dp_m_12">-26.6667dp</dimen>
<dimen name="dp_m_10">-22.2222dp</dimen>
<dimen name="dp_m_8">-17.7778dp</dimen>
<dimen name="dp_m_5">-11.1111dp</dimen>
<dimen name="dp_m_2">-4.4444dp</dimen>
<dimen name="dp_m_1">-2.2222dp</dimen>
<dimen name="dp_0">0.0000dp</dimen>
<dimen name="dp_0_1">0.2222dp</dimen>
<dimen name="dp_0_5">1.1111dp</dimen>
<dimen name="dp_1">2.2222dp</dimen>
<dimen name="dp_1_5">3.3333dp</dimen>
<dimen name="dp_2">4.4444dp</dimen>
<dimen name="dp_2_5">5.5556dp</dimen>
<dimen name="dp_3">6.6667dp</dimen>
<dimen name="dp_3_5">7.7778dp</dimen>
<dimen name="dp_4">8.8889dp</dimen>
<dimen name="dp_4_5">10.0000dp</dimen>
<dimen name="dp_5">11.1111dp</dimen>
<dimen name="dp_6">13.3333dp</dimen>
<dimen name="dp_7">15.5556dp</dimen>
<dimen name="dp_7_5">16.6667dp</dimen>
<dimen name="dp_8">17.7778dp</dimen>
<dimen name="dp_9">20.0000dp</dimen>
<dimen name="dp_10">22.2222dp</dimen>
<dimen name="dp_11">24.4444dp</dimen>
<dimen name="dp_12">26.6667dp</dimen>
<dimen name="dp_13">28.8889dp</dimen>
<dimen name="dp_14">31.1111dp</dimen>
<dimen name="dp_15">33.3333dp</dimen>
<dimen name="dp_16">35.5556dp</dimen>
<dimen name="dp_17">37.7778dp</dimen>
<dimen name="dp_18">40.0000dp</dimen>
<dimen name="dp_19">42.2222dp</dimen>
<dimen name="dp_20">44.4444dp</dimen>
<dimen name="dp_21">46.6667dp</dimen>
<dimen name="dp_22">48.8889dp</dimen>
<dimen name="dp_23">51.1111dp</dimen>
<dimen name="dp_24">53.3333dp</dimen>
<dimen name="dp_25">55.5556dp</dimen>
<dimen name="dp_26">57.7778dp</dimen>
<dimen name="dp_27">60.0000dp</dimen>
<dimen name="dp_28">62.2222dp</dimen>
<dimen name="dp_29">64.4444dp</dimen>
<dimen name="dp_30">66.6667dp</dimen>
<dimen name="dp_31">68.8889dp</dimen>
<dimen name="dp_32">71.1111dp</dimen>
<dimen name="dp_33">73.3333dp</dimen>
<dimen name="dp_34">75.5556dp</dimen>
<dimen name="dp_35">77.7778dp</dimen>
<dimen name="dp_36">80.0000dp</dimen>
<dimen name="dp_37">82.2222dp</dimen>
<dimen name="dp_38">84.4444dp</dimen>
<dimen name="dp_39">86.6667dp</dimen>
<dimen name="dp_40">88.8889dp</dimen>
<dimen name="dp_41">91.1111dp</dimen>
<dimen name="dp_42">93.3333dp</dimen>
<dimen name="dp_43">95.5556dp</dimen>
<dimen name="dp_44">97.7778dp</dimen>
<dimen name="dp_45">100.0000dp</dimen>
<dimen name="dp_46">102.2222dp</dimen>
<dimen name="dp_47">104.4444dp</dimen>
<dimen name="dp_48">106.6667dp</dimen>
<dimen name="dp_49">108.8889dp</dimen>
<dimen name="dp_50">111.1111dp</dimen>
<dimen name="dp_51">113.3333dp</dimen>
<dimen name="dp_52">115.5556dp</dimen>
<dimen name="dp_53">117.7778dp</dimen>
<dimen name="dp_54">120.0000dp</dimen>
<dimen name="dp_55">122.2222dp</dimen>
<dimen name="dp_56">124.4444dp</dimen>
<dimen name="dp_57">126.6667dp</dimen>
<dimen name="dp_58">128.8889dp</dimen>
<dimen name="dp_59">131.1111dp</dimen>
<dimen name="dp_60">133.3333dp</dimen>
<dimen name="dp_61">135.5556dp</dimen>
<dimen name="dp_62">137.7778dp</dimen>
<dimen name="dp_63">140.0000dp</dimen>
<dimen name="dp_64">142.2222dp</dimen>
<dimen name="dp_65">144.4444dp</dimen>
<dimen name="dp_66">146.6667dp</dimen>
<dimen name="dp_67">148.8889dp</dimen>
<dimen name="dp_68">151.1111dp</dimen>
<dimen name="dp_69">153.3333dp</dimen>
<dimen name="dp_70">155.5556dp</dimen>
<dimen name="dp_71">157.7778dp</dimen>
<dimen name="dp_72">160.0000dp</dimen>
<dimen name="dp_73">162.2222dp</dimen>
<dimen name="dp_74">164.4444dp</dimen>
<dimen name="dp_75">166.6667dp</dimen>
<dimen name="dp_76">168.8889dp</dimen>
<dimen name="dp_77">171.1111dp</dimen>
<dimen name="dp_78">173.3333dp</dimen>
<dimen name="dp_79">175.5556dp</dimen>
<dimen name="dp_80">177.7778dp</dimen>
<dimen name="dp_81">180.0000dp</dimen>
<dimen name="dp_82">182.2222dp</dimen>
<dimen name="dp_83">184.4444dp</dimen>
<dimen name="dp_84">186.6667dp</dimen>
<dimen name="dp_85">188.8889dp</dimen>
<dimen name="dp_86">191.1111dp</dimen>
<dimen name="dp_87">193.3333dp</dimen>
<dimen name="dp_88">195.5556dp</dimen>
<dimen name="dp_89">197.7778dp</dimen>
<dimen name="dp_90">200.0000dp</dimen>
<dimen name="dp_91">202.2222dp</dimen>
<dimen name="dp_92">204.4444dp</dimen>
<dimen name="dp_93">206.6667dp</dimen>
<dimen name="dp_94">208.8889dp</dimen>
<dimen name="dp_95">211.1111dp</dimen>
<dimen name="dp_96">213.3333dp</dimen>
<dimen name="dp_97">215.5556dp</dimen>
<dimen name="dp_98">217.7778dp</dimen>
<dimen name="dp_99">220.0000dp</dimen>
<dimen name="dp_100">222.2222dp</dimen>
<dimen name="dp_101">224.4444dp</dimen>
<dimen name="dp_102">226.6667dp</dimen>
<dimen name="dp_103">228.8889dp</dimen>
<dimen name="dp_104">231.1111dp</dimen>
<dimen name="dp_104_5">232.2222dp</dimen>
<dimen name="dp_105">233.3333dp</dimen>
<dimen name="dp_106">235.5556dp</dimen>
<dimen name="dp_107">237.7778dp</dimen>
<dimen name="dp_108">240.0000dp</dimen>
<dimen name="dp_109">242.2222dp</dimen>
<dimen name="dp_110">244.4444dp</dimen>
<dimen name="dp_111">246.6667dp</dimen>
<dimen name="dp_112">248.8889dp</dimen>
<dimen name="dp_113">251.1111dp</dimen>
<dimen name="dp_114">253.3333dp</dimen>
<dimen name="dp_115">255.5556dp</dimen>
<dimen name="dp_116">257.7778dp</dimen>
<dimen name="dp_117">260.0000dp</dimen>
<dimen name="dp_118">262.2222dp</dimen>
<dimen name="dp_119">264.4444dp</dimen>
<dimen name="dp_120">266.6667dp</dimen>
<dimen name="dp_121">268.8889dp</dimen>
<dimen name="dp_122">271.1111dp</dimen>
<dimen name="dp_123">273.3333dp</dimen>
<dimen name="dp_124">275.5556dp</dimen>
<dimen name="dp_125">277.7778dp</dimen>
<dimen name="dp_126">280.0000dp</dimen>
<dimen name="dp_127">282.2222dp</dimen>
<dimen name="dp_128">284.4444dp</dimen>
<dimen name="dp_129">286.6667dp</dimen>
<dimen name="dp_130">288.8889dp</dimen>
<dimen name="dp_131">291.1111dp</dimen>
<dimen name="dp_132">293.3333dp</dimen>
<dimen name="dp_133">295.5556dp</dimen>
<dimen name="dp_134">297.7778dp</dimen>
<dimen name="dp_134_5">298.8889dp</dimen>
<dimen name="dp_135">300.0000dp</dimen>
<dimen name="dp_136">302.2222dp</dimen>
<dimen name="dp_137">304.4444dp</dimen>
<dimen name="dp_138">306.6667dp</dimen>
<dimen name="dp_139">308.8889dp</dimen>
<dimen name="dp_140">311.1111dp</dimen>
<dimen name="dp_141">313.3333dp</dimen>
<dimen name="dp_142">315.5556dp</dimen>
<dimen name="dp_143">317.7778dp</dimen>
<dimen name="dp_144">320.0000dp</dimen>
<dimen name="dp_145">322.2222dp</dimen>
<dimen name="dp_146">324.4444dp</dimen>
<dimen name="dp_147">326.6667dp</dimen>
<dimen name="dp_148">328.8889dp</dimen>
<dimen name="dp_149">331.1111dp</dimen>
<dimen name="dp_150">333.3333dp</dimen>
<dimen name="dp_151">335.5556dp</dimen>
<dimen name="dp_152">337.7778dp</dimen>
<dimen name="dp_153">340.0000dp</dimen>
<dimen name="dp_154">342.2222dp</dimen>
<dimen name="dp_155">344.4444dp</dimen>
<dimen name="dp_156">346.6667dp</dimen>
<dimen name="dp_157">348.8889dp</dimen>
<dimen name="dp_158">351.1111dp</dimen>
<dimen name="dp_159">353.3333dp</dimen>
<dimen name="dp_160">355.5556dp</dimen>
<dimen name="dp_161">357.7778dp</dimen>
<dimen name="dp_162">360.0000dp</dimen>
<dimen name="dp_163">362.2222dp</dimen>
<dimen name="dp_164">364.4444dp</dimen>
<dimen name="dp_165">366.6667dp</dimen>
<dimen name="dp_166">368.8889dp</dimen>
<dimen name="dp_167">371.1111dp</dimen>
<dimen name="dp_168">373.3333dp</dimen>
<dimen name="dp_169">375.5556dp</dimen>
<dimen name="dp_170">377.7778dp</dimen>
<dimen name="dp_171">380.0000dp</dimen>
<dimen name="dp_172">382.2222dp</dimen>
<dimen name="dp_173">384.4444dp</dimen>
<dimen name="dp_174">386.6667dp</dimen>
<dimen name="dp_175">388.8889dp</dimen>
<dimen name="dp_176">391.1111dp</dimen>
<dimen name="dp_177">393.3333dp</dimen>
<dimen name="dp_178">395.5556dp</dimen>
<dimen name="dp_179">397.7778dp</dimen>
<dimen name="dp_180">400.0000dp</dimen>
<dimen name="dp_181">402.2222dp</dimen>
<dimen name="dp_182">404.4444dp</dimen>
<dimen name="dp_183">406.6667dp</dimen>
<dimen name="dp_184">408.8889dp</dimen>
<dimen name="dp_185">411.1111dp</dimen>
<dimen name="dp_186">413.3333dp</dimen>
<dimen name="dp_187">415.5556dp</dimen>
<dimen name="dp_188">417.7778dp</dimen>
<dimen name="dp_189">420.0000dp</dimen>
<dimen name="dp_190">422.2222dp</dimen>
<dimen name="dp_191">424.4444dp</dimen>
<dimen name="dp_191_25">425.0000dp</dimen>
<dimen name="dp_192">426.6667dp</dimen>
<dimen name="dp_193">428.8889dp</dimen>
<dimen name="dp_194">431.1111dp</dimen>
<dimen name="dp_195">433.3333dp</dimen>
<dimen name="dp_196">435.5556dp</dimen>
<dimen name="dp_197">437.7778dp</dimen>
<dimen name="dp_198">440.0000dp</dimen>
<dimen name="dp_199">442.2222dp</dimen>
<dimen name="dp_200">444.4444dp</dimen>
<dimen name="dp_201">446.6667dp</dimen>
<dimen name="dp_202">448.8889dp</dimen>
<dimen name="dp_203">451.1111dp</dimen>
<dimen name="dp_204">453.3333dp</dimen>
<dimen name="dp_205">455.5556dp</dimen>
<dimen name="dp_206">457.7778dp</dimen>
<dimen name="dp_207">460.0000dp</dimen>
<dimen name="dp_208">462.2222dp</dimen>
<dimen name="dp_209">464.4444dp</dimen>
<dimen name="dp_210">466.6667dp</dimen>
<dimen name="dp_211">468.8889dp</dimen>
<dimen name="dp_212">471.1111dp</dimen>
<dimen name="dp_213">473.3333dp</dimen>
<dimen name="dp_214">475.5556dp</dimen>
<dimen name="dp_215">477.7778dp</dimen>
<dimen name="dp_216">480.0000dp</dimen>
<dimen name="dp_217">482.2222dp</dimen>
<dimen name="dp_218">484.4444dp</dimen>
<dimen name="dp_219">486.6667dp</dimen>
<dimen name="dp_220">488.8889dp</dimen>
<dimen name="dp_221">491.1111dp</dimen>
<dimen name="dp_222">493.3333dp</dimen>
<dimen name="dp_223">495.5556dp</dimen>
<dimen name="dp_224">497.7778dp</dimen>
<dimen name="dp_225">500.0000dp</dimen>
<dimen name="dp_226">502.2222dp</dimen>
<dimen name="dp_227">504.4444dp</dimen>
<dimen name="dp_228">506.6667dp</dimen>
<dimen name="dp_229">508.8889dp</dimen>
<dimen name="dp_230">511.1111dp</dimen>
<dimen name="dp_231">513.3333dp</dimen>
<dimen name="dp_232">515.5556dp</dimen>
<dimen name="dp_233">517.7778dp</dimen>
<dimen name="dp_234">520.0000dp</dimen>
<dimen name="dp_235">522.2222dp</dimen>
<dimen name="dp_236">524.4444dp</dimen>
<dimen name="dp_237">526.6667dp</dimen>
<dimen name="dp_238">528.8889dp</dimen>
<dimen name="dp_239">531.1111dp</dimen>
<dimen name="dp_240">533.3333dp</dimen>
<dimen name="dp_241">535.5556dp</dimen>
<dimen name="dp_242">537.7778dp</dimen>
<dimen name="dp_243">540.0000dp</dimen>
<dimen name="dp_244">542.2222dp</dimen>
<dimen name="dp_245">544.4444dp</dimen>
<dimen name="dp_246">546.6667dp</dimen>
<dimen name="dp_247">548.8889dp</dimen>
<dimen name="dp_248">551.1111dp</dimen>
<dimen name="dp_249">553.3333dp</dimen>
<dimen name="dp_250">555.5556dp</dimen>
<dimen name="dp_251">557.7778dp</dimen>
<dimen name="dp_252">560.0000dp</dimen>
<dimen name="dp_253">562.2222dp</dimen>
<dimen name="dp_254">564.4444dp</dimen>
<dimen name="dp_255">566.6667dp</dimen>
<dimen name="dp_256">568.8889dp</dimen>
<dimen name="dp_257">571.1111dp</dimen>
<dimen name="dp_258">573.3333dp</dimen>
<dimen name="dp_259">575.5556dp</dimen>
<dimen name="dp_260">577.7778dp</dimen>
<dimen name="dp_261">580.0000dp</dimen>
<dimen name="dp_262">582.2222dp</dimen>
<dimen name="dp_263">584.4444dp</dimen>
<dimen name="dp_264">586.6667dp</dimen>
<dimen name="dp_265">588.8889dp</dimen>
<dimen name="dp_266">591.1111dp</dimen>
<dimen name="dp_267">593.3333dp</dimen>
<dimen name="dp_268">595.5556dp</dimen>
<dimen name="dp_269">597.7778dp</dimen>
<dimen name="dp_270">600.0000dp</dimen>
<dimen name="dp_271">602.2222dp</dimen>
<dimen name="dp_272">604.4444dp</dimen>
<dimen name="dp_273">606.6667dp</dimen>
<dimen name="dp_274">608.8889dp</dimen>
<dimen name="dp_275">611.1111dp</dimen>
<dimen name="dp_276">613.3333dp</dimen>
<dimen name="dp_277">615.5556dp</dimen>
<dimen name="dp_278">617.7778dp</dimen>
<dimen name="dp_279">620.0000dp</dimen>
<dimen name="dp_280">622.2222dp</dimen>
<dimen name="dp_281">624.4444dp</dimen>
<dimen name="dp_282">626.6667dp</dimen>
<dimen name="dp_283">628.8889dp</dimen>
<dimen name="dp_284">631.1111dp</dimen>
<dimen name="dp_285">633.3333dp</dimen>
<dimen name="dp_286">635.5556dp</dimen>
<dimen name="dp_287">637.7778dp</dimen>
<dimen name="dp_288">640.0000dp</dimen>
<dimen name="dp_289">642.2222dp</dimen>
<dimen name="dp_290">644.4444dp</dimen>
<dimen name="dp_291">646.6667dp</dimen>
<dimen name="dp_292">648.8889dp</dimen>
<dimen name="dp_293">651.1111dp</dimen>
<dimen name="dp_294">653.3333dp</dimen>
<dimen name="dp_295">655.5556dp</dimen>
<dimen name="dp_296">657.7778dp</dimen>
<dimen name="dp_297">660.0000dp</dimen>
<dimen name="dp_298">662.2222dp</dimen>
<dimen name="dp_299">664.4444dp</dimen>
<dimen name="dp_300">666.6667dp</dimen>
<dimen name="dp_301">668.8889dp</dimen>
<dimen name="dp_302">671.1111dp</dimen>
<dimen name="dp_303">673.3333dp</dimen>
<dimen name="dp_304">675.5556dp</dimen>
<dimen name="dp_305">677.7778dp</dimen>
<dimen name="dp_306">680.0000dp</dimen>
<dimen name="dp_307">682.2222dp</dimen>
<dimen name="dp_308">684.4444dp</dimen>
<dimen name="dp_309">686.6667dp</dimen>
<dimen name="dp_310">688.8889dp</dimen>
<dimen name="dp_311">691.1111dp</dimen>
<dimen name="dp_312">693.3333dp</dimen>
<dimen name="dp_313">695.5556dp</dimen>
<dimen name="dp_314">697.7778dp</dimen>
<dimen name="dp_315">700.0000dp</dimen>
<dimen name="dp_316">702.2222dp</dimen>
<dimen name="dp_317">704.4444dp</dimen>
<dimen name="dp_318">706.6667dp</dimen>
<dimen name="dp_319">708.8889dp</dimen>
<dimen name="dp_320">711.1111dp</dimen>
<dimen name="dp_321">713.3333dp</dimen>
<dimen name="dp_322">715.5556dp</dimen>
<dimen name="dp_323">717.7778dp</dimen>
<dimen name="dp_324">720.0000dp</dimen>
<dimen name="dp_325">722.2222dp</dimen>
<dimen name="dp_326">724.4444dp</dimen>
<dimen name="dp_327">726.6667dp</dimen>
<dimen name="dp_328">728.8889dp</dimen>
<dimen name="dp_329">731.1111dp</dimen>
<dimen name="dp_330">733.3333dp</dimen>
<dimen name="dp_331">735.5556dp</dimen>
<dimen name="dp_332">737.7778dp</dimen>
<dimen name="dp_333">740.0000dp</dimen>
<dimen name="dp_334">742.2222dp</dimen>
<dimen name="dp_335">744.4444dp</dimen>
<dimen name="dp_336">746.6667dp</dimen>
<dimen name="dp_337">748.8889dp</dimen>
<dimen name="dp_338">751.1111dp</dimen>
<dimen name="dp_339">753.3333dp</dimen>
<dimen name="dp_340">755.5556dp</dimen>
<dimen name="dp_341">757.7778dp</dimen>
<dimen name="dp_342">760.0000dp</dimen>
<dimen name="dp_343">762.2222dp</dimen>
<dimen name="dp_344">764.4444dp</dimen>
<dimen name="dp_345">766.6667dp</dimen>
<dimen name="dp_346">768.8889dp</dimen>
<dimen name="dp_347">771.1111dp</dimen>
<dimen name="dp_348">773.3333dp</dimen>
<dimen name="dp_349">775.5556dp</dimen>
<dimen name="dp_350">777.7778dp</dimen>
<dimen name="dp_351">780.0000dp</dimen>
<dimen name="dp_352">782.2222dp</dimen>
<dimen name="dp_353">784.4444dp</dimen>
<dimen name="dp_354">786.6667dp</dimen>
<dimen name="dp_355">788.8889dp</dimen>
<dimen name="dp_356">791.1111dp</dimen>
<dimen name="dp_357">793.3333dp</dimen>
<dimen name="dp_358">795.5556dp</dimen>
<dimen name="dp_359">797.7778dp</dimen>
<dimen name="dp_360">800.0000dp</dimen>
<dimen name="dp_365">811.1111dp</dimen>
<dimen name="dp_370">822.2222dp</dimen>
<dimen name="dp_400">888.8889dp</dimen>
<dimen name="dp_410">911.1111dp</dimen>
<dimen name="dp_422">937.7778dp</dimen>
<dimen name="dp_472">1048.8889dp</dimen>
<dimen name="dp_500">1111.1111dp</dimen>
<dimen name="dp_600">1333.3333dp</dimen>
<dimen name="dp_640">1422.2222dp</dimen>
<dimen name="dp_720">1600.0000dp</dimen>
<dimen name="sp_6">13.3333sp</dimen>
<dimen name="sp_7">15.5556sp</dimen>
<dimen name="sp_8">17.7778sp</dimen>
<dimen name="sp_9">20.0000sp</dimen>
<dimen name="sp_10">22.2222sp</dimen>
<dimen name="sp_11">24.4444sp</dimen>
<dimen name="sp_12">26.6667sp</dimen>
<dimen name="sp_13">28.8889sp</dimen>
<dimen name="sp_14">31.1111sp</dimen>
<dimen name="sp_15">33.3333sp</dimen>
<dimen name="sp_16">35.5556sp</dimen>
<dimen name="sp_17">37.7778sp</dimen>
<dimen name="sp_18">40.0000sp</dimen>
<dimen name="sp_19">42.2222sp</dimen>
<dimen name="sp_20">44.4444sp</dimen>
<dimen name="sp_21">46.6667sp</dimen>
<dimen name="sp_22">48.8889sp</dimen>
<dimen name="sp_23">51.1111sp</dimen>
<dimen name="sp_24">53.3333sp</dimen>
<dimen name="sp_25">55.5556sp</dimen>
<dimen name="sp_28">62.2222sp</dimen>
<dimen name="sp_30">66.6667sp</dimen>
<dimen name="sp_32">71.1111sp</dimen>
<dimen name="sp_34">75.5556sp</dimen>
<dimen name="sp_36">80.0000sp</dimen>
<dimen name="sp_38">84.4444sp</dimen>
<dimen name="sp_40">88.8889sp</dimen>
<dimen name="sp_42">93.3333sp</dimen>
<dimen name="sp_48">106.6667sp</dimen>
</resources>
<?xml version="1.0" encoding="UTF-8"?>
<resources>
<dimen name="activity_horizontal_margin">36.0444dp</dimen>
<dimen name="activity_vertical_margin">36.0444dp</dimen>
<dimen name="title_bar_head">112.6389dp</dimen>
<dimen name="card_common_margin_left">@dimen/dp_15</dimen>
<dimen name="dp_m_60">-135.1667dp</dimen>
<dimen name="dp_m_30">-67.5833dp</dimen>
<dimen name="dp_m_20">-45.0556dp</dimen>
<dimen name="dp_m_12">-27.0333dp</dimen>
<dimen name="dp_m_10">-22.5278dp</dimen>
<dimen name="dp_m_8">-18.0222dp</dimen>
<dimen name="dp_m_5">-11.2639dp</dimen>
<dimen name="dp_m_2">-4.5056dp</dimen>
<dimen name="dp_m_1">-2.2528dp</dimen>
<dimen name="dp_0">0.0000dp</dimen>
<dimen name="dp_0_1">0.2253dp</dimen>
<dimen name="dp_0_5">1.1264dp</dimen>
<dimen name="dp_1">2.2528dp</dimen>
<dimen name="dp_1_5">3.3792dp</dimen>
<dimen name="dp_2">4.5056dp</dimen>
<dimen name="dp_2_5">5.6319dp</dimen>
<dimen name="dp_3">6.7583dp</dimen>
<dimen name="dp_3_5">7.8847dp</dimen>
<dimen name="dp_4">9.0111dp</dimen>
<dimen name="dp_4_5">10.1375dp</dimen>
<dimen name="dp_5">11.2639dp</dimen>
<dimen name="dp_6">13.5167dp</dimen>
<dimen name="dp_7">15.7694dp</dimen>
<dimen name="dp_7_5">16.8958dp</dimen>
<dimen name="dp_8">18.0222dp</dimen>
<dimen name="dp_9">20.2750dp</dimen>
<dimen name="dp_10">22.5278dp</dimen>
<dimen name="dp_11">24.7806dp</dimen>
<dimen name="dp_12">27.0333dp</dimen>
<dimen name="dp_13">29.2861dp</dimen>
<dimen name="dp_14">31.5389dp</dimen>
<dimen name="dp_15">33.7917dp</dimen>
<dimen name="dp_16">36.0444dp</dimen>
<dimen name="dp_17">38.2972dp</dimen>
<dimen name="dp_18">40.5500dp</dimen>
<dimen name="dp_19">42.8028dp</dimen>
<dimen name="dp_20">45.0556dp</dimen>
<dimen name="dp_21">47.3083dp</dimen>
<dimen name="dp_22">49.5611dp</dimen>
<dimen name="dp_23">51.8139dp</dimen>
<dimen name="dp_24">54.0667dp</dimen>
<dimen name="dp_25">56.3194dp</dimen>
<dimen name="dp_26">58.5722dp</dimen>
<dimen name="dp_27">60.8250dp</dimen>
<dimen name="dp_28">63.0778dp</dimen>
<dimen name="dp_29">65.3306dp</dimen>
<dimen name="dp_30">67.5833dp</dimen>
<dimen name="dp_31">69.8361dp</dimen>
<dimen name="dp_32">72.0889dp</dimen>
<dimen name="dp_33">74.3417dp</dimen>
<dimen name="dp_34">76.5944dp</dimen>
<dimen name="dp_35">78.8472dp</dimen>
<dimen name="dp_36">81.1000dp</dimen>
<dimen name="dp_37">83.3528dp</dimen>
<dimen name="dp_38">85.6056dp</dimen>
<dimen name="dp_39">87.8583dp</dimen>
<dimen name="dp_40">90.1111dp</dimen>
<dimen name="dp_41">92.3639dp</dimen>
<dimen name="dp_42">94.6167dp</dimen>
<dimen name="dp_43">96.8694dp</dimen>
<dimen name="dp_44">99.1222dp</dimen>
<dimen name="dp_45">101.3750dp</dimen>
<dimen name="dp_46">103.6278dp</dimen>
<dimen name="dp_47">105.8806dp</dimen>
<dimen name="dp_48">108.1333dp</dimen>
<dimen name="dp_49">110.3861dp</dimen>
<dimen name="dp_50">112.6389dp</dimen>
<dimen name="dp_51">114.8917dp</dimen>
<dimen name="dp_52">117.1444dp</dimen>
<dimen name="dp_53">119.3972dp</dimen>
<dimen name="dp_54">121.6500dp</dimen>
<dimen name="dp_55">123.9028dp</dimen>
<dimen name="dp_56">126.1556dp</dimen>
<dimen name="dp_57">128.4083dp</dimen>
<dimen name="dp_58">130.6611dp</dimen>
<dimen name="dp_59">132.9139dp</dimen>
<dimen name="dp_60">135.1667dp</dimen>
<dimen name="dp_61">137.4194dp</dimen>
<dimen name="dp_62">139.6722dp</dimen>
<dimen name="dp_63">141.9250dp</dimen>
<dimen name="dp_64">144.1778dp</dimen>
<dimen name="dp_65">146.4306dp</dimen>
<dimen name="dp_66">148.6833dp</dimen>
<dimen name="dp_67">150.9361dp</dimen>
<dimen name="dp_68">153.1889dp</dimen>
<dimen name="dp_69">155.4417dp</dimen>
<dimen name="dp_70">157.6944dp</dimen>
<dimen name="dp_71">159.9472dp</dimen>
<dimen name="dp_72">162.2000dp</dimen>
<dimen name="dp_73">164.4528dp</dimen>
<dimen name="dp_74">166.7056dp</dimen>
<dimen name="dp_75">168.9583dp</dimen>
<dimen name="dp_76">171.2111dp</dimen>
<dimen name="dp_77">173.4639dp</dimen>
<dimen name="dp_78">175.7167dp</dimen>
<dimen name="dp_79">177.9694dp</dimen>
<dimen name="dp_80">180.2222dp</dimen>
<dimen name="dp_81">182.4750dp</dimen>
<dimen name="dp_82">184.7278dp</dimen>
<dimen name="dp_83">186.9806dp</dimen>
<dimen name="dp_84">189.2333dp</dimen>
<dimen name="dp_85">191.4861dp</dimen>
<dimen name="dp_86">193.7389dp</dimen>
<dimen name="dp_87">195.9917dp</dimen>
<dimen name="dp_88">198.2444dp</dimen>
<dimen name="dp_89">200.4972dp</dimen>
<dimen name="dp_90">202.7500dp</dimen>
<dimen name="dp_91">205.0028dp</dimen>
<dimen name="dp_92">207.2556dp</dimen>
<dimen name="dp_93">209.5083dp</dimen>
<dimen name="dp_94">211.7611dp</dimen>
<dimen name="dp_95">214.0139dp</dimen>
<dimen name="dp_96">216.2667dp</dimen>
<dimen name="dp_97">218.5194dp</dimen>
<dimen name="dp_98">220.7722dp</dimen>
<dimen name="dp_99">223.0250dp</dimen>
<dimen name="dp_100">225.2778dp</dimen>
<dimen name="dp_101">227.5306dp</dimen>
<dimen name="dp_102">229.7833dp</dimen>
<dimen name="dp_103">232.0361dp</dimen>
<dimen name="dp_104">234.2889dp</dimen>
<dimen name="dp_104_5">235.4153dp</dimen>
<dimen name="dp_105">236.5417dp</dimen>
<dimen name="dp_106">238.7944dp</dimen>
<dimen name="dp_107">241.0472dp</dimen>
<dimen name="dp_108">243.3000dp</dimen>
<dimen name="dp_109">245.5528dp</dimen>
<dimen name="dp_110">247.8056dp</dimen>
<dimen name="dp_111">250.0583dp</dimen>
<dimen name="dp_112">252.3111dp</dimen>
<dimen name="dp_113">254.5639dp</dimen>
<dimen name="dp_114">256.8167dp</dimen>
<dimen name="dp_115">259.0694dp</dimen>
<dimen name="dp_116">261.3222dp</dimen>
<dimen name="dp_117">263.5750dp</dimen>
<dimen name="dp_118">265.8278dp</dimen>
<dimen name="dp_119">268.0806dp</dimen>
<dimen name="dp_120">270.3333dp</dimen>
<dimen name="dp_121">272.5861dp</dimen>
<dimen name="dp_122">274.8389dp</dimen>
<dimen name="dp_123">277.0917dp</dimen>
<dimen name="dp_124">279.3444dp</dimen>
<dimen name="dp_125">281.5972dp</dimen>
<dimen name="dp_126">283.8500dp</dimen>
<dimen name="dp_127">286.1028dp</dimen>
<dimen name="dp_128">288.3556dp</dimen>
<dimen name="dp_129">290.6083dp</dimen>
<dimen name="dp_130">292.8611dp</dimen>
<dimen name="dp_131">295.1139dp</dimen>
<dimen name="dp_132">297.3667dp</dimen>
<dimen name="dp_133">299.6194dp</dimen>
<dimen name="dp_134">301.8722dp</dimen>
<dimen name="dp_134_5">302.9986dp</dimen>
<dimen name="dp_135">304.1250dp</dimen>
<dimen name="dp_136">306.3778dp</dimen>
<dimen name="dp_137">308.6306dp</dimen>
<dimen name="dp_138">310.8833dp</dimen>
<dimen name="dp_139">313.1361dp</dimen>
<dimen name="dp_140">315.3889dp</dimen>
<dimen name="dp_141">317.6417dp</dimen>
<dimen name="dp_142">319.8944dp</dimen>
<dimen name="dp_143">322.1472dp</dimen>
<dimen name="dp_144">324.4000dp</dimen>
<dimen name="dp_145">326.6528dp</dimen>
<dimen name="dp_146">328.9056dp</dimen>
<dimen name="dp_147">331.1583dp</dimen>
<dimen name="dp_148">333.4111dp</dimen>
<dimen name="dp_149">335.6639dp</dimen>
<dimen name="dp_150">337.9167dp</dimen>
<dimen name="dp_151">340.1694dp</dimen>
<dimen name="dp_152">342.4222dp</dimen>
<dimen name="dp_153">344.6750dp</dimen>
<dimen name="dp_154">346.9278dp</dimen>
<dimen name="dp_155">349.1806dp</dimen>
<dimen name="dp_156">351.4333dp</dimen>
<dimen name="dp_157">353.6861dp</dimen>
<dimen name="dp_158">355.9389dp</dimen>
<dimen name="dp_159">358.1917dp</dimen>
<dimen name="dp_160">360.4444dp</dimen>
<dimen name="dp_161">362.6972dp</dimen>
<dimen name="dp_162">364.9500dp</dimen>
<dimen name="dp_163">367.2028dp</dimen>
<dimen name="dp_164">369.4556dp</dimen>
<dimen name="dp_165">371.7083dp</dimen>
<dimen name="dp_166">373.9611dp</dimen>
<dimen name="dp_167">376.2139dp</dimen>
<dimen name="dp_168">378.4667dp</dimen>
<dimen name="dp_169">380.7194dp</dimen>
<dimen name="dp_170">382.9722dp</dimen>
<dimen name="dp_171">385.2250dp</dimen>
<dimen name="dp_172">387.4778dp</dimen>
<dimen name="dp_173">389.7306dp</dimen>
<dimen name="dp_174">391.9833dp</dimen>
<dimen name="dp_175">394.2361dp</dimen>
<dimen name="dp_176">396.4889dp</dimen>
<dimen name="dp_177">398.7417dp</dimen>
<dimen name="dp_178">400.9944dp</dimen>
<dimen name="dp_179">403.2472dp</dimen>
<dimen name="dp_180">405.5000dp</dimen>
<dimen name="dp_181">407.7528dp</dimen>
<dimen name="dp_182">410.0056dp</dimen>
<dimen name="dp_183">412.2583dp</dimen>
<dimen name="dp_184">414.5111dp</dimen>
<dimen name="dp_185">416.7639dp</dimen>
<dimen name="dp_186">419.0167dp</dimen>
<dimen name="dp_187">421.2694dp</dimen>
<dimen name="dp_188">423.5222dp</dimen>
<dimen name="dp_189">425.7750dp</dimen>
<dimen name="dp_190">428.0278dp</dimen>
<dimen name="dp_191">430.2806dp</dimen>
<dimen name="dp_191_25">430.8438dp</dimen>
<dimen name="dp_192">432.5333dp</dimen>
<dimen name="dp_193">434.7861dp</dimen>
<dimen name="dp_194">437.0389dp</dimen>
<dimen name="dp_195">439.2917dp</dimen>
<dimen name="dp_196">441.5444dp</dimen>
<dimen name="dp_197">443.7972dp</dimen>
<dimen name="dp_198">446.0500dp</dimen>
<dimen name="dp_199">448.3028dp</dimen>
<dimen name="dp_200">450.5556dp</dimen>
<dimen name="dp_201">452.8083dp</dimen>
<dimen name="dp_202">455.0611dp</dimen>
<dimen name="dp_203">457.3139dp</dimen>
<dimen name="dp_204">459.5667dp</dimen>
<dimen name="dp_205">461.8194dp</dimen>
<dimen name="dp_206">464.0722dp</dimen>
<dimen name="dp_207">466.3250dp</dimen>
<dimen name="dp_208">468.5778dp</dimen>
<dimen name="dp_209">470.8306dp</dimen>
<dimen name="dp_210">473.0833dp</dimen>
<dimen name="dp_211">475.3361dp</dimen>
<dimen name="dp_212">477.5889dp</dimen>
<dimen name="dp_213">479.8417dp</dimen>
<dimen name="dp_214">482.0944dp</dimen>
<dimen name="dp_215">484.3472dp</dimen>
<dimen name="dp_216">486.6000dp</dimen>
<dimen name="dp_217">488.8528dp</dimen>
<dimen name="dp_218">491.1056dp</dimen>
<dimen name="dp_219">493.3583dp</dimen>
<dimen name="dp_220">495.6111dp</dimen>
<dimen name="dp_221">497.8639dp</dimen>
<dimen name="dp_222">500.1167dp</dimen>
<dimen name="dp_223">502.3694dp</dimen>
<dimen name="dp_224">504.6222dp</dimen>
<dimen name="dp_225">506.8750dp</dimen>
<dimen name="dp_226">509.1278dp</dimen>
<dimen name="dp_227">511.3806dp</dimen>
<dimen name="dp_228">513.6333dp</dimen>
<dimen name="dp_229">515.8861dp</dimen>
<dimen name="dp_230">518.1389dp</dimen>
<dimen name="dp_231">520.3917dp</dimen>
<dimen name="dp_232">522.6444dp</dimen>
<dimen name="dp_233">524.8972dp</dimen>
<dimen name="dp_234">527.1500dp</dimen>
<dimen name="dp_235">529.4028dp</dimen>
<dimen name="dp_236">531.6556dp</dimen>
<dimen name="dp_237">533.9083dp</dimen>
<dimen name="dp_238">536.1611dp</dimen>
<dimen name="dp_239">538.4139dp</dimen>
<dimen name="dp_240">540.6667dp</dimen>
<dimen name="dp_241">542.9194dp</dimen>
<dimen name="dp_242">545.1722dp</dimen>
<dimen name="dp_243">547.4250dp</dimen>
<dimen name="dp_244">549.6778dp</dimen>
<dimen name="dp_245">551.9306dp</dimen>
<dimen name="dp_246">554.1833dp</dimen>
<dimen name="dp_247">556.4361dp</dimen>
<dimen name="dp_248">558.6889dp</dimen>
<dimen name="dp_249">560.9417dp</dimen>
<dimen name="dp_250">563.1944dp</dimen>
<dimen name="dp_251">565.4472dp</dimen>
<dimen name="dp_252">567.7000dp</dimen>
<dimen name="dp_253">569.9528dp</dimen>
<dimen name="dp_254">572.2056dp</dimen>
<dimen name="dp_255">574.4583dp</dimen>
<dimen name="dp_256">576.7111dp</dimen>
<dimen name="dp_257">578.9639dp</dimen>
<dimen name="dp_258">581.2167dp</dimen>
<dimen name="dp_259">583.4694dp</dimen>
<dimen name="dp_260">585.7222dp</dimen>
<dimen name="dp_261">587.9750dp</dimen>
<dimen name="dp_262">590.2278dp</dimen>
<dimen name="dp_263">592.4806dp</dimen>
<dimen name="dp_264">594.7333dp</dimen>
<dimen name="dp_265">596.9861dp</dimen>
<dimen name="dp_266">599.2389dp</dimen>
<dimen name="dp_267">601.4917dp</dimen>
<dimen name="dp_268">603.7444dp</dimen>
<dimen name="dp_269">605.9972dp</dimen>
<dimen name="dp_270">608.2500dp</dimen>
<dimen name="dp_271">610.5028dp</dimen>
<dimen name="dp_272">612.7556dp</dimen>
<dimen name="dp_273">615.0083dp</dimen>
<dimen name="dp_274">617.2611dp</dimen>
<dimen name="dp_275">619.5139dp</dimen>
<dimen name="dp_276">621.7667dp</dimen>
<dimen name="dp_277">624.0194dp</dimen>
<dimen name="dp_278">626.2722dp</dimen>
<dimen name="dp_279">628.5250dp</dimen>
<dimen name="dp_280">630.7778dp</dimen>
<dimen name="dp_281">633.0306dp</dimen>
<dimen name="dp_282">635.2833dp</dimen>
<dimen name="dp_283">637.5361dp</dimen>
<dimen name="dp_284">639.7889dp</dimen>
<dimen name="dp_285">642.0417dp</dimen>
<dimen name="dp_286">644.2944dp</dimen>
<dimen name="dp_287">646.5472dp</dimen>
<dimen name="dp_288">648.8000dp</dimen>
<dimen name="dp_289">651.0528dp</dimen>
<dimen name="dp_290">653.3056dp</dimen>
<dimen name="dp_291">655.5583dp</dimen>
<dimen name="dp_292">657.8111dp</dimen>
<dimen name="dp_293">660.0639dp</dimen>
<dimen name="dp_294">662.3167dp</dimen>
<dimen name="dp_295">664.5694dp</dimen>
<dimen name="dp_296">666.8222dp</dimen>
<dimen name="dp_297">669.0750dp</dimen>
<dimen name="dp_298">671.3278dp</dimen>
<dimen name="dp_299">673.5806dp</dimen>
<dimen name="dp_300">675.8333dp</dimen>
<dimen name="dp_301">678.0861dp</dimen>
<dimen name="dp_302">680.3389dp</dimen>
<dimen name="dp_303">682.5917dp</dimen>
<dimen name="dp_304">684.8444dp</dimen>
<dimen name="dp_305">687.0972dp</dimen>
<dimen name="dp_306">689.3500dp</dimen>
<dimen name="dp_307">691.6028dp</dimen>
<dimen name="dp_308">693.8556dp</dimen>
<dimen name="dp_309">696.1083dp</dimen>
<dimen name="dp_310">698.3611dp</dimen>
<dimen name="dp_311">700.6139dp</dimen>
<dimen name="dp_312">702.8667dp</dimen>
<dimen name="dp_313">705.1194dp</dimen>
<dimen name="dp_314">707.3722dp</dimen>
<dimen name="dp_315">709.6250dp</dimen>
<dimen name="dp_316">711.8778dp</dimen>
<dimen name="dp_317">714.1306dp</dimen>
<dimen name="dp_318">716.3833dp</dimen>
<dimen name="dp_319">718.6361dp</dimen>
<dimen name="dp_320">720.8889dp</dimen>
<dimen name="dp_321">723.1417dp</dimen>
<dimen name="dp_322">725.3944dp</dimen>
<dimen name="dp_323">727.6472dp</dimen>
<dimen name="dp_324">729.9000dp</dimen>
<dimen name="dp_325">732.1528dp</dimen>
<dimen name="dp_326">734.4056dp</dimen>
<dimen name="dp_327">736.6583dp</dimen>
<dimen name="dp_328">738.9111dp</dimen>
<dimen name="dp_329">741.1639dp</dimen>
<dimen name="dp_330">743.4167dp</dimen>
<dimen name="dp_331">745.6694dp</dimen>
<dimen name="dp_332">747.9222dp</dimen>
<dimen name="dp_333">750.1750dp</dimen>
<dimen name="dp_334">752.4278dp</dimen>
<dimen name="dp_335">754.6806dp</dimen>
<dimen name="dp_336">756.9333dp</dimen>
<dimen name="dp_337">759.1861dp</dimen>
<dimen name="dp_338">761.4389dp</dimen>
<dimen name="dp_339">763.6917dp</dimen>
<dimen name="dp_340">765.9444dp</dimen>
<dimen name="dp_341">768.1972dp</dimen>
<dimen name="dp_342">770.4500dp</dimen>
<dimen name="dp_343">772.7028dp</dimen>
<dimen name="dp_344">774.9556dp</dimen>
<dimen name="dp_345">777.2083dp</dimen>
<dimen name="dp_346">779.4611dp</dimen>
<dimen name="dp_347">781.7139dp</dimen>
<dimen name="dp_348">783.9667dp</dimen>
<dimen name="dp_349">786.2194dp</dimen>
<dimen name="dp_350">788.4722dp</dimen>
<dimen name="dp_351">790.7250dp</dimen>
<dimen name="dp_352">792.9778dp</dimen>
<dimen name="dp_353">795.2306dp</dimen>
<dimen name="dp_354">797.4833dp</dimen>
<dimen name="dp_355">799.7361dp</dimen>
<dimen name="dp_356">801.9889dp</dimen>
<dimen name="dp_357">804.2417dp</dimen>
<dimen name="dp_358">806.4944dp</dimen>
<dimen name="dp_359">808.7472dp</dimen>
<dimen name="dp_360">811.0000dp</dimen>
<dimen name="dp_365">822.2639dp</dimen>
<dimen name="dp_370">833.5278dp</dimen>
<dimen name="dp_400">901.1111dp</dimen>
<dimen name="dp_410">923.6389dp</dimen>
<dimen name="dp_422">950.6722dp</dimen>
<dimen name="dp_472">1063.3111dp</dimen>
<dimen name="dp_500">1126.3889dp</dimen>
<dimen name="dp_600">1351.6667dp</dimen>
<dimen name="dp_640">1441.7778dp</dimen>
<dimen name="dp_720">1622.0000dp</dimen>
<dimen name="sp_6">13.5167sp</dimen>
<dimen name="sp_7">15.7694sp</dimen>
<dimen name="sp_8">18.0222sp</dimen>
<dimen name="sp_9">20.2750sp</dimen>
<dimen name="sp_10">22.5278sp</dimen>
<dimen name="sp_11">24.7806sp</dimen>
<dimen name="sp_12">27.0333sp</dimen>
<dimen name="sp_13">29.2861sp</dimen>
<dimen name="sp_14">31.5389sp</dimen>
<dimen name="sp_15">33.7917sp</dimen>
<dimen name="sp_16">36.0444sp</dimen>
<dimen name="sp_17">38.2972sp</dimen>
<dimen name="sp_18">40.5500sp</dimen>
<dimen name="sp_19">42.8028sp</dimen>
<dimen name="sp_20">45.0556sp</dimen>
<dimen name="sp_21">47.3083sp</dimen>
<dimen name="sp_22">49.5611sp</dimen>
<dimen name="sp_23">51.8139sp</dimen>
<dimen name="sp_24">54.0667sp</dimen>
<dimen name="sp_25">56.3194sp</dimen>
<dimen name="sp_28">63.0778sp</dimen>
<dimen name="sp_30">67.5833sp</dimen>
<dimen name="sp_32">72.0889sp</dimen>
<dimen name="sp_34">76.5944sp</dimen>
<dimen name="sp_36">81.1000sp</dimen>
<dimen name="sp_38">85.6056sp</dimen>
<dimen name="sp_40">90.1111sp</dimen>
<dimen name="sp_42">94.6167sp</dimen>
<dimen name="sp_48">108.1333sp</dimen>
</resources>
<?xml version="1.0" encoding="UTF-8"?>
<resources>
<dimen name="activity_horizontal_margin">36.4444dp</dimen>
<dimen name="activity_vertical_margin">36.4444dp</dimen>
<dimen name="title_bar_head">113.8889dp</dimen>
<dimen name="card_common_margin_left">@dimen/dp_15</dimen>
<dimen name="dp_m_60">-136.6667dp</dimen>
<dimen name="dp_m_30">-68.3333dp</dimen>
<dimen name="dp_m_20">-45.5556dp</dimen>
<dimen name="dp_m_12">-27.3333dp</dimen>
<dimen name="dp_m_10">-22.7778dp</dimen>
<dimen name="dp_m_8">-18.2222dp</dimen>
<dimen name="dp_m_5">-11.3889dp</dimen>
<dimen name="dp_m_2">-4.5556dp</dimen>
<dimen name="dp_m_1">-2.2778dp</dimen>
<dimen name="dp_0">0.0000dp</dimen>
<dimen name="dp_0_1">0.2278dp</dimen>
<dimen name="dp_0_5">1.1389dp</dimen>
<dimen name="dp_1">2.2778dp</dimen>
<dimen name="dp_1_5">3.4167dp</dimen>
<dimen name="dp_2">4.5556dp</dimen>
<dimen name="dp_2_5">5.6944dp</dimen>
<dimen name="dp_3">6.8333dp</dimen>
<dimen name="dp_3_5">7.9722dp</dimen>
<dimen name="dp_4">9.1111dp</dimen>
<dimen name="dp_4_5">10.2500dp</dimen>
<dimen name="dp_5">11.3889dp</dimen>
<dimen name="dp_6">13.6667dp</dimen>
<dimen name="dp_7">15.9444dp</dimen>
<dimen name="dp_7_5">17.0833dp</dimen>
<dimen name="dp_8">18.2222dp</dimen>
<dimen name="dp_9">20.5000dp</dimen>
<dimen name="dp_10">22.7778dp</dimen>
<dimen name="dp_11">25.0556dp</dimen>
<dimen name="dp_12">27.3333dp</dimen>
<dimen name="dp_13">29.6111dp</dimen>
<dimen name="dp_14">31.8889dp</dimen>
<dimen name="dp_15">34.1667dp</dimen>
<dimen name="dp_16">36.4444dp</dimen>
<dimen name="dp_17">38.7222dp</dimen>
<dimen name="dp_18">41.0000dp</dimen>
<dimen name="dp_19">43.2778dp</dimen>
<dimen name="dp_20">45.5556dp</dimen>
<dimen name="dp_21">47.8333dp</dimen>
<dimen name="dp_22">50.1111dp</dimen>
<dimen name="dp_23">52.3889dp</dimen>
<dimen name="dp_24">54.6667dp</dimen>
<dimen name="dp_25">56.9444dp</dimen>
<dimen name="dp_26">59.2222dp</dimen>
<dimen name="dp_27">61.5000dp</dimen>
<dimen name="dp_28">63.7778dp</dimen>
<dimen name="dp_29">66.0556dp</dimen>
<dimen name="dp_30">68.3333dp</dimen>
<dimen name="dp_31">70.6111dp</dimen>
<dimen name="dp_32">72.8889dp</dimen>
<dimen name="dp_33">75.1667dp</dimen>
<dimen name="dp_34">77.4444dp</dimen>
<dimen name="dp_35">79.7222dp</dimen>
<dimen name="dp_36">82.0000dp</dimen>
<dimen name="dp_37">84.2778dp</dimen>
<dimen name="dp_38">86.5556dp</dimen>
<dimen name="dp_39">88.8333dp</dimen>
<dimen name="dp_40">91.1111dp</dimen>
<dimen name="dp_41">93.3889dp</dimen>
<dimen name="dp_42">95.6667dp</dimen>
<dimen name="dp_43">97.9444dp</dimen>
<dimen name="dp_44">100.2222dp</dimen>
<dimen name="dp_45">102.5000dp</dimen>
<dimen name="dp_46">104.7778dp</dimen>
<dimen name="dp_47">107.0556dp</dimen>
<dimen name="dp_48">109.3333dp</dimen>
<dimen name="dp_49">111.6111dp</dimen>
<dimen name="dp_50">113.8889dp</dimen>
<dimen name="dp_51">116.1667dp</dimen>
<dimen name="dp_52">118.4444dp</dimen>
<dimen name="dp_53">120.7222dp</dimen>
<dimen name="dp_54">123.0000dp</dimen>
<dimen name="dp_55">125.2778dp</dimen>
<dimen name="dp_56">127.5556dp</dimen>
<dimen name="dp_57">129.8333dp</dimen>
<dimen name="dp_58">132.1111dp</dimen>
<dimen name="dp_59">134.3889dp</dimen>
<dimen name="dp_60">136.6667dp</dimen>
<dimen name="dp_61">138.9444dp</dimen>
<dimen name="dp_62">141.2222dp</dimen>
<dimen name="dp_63">143.5000dp</dimen>
<dimen name="dp_64">145.7778dp</dimen>
<dimen name="dp_65">148.0556dp</dimen>
<dimen name="dp_66">150.3333dp</dimen>
<dimen name="dp_67">152.6111dp</dimen>
<dimen name="dp_68">154.8889dp</dimen>
<dimen name="dp_69">157.1667dp</dimen>
<dimen name="dp_70">159.4444dp</dimen>
<dimen name="dp_71">161.7222dp</dimen>
<dimen name="dp_72">164.0000dp</dimen>
<dimen name="dp_73">166.2778dp</dimen>
<dimen name="dp_74">168.5556dp</dimen>
<dimen name="dp_75">170.8333dp</dimen>
<dimen name="dp_76">173.1111dp</dimen>
<dimen name="dp_77">175.3889dp</dimen>
<dimen name="dp_78">177.6667dp</dimen>
<dimen name="dp_79">179.9444dp</dimen>
<dimen name="dp_80">182.2222dp</dimen>
<dimen name="dp_81">184.5000dp</dimen>
<dimen name="dp_82">186.7778dp</dimen>
<dimen name="dp_83">189.0556dp</dimen>
<dimen name="dp_84">191.3333dp</dimen>
<dimen name="dp_85">193.6111dp</dimen>
<dimen name="dp_86">195.8889dp</dimen>
<dimen name="dp_87">198.1667dp</dimen>
<dimen name="dp_88">200.4444dp</dimen>
<dimen name="dp_89">202.7222dp</dimen>
<dimen name="dp_90">205.0000dp</dimen>
<dimen name="dp_91">207.2778dp</dimen>
<dimen name="dp_92">209.5556dp</dimen>
<dimen name="dp_93">211.8333dp</dimen>
<dimen name="dp_94">214.1111dp</dimen>
<dimen name="dp_95">216.3889dp</dimen>
<dimen name="dp_96">218.6667dp</dimen>
<dimen name="dp_97">220.9444dp</dimen>
<dimen name="dp_98">223.2222dp</dimen>
<dimen name="dp_99">225.5000dp</dimen>
<dimen name="dp_100">227.7778dp</dimen>
<dimen name="dp_101">230.0556dp</dimen>
<dimen name="dp_102">232.3333dp</dimen>
<dimen name="dp_103">234.6111dp</dimen>
<dimen name="dp_104">236.8889dp</dimen>
<dimen name="dp_104_5">238.0278dp</dimen>
<dimen name="dp_105">239.1667dp</dimen>
<dimen name="dp_106">241.4444dp</dimen>
<dimen name="dp_107">243.7222dp</dimen>
<dimen name="dp_108">246.0000dp</dimen>
<dimen name="dp_109">248.2778dp</dimen>
<dimen name="dp_110">250.5556dp</dimen>
<dimen name="dp_111">252.8333dp</dimen>
<dimen name="dp_112">255.1111dp</dimen>
<dimen name="dp_113">257.3889dp</dimen>
<dimen name="dp_114">259.6667dp</dimen>
<dimen name="dp_115">261.9444dp</dimen>
<dimen name="dp_116">264.2222dp</dimen>
<dimen name="dp_117">266.5000dp</dimen>
<dimen name="dp_118">268.7778dp</dimen>
<dimen name="dp_119">271.0556dp</dimen>
<dimen name="dp_120">273.3333dp</dimen>
<dimen name="dp_121">275.6111dp</dimen>
<dimen name="dp_122">277.8889dp</dimen>
<dimen name="dp_123">280.1667dp</dimen>
<dimen name="dp_124">282.4444dp</dimen>
<dimen name="dp_125">284.7222dp</dimen>
<dimen name="dp_126">287.0000dp</dimen>
<dimen name="dp_127">289.2778dp</dimen>
<dimen name="dp_128">291.5556dp</dimen>
<dimen name="dp_129">293.8333dp</dimen>
<dimen name="dp_130">296.1111dp</dimen>
<dimen name="dp_131">298.3889dp</dimen>
<dimen name="dp_132">300.6667dp</dimen>
<dimen name="dp_133">302.9444dp</dimen>
<dimen name="dp_134">305.2222dp</dimen>
<dimen name="dp_134_5">306.3611dp</dimen>
<dimen name="dp_135">307.5000dp</dimen>
<dimen name="dp_136">309.7778dp</dimen>
<dimen name="dp_137">312.0556dp</dimen>
<dimen name="dp_138">314.3333dp</dimen>
<dimen name="dp_139">316.6111dp</dimen>
<dimen name="dp_140">318.8889dp</dimen>
<dimen name="dp_141">321.1667dp</dimen>
<dimen name="dp_142">323.4444dp</dimen>
<dimen name="dp_143">325.7222dp</dimen>
<dimen name="dp_144">328.0000dp</dimen>
<dimen name="dp_145">330.2778dp</dimen>
<dimen name="dp_146">332.5556dp</dimen>
<dimen name="dp_147">334.8333dp</dimen>
<dimen name="dp_148">337.1111dp</dimen>
<dimen name="dp_149">339.3889dp</dimen>
<dimen name="dp_150">341.6667dp</dimen>
<dimen name="dp_151">343.9444dp</dimen>
<dimen name="dp_152">346.2222dp</dimen>
<dimen name="dp_153">348.5000dp</dimen>
<dimen name="dp_154">350.7778dp</dimen>
<dimen name="dp_155">353.0556dp</dimen>
<dimen name="dp_156">355.3333dp</dimen>
<dimen name="dp_157">357.6111dp</dimen>
<dimen name="dp_158">359.8889dp</dimen>
<dimen name="dp_159">362.1667dp</dimen>
<dimen name="dp_160">364.4444dp</dimen>
<dimen name="dp_161">366.7222dp</dimen>
<dimen name="dp_162">369.0000dp</dimen>
<dimen name="dp_163">371.2778dp</dimen>
<dimen name="dp_164">373.5556dp</dimen>
<dimen name="dp_165">375.8333dp</dimen>
<dimen name="dp_166">378.1111dp</dimen>
<dimen name="dp_167">380.3889dp</dimen>
<dimen name="dp_168">382.6667dp</dimen>
<dimen name="dp_169">384.9444dp</dimen>
<dimen name="dp_170">387.2222dp</dimen>
<dimen name="dp_171">389.5000dp</dimen>
<dimen name="dp_172">391.7778dp</dimen>
<dimen name="dp_173">394.0556dp</dimen>
<dimen name="dp_174">396.3333dp</dimen>
<dimen name="dp_175">398.6111dp</dimen>
<dimen name="dp_176">400.8889dp</dimen>
<dimen name="dp_177">403.1667dp</dimen>
<dimen name="dp_178">405.4444dp</dimen>
<dimen name="dp_179">407.7222dp</dimen>
<dimen name="dp_180">410.0000dp</dimen>
<dimen name="dp_181">412.2778dp</dimen>
<dimen name="dp_182">414.5556dp</dimen>
<dimen name="dp_183">416.8333dp</dimen>
<dimen name="dp_184">419.1111dp</dimen>
<dimen name="dp_185">421.3889dp</dimen>
<dimen name="dp_186">423.6667dp</dimen>
<dimen name="dp_187">425.9444dp</dimen>
<dimen name="dp_188">428.2222dp</dimen>
<dimen name="dp_189">430.5000dp</dimen>
<dimen name="dp_190">432.7778dp</dimen>
<dimen name="dp_191">435.0556dp</dimen>
<dimen name="dp_191_25">435.6250dp</dimen>
<dimen name="dp_192">437.3333dp</dimen>
<dimen name="dp_193">439.6111dp</dimen>
<dimen name="dp_194">441.8889dp</dimen>
<dimen name="dp_195">444.1667dp</dimen>
<dimen name="dp_196">446.4444dp</dimen>
<dimen name="dp_197">448.7222dp</dimen>
<dimen name="dp_198">451.0000dp</dimen>
<dimen name="dp_199">453.2778dp</dimen>
<dimen name="dp_200">455.5556dp</dimen>
<dimen name="dp_201">457.8333dp</dimen>
<dimen name="dp_202">460.1111dp</dimen>
<dimen name="dp_203">462.3889dp</dimen>
<dimen name="dp_204">464.6667dp</dimen>
<dimen name="dp_205">466.9444dp</dimen>
<dimen name="dp_206">469.2222dp</dimen>
<dimen name="dp_207">471.5000dp</dimen>
<dimen name="dp_208">473.7778dp</dimen>
<dimen name="dp_209">476.0556dp</dimen>
<dimen name="dp_210">478.3333dp</dimen>
<dimen name="dp_211">480.6111dp</dimen>
<dimen name="dp_212">482.8889dp</dimen>
<dimen name="dp_213">485.1667dp</dimen>
<dimen name="dp_214">487.4444dp</dimen>
<dimen name="dp_215">489.7222dp</dimen>
<dimen name="dp_216">492.0000dp</dimen>
<dimen name="dp_217">494.2778dp</dimen>
<dimen name="dp_218">496.5556dp</dimen>
<dimen name="dp_219">498.8333dp</dimen>
<dimen name="dp_220">501.1111dp</dimen>
<dimen name="dp_221">503.3889dp</dimen>
<dimen name="dp_222">505.6667dp</dimen>
<dimen name="dp_223">507.9444dp</dimen>
<dimen name="dp_224">510.2222dp</dimen>
<dimen name="dp_225">512.5000dp</dimen>
<dimen name="dp_226">514.7778dp</dimen>
<dimen name="dp_227">517.0556dp</dimen>
<dimen name="dp_228">519.3333dp</dimen>
<dimen name="dp_229">521.6111dp</dimen>
<dimen name="dp_230">523.8889dp</dimen>
<dimen name="dp_231">526.1667dp</dimen>
<dimen name="dp_232">528.4444dp</dimen>
<dimen name="dp_233">530.7222dp</dimen>
<dimen name="dp_234">533.0000dp</dimen>
<dimen name="dp_235">535.2778dp</dimen>
<dimen name="dp_236">537.5556dp</dimen>
<dimen name="dp_237">539.8333dp</dimen>
<dimen name="dp_238">542.1111dp</dimen>
<dimen name="dp_239">544.3889dp</dimen>
<dimen name="dp_240">546.6667dp</dimen>
<dimen name="dp_241">548.9444dp</dimen>
<dimen name="dp_242">551.2222dp</dimen>
<dimen name="dp_243">553.5000dp</dimen>
<dimen name="dp_244">555.7778dp</dimen>
<dimen name="dp_245">558.0556dp</dimen>
<dimen name="dp_246">560.3333dp</dimen>
<dimen name="dp_247">562.6111dp</dimen>
<dimen name="dp_248">564.8889dp</dimen>
<dimen name="dp_249">567.1667dp</dimen>
<dimen name="dp_250">569.4444dp</dimen>
<dimen name="dp_251">571.7222dp</dimen>
<dimen name="dp_252">574.0000dp</dimen>
<dimen name="dp_253">576.2778dp</dimen>
<dimen name="dp_254">578.5556dp</dimen>
<dimen name="dp_255">580.8333dp</dimen>
<dimen name="dp_256">583.1111dp</dimen>
<dimen name="dp_257">585.3889dp</dimen>
<dimen name="dp_258">587.6667dp</dimen>
<dimen name="dp_259">589.9444dp</dimen>
<dimen name="dp_260">592.2222dp</dimen>
<dimen name="dp_261">594.5000dp</dimen>
<dimen name="dp_262">596.7778dp</dimen>
<dimen name="dp_263">599.0556dp</dimen>
<dimen name="dp_264">601.3333dp</dimen>
<dimen name="dp_265">603.6111dp</dimen>
<dimen name="dp_266">605.8889dp</dimen>
<dimen name="dp_267">608.1667dp</dimen>
<dimen name="dp_268">610.4444dp</dimen>
<dimen name="dp_269">612.7222dp</dimen>
<dimen name="dp_270">615.0000dp</dimen>
<dimen name="dp_271">617.2778dp</dimen>
<dimen name="dp_272">619.5556dp</dimen>
<dimen name="dp_273">621.8333dp</dimen>
<dimen name="dp_274">624.1111dp</dimen>
<dimen name="dp_275">626.3889dp</dimen>
<dimen name="dp_276">628.6667dp</dimen>
<dimen name="dp_277">630.9444dp</dimen>
<dimen name="dp_278">633.2222dp</dimen>
<dimen name="dp_279">635.5000dp</dimen>
<dimen name="dp_280">637.7778dp</dimen>
<dimen name="dp_281">640.0556dp</dimen>
<dimen name="dp_282">642.3333dp</dimen>
<dimen name="dp_283">644.6111dp</dimen>
<dimen name="dp_284">646.8889dp</dimen>
<dimen name="dp_285">649.1667dp</dimen>
<dimen name="dp_286">651.4444dp</dimen>
<dimen name="dp_287">653.7222dp</dimen>
<dimen name="dp_288">656.0000dp</dimen>
<dimen name="dp_289">658.2778dp</dimen>
<dimen name="dp_290">660.5556dp</dimen>
<dimen name="dp_291">662.8333dp</dimen>
<dimen name="dp_292">665.1111dp</dimen>
<dimen name="dp_293">667.3889dp</dimen>
<dimen name="dp_294">669.6667dp</dimen>
<dimen name="dp_295">671.9444dp</dimen>
<dimen name="dp_296">674.2222dp</dimen>
<dimen name="dp_297">676.5000dp</dimen>
<dimen name="dp_298">678.7778dp</dimen>
<dimen name="dp_299">681.0556dp</dimen>
<dimen name="dp_300">683.3333dp</dimen>
<dimen name="dp_301">685.6111dp</dimen>
<dimen name="dp_302">687.8889dp</dimen>
<dimen name="dp_303">690.1667dp</dimen>
<dimen name="dp_304">692.4444dp</dimen>
<dimen name="dp_305">694.7222dp</dimen>
<dimen name="dp_306">697.0000dp</dimen>
<dimen name="dp_307">699.2778dp</dimen>
<dimen name="dp_308">701.5556dp</dimen>
<dimen name="dp_309">703.8333dp</dimen>
<dimen name="dp_310">706.1111dp</dimen>
<dimen name="dp_311">708.3889dp</dimen>
<dimen name="dp_312">710.6667dp</dimen>
<dimen name="dp_313">712.9444dp</dimen>
<dimen name="dp_314">715.2222dp</dimen>
<dimen name="dp_315">717.5000dp</dimen>
<dimen name="dp_316">719.7778dp</dimen>
<dimen name="dp_317">722.0556dp</dimen>
<dimen name="dp_318">724.3333dp</dimen>
<dimen name="dp_319">726.6111dp</dimen>
<dimen name="dp_320">728.8889dp</dimen>
<dimen name="dp_321">731.1667dp</dimen>
<dimen name="dp_322">733.4444dp</dimen>
<dimen name="dp_323">735.7222dp</dimen>
<dimen name="dp_324">738.0000dp</dimen>
<dimen name="dp_325">740.2778dp</dimen>
<dimen name="dp_326">742.5556dp</dimen>
<dimen name="dp_327">744.8333dp</dimen>
<dimen name="dp_328">747.1111dp</dimen>
<dimen name="dp_329">749.3889dp</dimen>
<dimen name="dp_330">751.6667dp</dimen>
<dimen name="dp_331">753.9444dp</dimen>
<dimen name="dp_332">756.2222dp</dimen>
<dimen name="dp_333">758.5000dp</dimen>
<dimen name="dp_334">760.7778dp</dimen>
<dimen name="dp_335">763.0556dp</dimen>
<dimen name="dp_336">765.3333dp</dimen>
<dimen name="dp_337">767.6111dp</dimen>
<dimen name="dp_338">769.8889dp</dimen>
<dimen name="dp_339">772.1667dp</dimen>
<dimen name="dp_340">774.4444dp</dimen>
<dimen name="dp_341">776.7222dp</dimen>
<dimen name="dp_342">779.0000dp</dimen>
<dimen name="dp_343">781.2778dp</dimen>
<dimen name="dp_344">783.5556dp</dimen>
<dimen name="dp_345">785.8333dp</dimen>
<dimen name="dp_346">788.1111dp</dimen>
<dimen name="dp_347">790.3889dp</dimen>
<dimen name="dp_348">792.6667dp</dimen>
<dimen name="dp_349">794.9444dp</dimen>
<dimen name="dp_350">797.2222dp</dimen>
<dimen name="dp_351">799.5000dp</dimen>
<dimen name="dp_352">801.7778dp</dimen>
<dimen name="dp_353">804.0556dp</dimen>
<dimen name="dp_354">806.3333dp</dimen>
<dimen name="dp_355">808.6111dp</dimen>
<dimen name="dp_356">810.8889dp</dimen>
<dimen name="dp_357">813.1667dp</dimen>
<dimen name="dp_358">815.4444dp</dimen>
<dimen name="dp_359">817.7222dp</dimen>
<dimen name="dp_360">820.0000dp</dimen>
<dimen name="dp_365">831.3889dp</dimen>
<dimen name="dp_370">842.7778dp</dimen>
<dimen name="dp_400">911.1111dp</dimen>
<dimen name="dp_410">933.8889dp</dimen>
<dimen name="dp_422">961.2222dp</dimen>
<dimen name="dp_472">1075.1111dp</dimen>
<dimen name="dp_500">1138.8889dp</dimen>
<dimen name="dp_600">1366.6667dp</dimen>
<dimen name="dp_640">1457.7778dp</dimen>
<dimen name="dp_720">1640.0000dp</dimen>
<dimen name="sp_6">13.6667sp</dimen>
<dimen name="sp_7">15.9444sp</dimen>
<dimen name="sp_8">18.2222sp</dimen>
<dimen name="sp_9">20.5000sp</dimen>
<dimen name="sp_10">22.7778sp</dimen>
<dimen name="sp_11">25.0556sp</dimen>
<dimen name="sp_12">27.3333sp</dimen>
<dimen name="sp_13">29.6111sp</dimen>
<dimen name="sp_14">31.8889sp</dimen>
<dimen name="sp_15">34.1667sp</dimen>
<dimen name="sp_16">36.4444sp</dimen>
<dimen name="sp_17">38.7222sp</dimen>
<dimen name="sp_18">41.0000sp</dimen>
<dimen name="sp_19">43.2778sp</dimen>
<dimen name="sp_20">45.5556sp</dimen>
<dimen name="sp_21">47.8333sp</dimen>
<dimen name="sp_22">50.1111sp</dimen>
<dimen name="sp_23">52.3889sp</dimen>
<dimen name="sp_24">54.6667sp</dimen>
<dimen name="sp_25">56.9444sp</dimen>
<dimen name="sp_28">63.7778sp</dimen>
<dimen name="sp_30">68.3333sp</dimen>
<dimen name="sp_32">72.8889sp</dimen>
<dimen name="sp_34">77.4444sp</dimen>
<dimen name="sp_36">82.0000sp</dimen>
<dimen name="sp_38">86.5556sp</dimen>
<dimen name="sp_40">91.1111sp</dimen>
<dimen name="sp_42">95.6667sp</dimen>
<dimen name="sp_48">109.3333sp</dimen>
</resources>
<?xml version="1.0" encoding="UTF-8"?>
<resources>
<dimen name="activity_horizontal_margin">42.6667dp</dimen>
<dimen name="activity_vertical_margin">42.6667dp</dimen>
<dimen name="title_bar_head">133.3333dp</dimen>
<dimen name="card_common_margin_left">@dimen/dp_15</dimen>
<dimen name="dp_m_60">-160.0000dp</dimen>
<dimen name="dp_m_30">-80.0000dp</dimen>
<dimen name="dp_m_20">-53.3333dp</dimen>
<dimen name="dp_m_12">-32.0000dp</dimen>
<dimen name="dp_m_10">-26.6667dp</dimen>
<dimen name="dp_m_8">-21.3333dp</dimen>
<dimen name="dp_m_5">-13.3333dp</dimen>
<dimen name="dp_m_2">-5.3333dp</dimen>
<dimen name="dp_m_1">-2.6667dp</dimen>
<dimen name="dp_0">0.0000dp</dimen>
<dimen name="dp_0_1">0.2667dp</dimen>
<dimen name="dp_0_5">1.3333dp</dimen>
<dimen name="dp_1">2.6667dp</dimen>
<dimen name="dp_1_5">4.0000dp</dimen>
<dimen name="dp_2">5.3333dp</dimen>
<dimen name="dp_2_5">6.6667dp</dimen>
<dimen name="dp_3">8.0000dp</dimen>
<dimen name="dp_3_5">9.3333dp</dimen>
<dimen name="dp_4">10.6667dp</dimen>
<dimen name="dp_4_5">12.0000dp</dimen>
<dimen name="dp_5">13.3333dp</dimen>
<dimen name="dp_6">16.0000dp</dimen>
<dimen name="dp_7">18.6667dp</dimen>
<dimen name="dp_7_5">20.0000dp</dimen>
<dimen name="dp_8">21.3333dp</dimen>
<dimen name="dp_9">24.0000dp</dimen>
<dimen name="dp_10">26.6667dp</dimen>
<dimen name="dp_11">29.3333dp</dimen>
<dimen name="dp_12">32.0000dp</dimen>
<dimen name="dp_13">34.6667dp</dimen>
<dimen name="dp_14">37.3333dp</dimen>
<dimen name="dp_15">40.0000dp</dimen>
<dimen name="dp_16">42.6667dp</dimen>
<dimen name="dp_17">45.3333dp</dimen>
<dimen name="dp_18">48.0000dp</dimen>
<dimen name="dp_19">50.6667dp</dimen>
<dimen name="dp_20">53.3333dp</dimen>
<dimen name="dp_21">56.0000dp</dimen>
<dimen name="dp_22">58.6667dp</dimen>
<dimen name="dp_23">61.3333dp</dimen>
<dimen name="dp_24">64.0000dp</dimen>
<dimen name="dp_25">66.6667dp</dimen>
<dimen name="dp_26">69.3333dp</dimen>
<dimen name="dp_27">72.0000dp</dimen>
<dimen name="dp_28">74.6667dp</dimen>
<dimen name="dp_29">77.3333dp</dimen>
<dimen name="dp_30">80.0000dp</dimen>
<dimen name="dp_31">82.6667dp</dimen>
<dimen name="dp_32">85.3333dp</dimen>
<dimen name="dp_33">88.0000dp</dimen>
<dimen name="dp_34">90.6667dp</dimen>
<dimen name="dp_35">93.3333dp</dimen>
<dimen name="dp_36">96.0000dp</dimen>
<dimen name="dp_37">98.6667dp</dimen>
<dimen name="dp_38">101.3333dp</dimen>
<dimen name="dp_39">104.0000dp</dimen>
<dimen name="dp_40">106.6667dp</dimen>
<dimen name="dp_41">109.3333dp</dimen>
<dimen name="dp_42">112.0000dp</dimen>
<dimen name="dp_43">114.6667dp</dimen>
<dimen name="dp_44">117.3333dp</dimen>
<dimen name="dp_45">120.0000dp</dimen>
<dimen name="dp_46">122.6667dp</dimen>
<dimen name="dp_47">125.3333dp</dimen>
<dimen name="dp_48">128.0000dp</dimen>
<dimen name="dp_49">130.6667dp</dimen>
<dimen name="dp_50">133.3333dp</dimen>
<dimen name="dp_51">136.0000dp</dimen>
<dimen name="dp_52">138.6667dp</dimen>
<dimen name="dp_53">141.3333dp</dimen>
<dimen name="dp_54">144.0000dp</dimen>
<dimen name="dp_55">146.6667dp</dimen>
<dimen name="dp_56">149.3333dp</dimen>
<dimen name="dp_57">152.0000dp</dimen>
<dimen name="dp_58">154.6667dp</dimen>
<dimen name="dp_59">157.3333dp</dimen>
<dimen name="dp_60">160.0000dp</dimen>
<dimen name="dp_61">162.6667dp</dimen>
<dimen name="dp_62">165.3333dp</dimen>
<dimen name="dp_63">168.0000dp</dimen>
<dimen name="dp_64">170.6667dp</dimen>
<dimen name="dp_65">173.3333dp</dimen>
<dimen name="dp_66">176.0000dp</dimen>
<dimen name="dp_67">178.6667dp</dimen>
<dimen name="dp_68">181.3333dp</dimen>
<dimen name="dp_69">184.0000dp</dimen>
<dimen name="dp_70">186.6667dp</dimen>
<dimen name="dp_71">189.3333dp</dimen>
<dimen name="dp_72">192.0000dp</dimen>
<dimen name="dp_73">194.6667dp</dimen>
<dimen name="dp_74">197.3333dp</dimen>
<dimen name="dp_75">200.0000dp</dimen>
<dimen name="dp_76">202.6667dp</dimen>
<dimen name="dp_77">205.3333dp</dimen>
<dimen name="dp_78">208.0000dp</dimen>
<dimen name="dp_79">210.6667dp</dimen>
<dimen name="dp_80">213.3333dp</dimen>
<dimen name="dp_81">216.0000dp</dimen>
<dimen name="dp_82">218.6667dp</dimen>
<dimen name="dp_83">221.3333dp</dimen>
<dimen name="dp_84">224.0000dp</dimen>
<dimen name="dp_85">226.6667dp</dimen>
<dimen name="dp_86">229.3333dp</dimen>
<dimen name="dp_87">232.0000dp</dimen>
<dimen name="dp_88">234.6667dp</dimen>
<dimen name="dp_89">237.3333dp</dimen>
<dimen name="dp_90">240.0000dp</dimen>
<dimen name="dp_91">242.6667dp</dimen>
<dimen name="dp_92">245.3333dp</dimen>
<dimen name="dp_93">248.0000dp</dimen>
<dimen name="dp_94">250.6667dp</dimen>
<dimen name="dp_95">253.3333dp</dimen>
<dimen name="dp_96">256.0000dp</dimen>
<dimen name="dp_97">258.6667dp</dimen>
<dimen name="dp_98">261.3333dp</dimen>
<dimen name="dp_99">264.0000dp</dimen>
<dimen name="dp_100">266.6667dp</dimen>
<dimen name="dp_101">269.3333dp</dimen>
<dimen name="dp_102">272.0000dp</dimen>
<dimen name="dp_103">274.6667dp</dimen>
<dimen name="dp_104">277.3333dp</dimen>
<dimen name="dp_104_5">278.6667dp</dimen>
<dimen name="dp_105">280.0000dp</dimen>
<dimen name="dp_106">282.6667dp</dimen>
<dimen name="dp_107">285.3333dp</dimen>
<dimen name="dp_108">288.0000dp</dimen>
<dimen name="dp_109">290.6667dp</dimen>
<dimen name="dp_110">293.3333dp</dimen>
<dimen name="dp_111">296.0000dp</dimen>
<dimen name="dp_112">298.6667dp</dimen>
<dimen name="dp_113">301.3333dp</dimen>
<dimen name="dp_114">304.0000dp</dimen>
<dimen name="dp_115">306.6667dp</dimen>
<dimen name="dp_116">309.3333dp</dimen>
<dimen name="dp_117">312.0000dp</dimen>
<dimen name="dp_118">314.6667dp</dimen>
<dimen name="dp_119">317.3333dp</dimen>
<dimen name="dp_120">320.0000dp</dimen>
<dimen name="dp_121">322.6667dp</dimen>
<dimen name="dp_122">325.3333dp</dimen>
<dimen name="dp_123">328.0000dp</dimen>
<dimen name="dp_124">330.6667dp</dimen>
<dimen name="dp_125">333.3333dp</dimen>
<dimen name="dp_126">336.0000dp</dimen>
<dimen name="dp_127">338.6667dp</dimen>
<dimen name="dp_128">341.3333dp</dimen>
<dimen name="dp_129">344.0000dp</dimen>
<dimen name="dp_130">346.6667dp</dimen>
<dimen name="dp_131">349.3333dp</dimen>
<dimen name="dp_132">352.0000dp</dimen>
<dimen name="dp_133">354.6667dp</dimen>
<dimen name="dp_134">357.3333dp</dimen>
<dimen name="dp_134_5">358.6667dp</dimen>
<dimen name="dp_135">360.0000dp</dimen>
<dimen name="dp_136">362.6667dp</dimen>
<dimen name="dp_137">365.3333dp</dimen>
<dimen name="dp_138">368.0000dp</dimen>
<dimen name="dp_139">370.6667dp</dimen>
<dimen name="dp_140">373.3333dp</dimen>
<dimen name="dp_141">376.0000dp</dimen>
<dimen name="dp_142">378.6667dp</dimen>
<dimen name="dp_143">381.3333dp</dimen>
<dimen name="dp_144">384.0000dp</dimen>
<dimen name="dp_145">386.6667dp</dimen>
<dimen name="dp_146">389.3333dp</dimen>
<dimen name="dp_147">392.0000dp</dimen>
<dimen name="dp_148">394.6667dp</dimen>
<dimen name="dp_149">397.3333dp</dimen>
<dimen name="dp_150">400.0000dp</dimen>
<dimen name="dp_151">402.6667dp</dimen>
<dimen name="dp_152">405.3333dp</dimen>
<dimen name="dp_153">408.0000dp</dimen>
<dimen name="dp_154">410.6667dp</dimen>
<dimen name="dp_155">413.3333dp</dimen>
<dimen name="dp_156">416.0000dp</dimen>
<dimen name="dp_157">418.6667dp</dimen>
<dimen name="dp_158">421.3333dp</dimen>
<dimen name="dp_159">424.0000dp</dimen>
<dimen name="dp_160">426.6667dp</dimen>
<dimen name="dp_161">429.3333dp</dimen>
<dimen name="dp_162">432.0000dp</dimen>
<dimen name="dp_163">434.6667dp</dimen>
<dimen name="dp_164">437.3333dp</dimen>
<dimen name="dp_165">440.0000dp</dimen>
<dimen name="dp_166">442.6667dp</dimen>
<dimen name="dp_167">445.3333dp</dimen>
<dimen name="dp_168">448.0000dp</dimen>
<dimen name="dp_169">450.6667dp</dimen>
<dimen name="dp_170">453.3333dp</dimen>
<dimen name="dp_171">456.0000dp</dimen>
<dimen name="dp_172">458.6667dp</dimen>
<dimen name="dp_173">461.3333dp</dimen>
<dimen name="dp_174">464.0000dp</dimen>
<dimen name="dp_175">466.6667dp</dimen>
<dimen name="dp_176">469.3333dp</dimen>
<dimen name="dp_177">472.0000dp</dimen>
<dimen name="dp_178">474.6667dp</dimen>
<dimen name="dp_179">477.3333dp</dimen>
<dimen name="dp_180">480.0000dp</dimen>
<dimen name="dp_181">482.6667dp</dimen>
<dimen name="dp_182">485.3333dp</dimen>
<dimen name="dp_183">488.0000dp</dimen>
<dimen name="dp_184">490.6667dp</dimen>
<dimen name="dp_185">493.3333dp</dimen>
<dimen name="dp_186">496.0000dp</dimen>
<dimen name="dp_187">498.6667dp</dimen>
<dimen name="dp_188">501.3333dp</dimen>
<dimen name="dp_189">504.0000dp</dimen>
<dimen name="dp_190">506.6667dp</dimen>
<dimen name="dp_191">509.3333dp</dimen>
<dimen name="dp_191_25">510.0000dp</dimen>
<dimen name="dp_192">512.0000dp</dimen>
<dimen name="dp_193">514.6667dp</dimen>
<dimen name="dp_194">517.3333dp</dimen>
<dimen name="dp_195">520.0000dp</dimen>
<dimen name="dp_196">522.6667dp</dimen>
<dimen name="dp_197">525.3333dp</dimen>
<dimen name="dp_198">528.0000dp</dimen>
<dimen name="dp_199">530.6667dp</dimen>
<dimen name="dp_200">533.3333dp</dimen>
<dimen name="dp_201">536.0000dp</dimen>
<dimen name="dp_202">538.6667dp</dimen>
<dimen name="dp_203">541.3333dp</dimen>
<dimen name="dp_204">544.0000dp</dimen>
<dimen name="dp_205">546.6667dp</dimen>
<dimen name="dp_206">549.3333dp</dimen>
<dimen name="dp_207">552.0000dp</dimen>
<dimen name="dp_208">554.6667dp</dimen>
<dimen name="dp_209">557.3333dp</dimen>
<dimen name="dp_210">560.0000dp</dimen>
<dimen name="dp_211">562.6667dp</dimen>
<dimen name="dp_212">565.3333dp</dimen>
<dimen name="dp_213">568.0000dp</dimen>
<dimen name="dp_214">570.6667dp</dimen>
<dimen name="dp_215">573.3333dp</dimen>
<dimen name="dp_216">576.0000dp</dimen>
<dimen name="dp_217">578.6667dp</dimen>
<dimen name="dp_218">581.3333dp</dimen>
<dimen name="dp_219">584.0000dp</dimen>
<dimen name="dp_220">586.6667dp</dimen>
<dimen name="dp_221">589.3333dp</dimen>
<dimen name="dp_222">592.0000dp</dimen>
<dimen name="dp_223">594.6667dp</dimen>
<dimen name="dp_224">597.3333dp</dimen>
<dimen name="dp_225">600.0000dp</dimen>
<dimen name="dp_226">602.6667dp</dimen>
<dimen name="dp_227">605.3333dp</dimen>
<dimen name="dp_228">608.0000dp</dimen>
<dimen name="dp_229">610.6667dp</dimen>
<dimen name="dp_230">613.3333dp</dimen>
<dimen name="dp_231">616.0000dp</dimen>
<dimen name="dp_232">618.6667dp</dimen>
<dimen name="dp_233">621.3333dp</dimen>
<dimen name="dp_234">624.0000dp</dimen>
<dimen name="dp_235">626.6667dp</dimen>
<dimen name="dp_236">629.3333dp</dimen>
<dimen name="dp_237">632.0000dp</dimen>
<dimen name="dp_238">634.6667dp</dimen>
<dimen name="dp_239">637.3333dp</dimen>
<dimen name="dp_240">640.0000dp</dimen>
<dimen name="dp_241">642.6667dp</dimen>
<dimen name="dp_242">645.3333dp</dimen>
<dimen name="dp_243">648.0000dp</dimen>
<dimen name="dp_244">650.6667dp</dimen>
<dimen name="dp_245">653.3333dp</dimen>
<dimen name="dp_246">656.0000dp</dimen>
<dimen name="dp_247">658.6667dp</dimen>
<dimen name="dp_248">661.3333dp</dimen>
<dimen name="dp_249">664.0000dp</dimen>
<dimen name="dp_250">666.6667dp</dimen>
<dimen name="dp_251">669.3333dp</dimen>
<dimen name="dp_252">672.0000dp</dimen>
<dimen name="dp_253">674.6667dp</dimen>
<dimen name="dp_254">677.3333dp</dimen>
<dimen name="dp_255">680.0000dp</dimen>
<dimen name="dp_256">682.6667dp</dimen>
<dimen name="dp_257">685.3333dp</dimen>
<dimen name="dp_258">688.0000dp</dimen>
<dimen name="dp_259">690.6667dp</dimen>
<dimen name="dp_260">693.3333dp</dimen>
<dimen name="dp_261">696.0000dp</dimen>
<dimen name="dp_262">698.6667dp</dimen>
<dimen name="dp_263">701.3333dp</dimen>
<dimen name="dp_264">704.0000dp</dimen>
<dimen name="dp_265">706.6667dp</dimen>
<dimen name="dp_266">709.3333dp</dimen>
<dimen name="dp_267">712.0000dp</dimen>
<dimen name="dp_268">714.6667dp</dimen>
<dimen name="dp_269">717.3333dp</dimen>
<dimen name="dp_270">720.0000dp</dimen>
<dimen name="dp_271">722.6667dp</dimen>
<dimen name="dp_272">725.3333dp</dimen>
<dimen name="dp_273">728.0000dp</dimen>
<dimen name="dp_274">730.6667dp</dimen>
<dimen name="dp_275">733.3333dp</dimen>
<dimen name="dp_276">736.0000dp</dimen>
<dimen name="dp_277">738.6667dp</dimen>
<dimen name="dp_278">741.3333dp</dimen>
<dimen name="dp_279">744.0000dp</dimen>
<dimen name="dp_280">746.6667dp</dimen>
<dimen name="dp_281">749.3333dp</dimen>
<dimen name="dp_282">752.0000dp</dimen>
<dimen name="dp_283">754.6667dp</dimen>
<dimen name="dp_284">757.3333dp</dimen>
<dimen name="dp_285">760.0000dp</dimen>
<dimen name="dp_286">762.6667dp</dimen>
<dimen name="dp_287">765.3333dp</dimen>
<dimen name="dp_288">768.0000dp</dimen>
<dimen name="dp_289">770.6667dp</dimen>
<dimen name="dp_290">773.3333dp</dimen>
<dimen name="dp_291">776.0000dp</dimen>
<dimen name="dp_292">778.6667dp</dimen>
<dimen name="dp_293">781.3333dp</dimen>
<dimen name="dp_294">784.0000dp</dimen>
<dimen name="dp_295">786.6667dp</dimen>
<dimen name="dp_296">789.3333dp</dimen>
<dimen name="dp_297">792.0000dp</dimen>
<dimen name="dp_298">794.6667dp</dimen>
<dimen name="dp_299">797.3333dp</dimen>
<dimen name="dp_300">800.0000dp</dimen>
<dimen name="dp_301">802.6667dp</dimen>
<dimen name="dp_302">805.3333dp</dimen>
<dimen name="dp_303">808.0000dp</dimen>
<dimen name="dp_304">810.6667dp</dimen>
<dimen name="dp_305">813.3333dp</dimen>
<dimen name="dp_306">816.0000dp</dimen>
<dimen name="dp_307">818.6667dp</dimen>
<dimen name="dp_308">821.3333dp</dimen>
<dimen name="dp_309">824.0000dp</dimen>
<dimen name="dp_310">826.6667dp</dimen>
<dimen name="dp_311">829.3333dp</dimen>
<dimen name="dp_312">832.0000dp</dimen>
<dimen name="dp_313">834.6667dp</dimen>
<dimen name="dp_314">837.3333dp</dimen>
<dimen name="dp_315">840.0000dp</dimen>
<dimen name="dp_316">842.6667dp</dimen>
<dimen name="dp_317">845.3333dp</dimen>
<dimen name="dp_318">848.0000dp</dimen>
<dimen name="dp_319">850.6667dp</dimen>
<dimen name="dp_320">853.3333dp</dimen>
<dimen name="dp_321">856.0000dp</dimen>
<dimen name="dp_322">858.6667dp</dimen>
<dimen name="dp_323">861.3333dp</dimen>
<dimen name="dp_324">864.0000dp</dimen>
<dimen name="dp_325">866.6667dp</dimen>
<dimen name="dp_326">869.3333dp</dimen>
<dimen name="dp_327">872.0000dp</dimen>
<dimen name="dp_328">874.6667dp</dimen>
<dimen name="dp_329">877.3333dp</dimen>
<dimen name="dp_330">880.0000dp</dimen>
<dimen name="dp_331">882.6667dp</dimen>
<dimen name="dp_332">885.3333dp</dimen>
<dimen name="dp_333">888.0000dp</dimen>
<dimen name="dp_334">890.6667dp</dimen>
<dimen name="dp_335">893.3333dp</dimen>
<dimen name="dp_336">896.0000dp</dimen>
<dimen name="dp_337">898.6667dp</dimen>
<dimen name="dp_338">901.3333dp</dimen>
<dimen name="dp_339">904.0000dp</dimen>
<dimen name="dp_340">906.6667dp</dimen>
<dimen name="dp_341">909.3333dp</dimen>
<dimen name="dp_342">912.0000dp</dimen>
<dimen name="dp_343">914.6667dp</dimen>
<dimen name="dp_344">917.3333dp</dimen>
<dimen name="dp_345">920.0000dp</dimen>
<dimen name="dp_346">922.6667dp</dimen>
<dimen name="dp_347">925.3333dp</dimen>
<dimen name="dp_348">928.0000dp</dimen>
<dimen name="dp_349">930.6667dp</dimen>
<dimen name="dp_350">933.3333dp</dimen>
<dimen name="dp_351">936.0000dp</dimen>
<dimen name="dp_352">938.6667dp</dimen>
<dimen name="dp_353">941.3333dp</dimen>
<dimen name="dp_354">944.0000dp</dimen>
<dimen name="dp_355">946.6667dp</dimen>
<dimen name="dp_356">949.3333dp</dimen>
<dimen name="dp_357">952.0000dp</dimen>
<dimen name="dp_358">954.6667dp</dimen>
<dimen name="dp_359">957.3333dp</dimen>
<dimen name="dp_360">960.0000dp</dimen>
<dimen name="dp_365">973.3333dp</dimen>
<dimen name="dp_370">986.6667dp</dimen>
<dimen name="dp_400">1066.6667dp</dimen>
<dimen name="dp_410">1093.3333dp</dimen>
<dimen name="dp_422">1125.3333dp</dimen>
<dimen name="dp_472">1258.6667dp</dimen>
<dimen name="dp_500">1333.3333dp</dimen>
<dimen name="dp_600">1600.0000dp</dimen>
<dimen name="dp_640">1706.6667dp</dimen>
<dimen name="dp_720">1920.0000dp</dimen>
<dimen name="sp_6">16.0000sp</dimen>
<dimen name="sp_7">18.6667sp</dimen>
<dimen name="sp_8">21.3333sp</dimen>
<dimen name="sp_9">24.0000sp</dimen>
<dimen name="sp_10">26.6667sp</dimen>
<dimen name="sp_11">29.3333sp</dimen>
<dimen name="sp_12">32.0000sp</dimen>
<dimen name="sp_13">34.6667sp</dimen>
<dimen name="sp_14">37.3333sp</dimen>
<dimen name="sp_15">40.0000sp</dimen>
<dimen name="sp_16">42.6667sp</dimen>
<dimen name="sp_17">45.3333sp</dimen>
<dimen name="sp_18">48.0000sp</dimen>
<dimen name="sp_19">50.6667sp</dimen>
<dimen name="sp_20">53.3333sp</dimen>
<dimen name="sp_21">56.0000sp</dimen>
<dimen name="sp_22">58.6667sp</dimen>
<dimen name="sp_23">61.3333sp</dimen>
<dimen name="sp_24">64.0000sp</dimen>
<dimen name="sp_25">66.6667sp</dimen>
<dimen name="sp_28">74.6667sp</dimen>
<dimen name="sp_30">80.0000sp</dimen>
<dimen name="sp_32">85.3333sp</dimen>
<dimen name="sp_34">90.6667sp</dimen>
<dimen name="sp_36">96.0000sp</dimen>
<dimen name="sp_38">101.3333sp</dimen>
<dimen name="sp_40">106.6667sp</dimen>
<dimen name="sp_42">112.0000sp</dimen>
<dimen name="sp_48">128.0000sp</dimen>
</resources>
<?xml version="1.0" encoding="UTF-8"?>
<resources>
<dimen name="activity_horizontal_margin">42.7111dp</dimen>
<dimen name="activity_vertical_margin">42.7111dp</dimen>
<dimen name="title_bar_head">133.4722dp</dimen>
<dimen name="card_common_margin_left">@dimen/dp_15</dimen>
<dimen name="dp_m_60">-160.1667dp</dimen>
<dimen name="dp_m_30">-80.0833dp</dimen>
<dimen name="dp_m_20">-53.3889dp</dimen>
<dimen name="dp_m_12">-32.0333dp</dimen>
<dimen name="dp_m_10">-26.6944dp</dimen>
<dimen name="dp_m_8">-21.3556dp</dimen>
<dimen name="dp_m_5">-13.3472dp</dimen>
<dimen name="dp_m_2">-5.3389dp</dimen>
<dimen name="dp_m_1">-2.6694dp</dimen>
<dimen name="dp_0">0.0000dp</dimen>
<dimen name="dp_0_1">0.2669dp</dimen>
<dimen name="dp_0_5">1.3347dp</dimen>
<dimen name="dp_1">2.6694dp</dimen>
<dimen name="dp_1_5">4.0042dp</dimen>
<dimen name="dp_2">5.3389dp</dimen>
<dimen name="dp_2_5">6.6736dp</dimen>
<dimen name="dp_3">8.0083dp</dimen>
<dimen name="dp_3_5">9.3431dp</dimen>
<dimen name="dp_4">10.6778dp</dimen>
<dimen name="dp_4_5">12.0125dp</dimen>
<dimen name="dp_5">13.3472dp</dimen>
<dimen name="dp_6">16.0167dp</dimen>
<dimen name="dp_7">18.6861dp</dimen>
<dimen name="dp_7_5">20.0208dp</dimen>
<dimen name="dp_8">21.3556dp</dimen>
<dimen name="dp_9">24.0250dp</dimen>
<dimen name="dp_10">26.6944dp</dimen>
<dimen name="dp_11">29.3639dp</dimen>
<dimen name="dp_12">32.0333dp</dimen>
<dimen name="dp_13">34.7028dp</dimen>
<dimen name="dp_14">37.3722dp</dimen>
<dimen name="dp_15">40.0417dp</dimen>
<dimen name="dp_16">42.7111dp</dimen>
<dimen name="dp_17">45.3806dp</dimen>
<dimen name="dp_18">48.0500dp</dimen>
<dimen name="dp_19">50.7194dp</dimen>
<dimen name="dp_20">53.3889dp</dimen>
<dimen name="dp_21">56.0583dp</dimen>
<dimen name="dp_22">58.7278dp</dimen>
<dimen name="dp_23">61.3972dp</dimen>
<dimen name="dp_24">64.0667dp</dimen>
<dimen name="dp_25">66.7361dp</dimen>
<dimen name="dp_26">69.4056dp</dimen>
<dimen name="dp_27">72.0750dp</dimen>
<dimen name="dp_28">74.7444dp</dimen>
<dimen name="dp_29">77.4139dp</dimen>
<dimen name="dp_30">80.0833dp</dimen>
<dimen name="dp_31">82.7528dp</dimen>
<dimen name="dp_32">85.4222dp</dimen>
<dimen name="dp_33">88.0917dp</dimen>
<dimen name="dp_34">90.7611dp</dimen>
<dimen name="dp_35">93.4306dp</dimen>
<dimen name="dp_36">96.1000dp</dimen>
<dimen name="dp_37">98.7694dp</dimen>
<dimen name="dp_38">101.4389dp</dimen>
<dimen name="dp_39">104.1083dp</dimen>
<dimen name="dp_40">106.7778dp</dimen>
<dimen name="dp_41">109.4472dp</dimen>
<dimen name="dp_42">112.1167dp</dimen>
<dimen name="dp_43">114.7861dp</dimen>
<dimen name="dp_44">117.4556dp</dimen>
<dimen name="dp_45">120.1250dp</dimen>
<dimen name="dp_46">122.7944dp</dimen>
<dimen name="dp_47">125.4639dp</dimen>
<dimen name="dp_48">128.1333dp</dimen>
<dimen name="dp_49">130.8028dp</dimen>
<dimen name="dp_50">133.4722dp</dimen>
<dimen name="dp_51">136.1417dp</dimen>
<dimen name="dp_52">138.8111dp</dimen>
<dimen name="dp_53">141.4806dp</dimen>
<dimen name="dp_54">144.1500dp</dimen>
<dimen name="dp_55">146.8194dp</dimen>
<dimen name="dp_56">149.4889dp</dimen>
<dimen name="dp_57">152.1583dp</dimen>
<dimen name="dp_58">154.8278dp</dimen>
<dimen name="dp_59">157.4972dp</dimen>
<dimen name="dp_60">160.1667dp</dimen>
<dimen name="dp_61">162.8361dp</dimen>
<dimen name="dp_62">165.5056dp</dimen>
<dimen name="dp_63">168.1750dp</dimen>
<dimen name="dp_64">170.8444dp</dimen>
<dimen name="dp_65">173.5139dp</dimen>
<dimen name="dp_66">176.1833dp</dimen>
<dimen name="dp_67">178.8528dp</dimen>
<dimen name="dp_68">181.5222dp</dimen>
<dimen name="dp_69">184.1917dp</dimen>
<dimen name="dp_70">186.8611dp</dimen>
<dimen name="dp_71">189.5306dp</dimen>
<dimen name="dp_72">192.2000dp</dimen>
<dimen name="dp_73">194.8694dp</dimen>
<dimen name="dp_74">197.5389dp</dimen>
<dimen name="dp_75">200.2083dp</dimen>
<dimen name="dp_76">202.8778dp</dimen>
<dimen name="dp_77">205.5472dp</dimen>
<dimen name="dp_78">208.2167dp</dimen>
<dimen name="dp_79">210.8861dp</dimen>
<dimen name="dp_80">213.5556dp</dimen>
<dimen name="dp_81">216.2250dp</dimen>
<dimen name="dp_82">218.8944dp</dimen>
<dimen name="dp_83">221.5639dp</dimen>
<dimen name="dp_84">224.2333dp</dimen>
<dimen name="dp_85">226.9028dp</dimen>
<dimen name="dp_86">229.5722dp</dimen>
<dimen name="dp_87">232.2417dp</dimen>
<dimen name="dp_88">234.9111dp</dimen>
<dimen name="dp_89">237.5806dp</dimen>
<dimen name="dp_90">240.2500dp</dimen>
<dimen name="dp_91">242.9194dp</dimen>
<dimen name="dp_92">245.5889dp</dimen>
<dimen name="dp_93">248.2583dp</dimen>
<dimen name="dp_94">250.9278dp</dimen>
<dimen name="dp_95">253.5972dp</dimen>
<dimen name="dp_96">256.2667dp</dimen>
<dimen name="dp_97">258.9361dp</dimen>
<dimen name="dp_98">261.6056dp</dimen>
<dimen name="dp_99">264.2750dp</dimen>
<dimen name="dp_100">266.9444dp</dimen>
<dimen name="dp_101">269.6139dp</dimen>
<dimen name="dp_102">272.2833dp</dimen>
<dimen name="dp_103">274.9528dp</dimen>
<dimen name="dp_104">277.6222dp</dimen>
<dimen name="dp_104_5">278.9569dp</dimen>
<dimen name="dp_105">280.2917dp</dimen>
<dimen name="dp_106">282.9611dp</dimen>
<dimen name="dp_107">285.6306dp</dimen>
<dimen name="dp_108">288.3000dp</dimen>
<dimen name="dp_109">290.9694dp</dimen>
<dimen name="dp_110">293.6389dp</dimen>
<dimen name="dp_111">296.3083dp</dimen>
<dimen name="dp_112">298.9778dp</dimen>
<dimen name="dp_113">301.6472dp</dimen>
<dimen name="dp_114">304.3167dp</dimen>
<dimen name="dp_115">306.9861dp</dimen>
<dimen name="dp_116">309.6556dp</dimen>
<dimen name="dp_117">312.3250dp</dimen>
<dimen name="dp_118">314.9944dp</dimen>
<dimen name="dp_119">317.6639dp</dimen>
<dimen name="dp_120">320.3333dp</dimen>
<dimen name="dp_121">323.0028dp</dimen>
<dimen name="dp_122">325.6722dp</dimen>
<dimen name="dp_123">328.3417dp</dimen>
<dimen name="dp_124">331.0111dp</dimen>
<dimen name="dp_125">333.6806dp</dimen>
<dimen name="dp_126">336.3500dp</dimen>
<dimen name="dp_127">339.0194dp</dimen>
<dimen name="dp_128">341.6889dp</dimen>
<dimen name="dp_129">344.3583dp</dimen>
<dimen name="dp_130">347.0278dp</dimen>
<dimen name="dp_131">349.6972dp</dimen>
<dimen name="dp_132">352.3667dp</dimen>
<dimen name="dp_133">355.0361dp</dimen>
<dimen name="dp_134">357.7056dp</dimen>
<dimen name="dp_134_5">359.0403dp</dimen>
<dimen name="dp_135">360.3750dp</dimen>
<dimen name="dp_136">363.0444dp</dimen>
<dimen name="dp_137">365.7139dp</dimen>
<dimen name="dp_138">368.3833dp</dimen>
<dimen name="dp_139">371.0528dp</dimen>
<dimen name="dp_140">373.7222dp</dimen>
<dimen name="dp_141">376.3917dp</dimen>
<dimen name="dp_142">379.0611dp</dimen>
<dimen name="dp_143">381.7306dp</dimen>
<dimen name="dp_144">384.4000dp</dimen>
<dimen name="dp_145">387.0694dp</dimen>
<dimen name="dp_146">389.7389dp</dimen>
<dimen name="dp_147">392.4083dp</dimen>
<dimen name="dp_148">395.0778dp</dimen>
<dimen name="dp_149">397.7472dp</dimen>
<dimen name="dp_150">400.4167dp</dimen>
<dimen name="dp_151">403.0861dp</dimen>
<dimen name="dp_152">405.7556dp</dimen>
<dimen name="dp_153">408.4250dp</dimen>
<dimen name="dp_154">411.0944dp</dimen>
<dimen name="dp_155">413.7639dp</dimen>
<dimen name="dp_156">416.4333dp</dimen>
<dimen name="dp_157">419.1028dp</dimen>
<dimen name="dp_158">421.7722dp</dimen>
<dimen name="dp_159">424.4417dp</dimen>
<dimen name="dp_160">427.1111dp</dimen>
<dimen name="dp_161">429.7806dp</dimen>
<dimen name="dp_162">432.4500dp</dimen>
<dimen name="dp_163">435.1194dp</dimen>
<dimen name="dp_164">437.7889dp</dimen>
<dimen name="dp_165">440.4583dp</dimen>
<dimen name="dp_166">443.1278dp</dimen>
<dimen name="dp_167">445.7972dp</dimen>
<dimen name="dp_168">448.4667dp</dimen>
<dimen name="dp_169">451.1361dp</dimen>
<dimen name="dp_170">453.8056dp</dimen>
<dimen name="dp_171">456.4750dp</dimen>
<dimen name="dp_172">459.1444dp</dimen>
<dimen name="dp_173">461.8139dp</dimen>
<dimen name="dp_174">464.4833dp</dimen>
<dimen name="dp_175">467.1528dp</dimen>
<dimen name="dp_176">469.8222dp</dimen>
<dimen name="dp_177">472.4917dp</dimen>
<dimen name="dp_178">475.1611dp</dimen>
<dimen name="dp_179">477.8306dp</dimen>
<dimen name="dp_180">480.5000dp</dimen>
<dimen name="dp_181">483.1694dp</dimen>
<dimen name="dp_182">485.8389dp</dimen>
<dimen name="dp_183">488.5083dp</dimen>
<dimen name="dp_184">491.1778dp</dimen>
<dimen name="dp_185">493.8472dp</dimen>
<dimen name="dp_186">496.5167dp</dimen>
<dimen name="dp_187">499.1861dp</dimen>
<dimen name="dp_188">501.8556dp</dimen>
<dimen name="dp_189">504.5250dp</dimen>
<dimen name="dp_190">507.1944dp</dimen>
<dimen name="dp_191">509.8639dp</dimen>
<dimen name="dp_191_25">510.5312dp</dimen>
<dimen name="dp_192">512.5333dp</dimen>
<dimen name="dp_193">515.2028dp</dimen>
<dimen name="dp_194">517.8722dp</dimen>
<dimen name="dp_195">520.5417dp</dimen>
<dimen name="dp_196">523.2111dp</dimen>
<dimen name="dp_197">525.8806dp</dimen>
<dimen name="dp_198">528.5500dp</dimen>
<dimen name="dp_199">531.2194dp</dimen>
<dimen name="dp_200">533.8889dp</dimen>
<dimen name="dp_201">536.5583dp</dimen>
<dimen name="dp_202">539.2278dp</dimen>
<dimen name="dp_203">541.8972dp</dimen>
<dimen name="dp_204">544.5667dp</dimen>
<dimen name="dp_205">547.2361dp</dimen>
<dimen name="dp_206">549.9056dp</dimen>
<dimen name="dp_207">552.5750dp</dimen>
<dimen name="dp_208">555.2444dp</dimen>
<dimen name="dp_209">557.9139dp</dimen>
<dimen name="dp_210">560.5833dp</dimen>
<dimen name="dp_211">563.2528dp</dimen>
<dimen name="dp_212">565.9222dp</dimen>
<dimen name="dp_213">568.5917dp</dimen>
<dimen name="dp_214">571.2611dp</dimen>
<dimen name="dp_215">573.9306dp</dimen>
<dimen name="dp_216">576.6000dp</dimen>
<dimen name="dp_217">579.2694dp</dimen>
<dimen name="dp_218">581.9389dp</dimen>
<dimen name="dp_219">584.6083dp</dimen>
<dimen name="dp_220">587.2778dp</dimen>
<dimen name="dp_221">589.9472dp</dimen>
<dimen name="dp_222">592.6167dp</dimen>
<dimen name="dp_223">595.2861dp</dimen>
<dimen name="dp_224">597.9556dp</dimen>
<dimen name="dp_225">600.6250dp</dimen>
<dimen name="dp_226">603.2944dp</dimen>
<dimen name="dp_227">605.9639dp</dimen>
<dimen name="dp_228">608.6333dp</dimen>
<dimen name="dp_229">611.3028dp</dimen>
<dimen name="dp_230">613.9722dp</dimen>
<dimen name="dp_231">616.6417dp</dimen>
<dimen name="dp_232">619.3111dp</dimen>
<dimen name="dp_233">621.9806dp</dimen>
<dimen name="dp_234">624.6500dp</dimen>
<dimen name="dp_235">627.3194dp</dimen>
<dimen name="dp_236">629.9889dp</dimen>
<dimen name="dp_237">632.6583dp</dimen>
<dimen name="dp_238">635.3278dp</dimen>
<dimen name="dp_239">637.9972dp</dimen>
<dimen name="dp_240">640.6667dp</dimen>
<dimen name="dp_241">643.3361dp</dimen>
<dimen name="dp_242">646.0056dp</dimen>
<dimen name="dp_243">648.6750dp</dimen>
<dimen name="dp_244">651.3444dp</dimen>
<dimen name="dp_245">654.0139dp</dimen>
<dimen name="dp_246">656.6833dp</dimen>
<dimen name="dp_247">659.3528dp</dimen>
<dimen name="dp_248">662.0222dp</dimen>
<dimen name="dp_249">664.6917dp</dimen>
<dimen name="dp_250">667.3611dp</dimen>
<dimen name="dp_251">670.0306dp</dimen>
<dimen name="dp_252">672.7000dp</dimen>
<dimen name="dp_253">675.3694dp</dimen>
<dimen name="dp_254">678.0389dp</dimen>
<dimen name="dp_255">680.7083dp</dimen>
<dimen name="dp_256">683.3778dp</dimen>
<dimen name="dp_257">686.0472dp</dimen>
<dimen name="dp_258">688.7167dp</dimen>
<dimen name="dp_259">691.3861dp</dimen>
<dimen name="dp_260">694.0556dp</dimen>
<dimen name="dp_261">696.7250dp</dimen>
<dimen name="dp_262">699.3944dp</dimen>
<dimen name="dp_263">702.0639dp</dimen>
<dimen name="dp_264">704.7333dp</dimen>
<dimen name="dp_265">707.4028dp</dimen>
<dimen name="dp_266">710.0722dp</dimen>
<dimen name="dp_267">712.7417dp</dimen>
<dimen name="dp_268">715.4111dp</dimen>
<dimen name="dp_269">718.0806dp</dimen>
<dimen name="dp_270">720.7500dp</dimen>
<dimen name="dp_271">723.4194dp</dimen>
<dimen name="dp_272">726.0889dp</dimen>
<dimen name="dp_273">728.7583dp</dimen>
<dimen name="dp_274">731.4278dp</dimen>
<dimen name="dp_275">734.0972dp</dimen>
<dimen name="dp_276">736.7667dp</dimen>
<dimen name="dp_277">739.4361dp</dimen>
<dimen name="dp_278">742.1056dp</dimen>
<dimen name="dp_279">744.7750dp</dimen>
<dimen name="dp_280">747.4444dp</dimen>
<dimen name="dp_281">750.1139dp</dimen>
<dimen name="dp_282">752.7833dp</dimen>
<dimen name="dp_283">755.4528dp</dimen>
<dimen name="dp_284">758.1222dp</dimen>
<dimen name="dp_285">760.7917dp</dimen>
<dimen name="dp_286">763.4611dp</dimen>
<dimen name="dp_287">766.1306dp</dimen>
<dimen name="dp_288">768.8000dp</dimen>
<dimen name="dp_289">771.4694dp</dimen>
<dimen name="dp_290">774.1389dp</dimen>
<dimen name="dp_291">776.8083dp</dimen>
<dimen name="dp_292">779.4778dp</dimen>
<dimen name="dp_293">782.1472dp</dimen>
<dimen name="dp_294">784.8167dp</dimen>
<dimen name="dp_295">787.4861dp</dimen>
<dimen name="dp_296">790.1556dp</dimen>
<dimen name="dp_297">792.8250dp</dimen>
<dimen name="dp_298">795.4944dp</dimen>
<dimen name="dp_299">798.1639dp</dimen>
<dimen name="dp_300">800.8333dp</dimen>
<dimen name="dp_301">803.5028dp</dimen>
<dimen name="dp_302">806.1722dp</dimen>
<dimen name="dp_303">808.8417dp</dimen>
<dimen name="dp_304">811.5111dp</dimen>
<dimen name="dp_305">814.1806dp</dimen>
<dimen name="dp_306">816.8500dp</dimen>
<dimen name="dp_307">819.5194dp</dimen>
<dimen name="dp_308">822.1889dp</dimen>
<dimen name="dp_309">824.8583dp</dimen>
<dimen name="dp_310">827.5278dp</dimen>
<dimen name="dp_311">830.1972dp</dimen>
<dimen name="dp_312">832.8667dp</dimen>
<dimen name="dp_313">835.5361dp</dimen>
<dimen name="dp_314">838.2056dp</dimen>
<dimen name="dp_315">840.8750dp</dimen>
<dimen name="dp_316">843.5444dp</dimen>
<dimen name="dp_317">846.2139dp</dimen>
<dimen name="dp_318">848.8833dp</dimen>
<dimen name="dp_319">851.5528dp</dimen>
<dimen name="dp_320">854.2222dp</dimen>
<dimen name="dp_321">856.8917dp</dimen>
<dimen name="dp_322">859.5611dp</dimen>
<dimen name="dp_323">862.2306dp</dimen>
<dimen name="dp_324">864.9000dp</dimen>
<dimen name="dp_325">867.5694dp</dimen>
<dimen name="dp_326">870.2389dp</dimen>
<dimen name="dp_327">872.9083dp</dimen>
<dimen name="dp_328">875.5778dp</dimen>
<dimen name="dp_329">878.2472dp</dimen>
<dimen name="dp_330">880.9167dp</dimen>
<dimen name="dp_331">883.5861dp</dimen>
<dimen name="dp_332">886.2556dp</dimen>
<dimen name="dp_333">888.9250dp</dimen>
<dimen name="dp_334">891.5944dp</dimen>
<dimen name="dp_335">894.2639dp</dimen>
<dimen name="dp_336">896.9333dp</dimen>
<dimen name="dp_337">899.6028dp</dimen>
<dimen name="dp_338">902.2722dp</dimen>
<dimen name="dp_339">904.9417dp</dimen>
<dimen name="dp_340">907.6111dp</dimen>
<dimen name="dp_341">910.2806dp</dimen>
<dimen name="dp_342">912.9500dp</dimen>
<dimen name="dp_343">915.6194dp</dimen>
<dimen name="dp_344">918.2889dp</dimen>
<dimen name="dp_345">920.9583dp</dimen>
<dimen name="dp_346">923.6278dp</dimen>
<dimen name="dp_347">926.2972dp</dimen>
<dimen name="dp_348">928.9667dp</dimen>
<dimen name="dp_349">931.6361dp</dimen>
<dimen name="dp_350">934.3056dp</dimen>
<dimen name="dp_351">936.9750dp</dimen>
<dimen name="dp_352">939.6444dp</dimen>
<dimen name="dp_353">942.3139dp</dimen>
<dimen name="dp_354">944.9833dp</dimen>
<dimen name="dp_355">947.6528dp</dimen>
<dimen name="dp_356">950.3222dp</dimen>
<dimen name="dp_357">952.9917dp</dimen>
<dimen name="dp_358">955.6611dp</dimen>
<dimen name="dp_359">958.3306dp</dimen>
<dimen name="dp_360">961.0000dp</dimen>
<dimen name="dp_365">974.3472dp</dimen>
<dimen name="dp_370">987.6944dp</dimen>
<dimen name="dp_400">1067.7778dp</dimen>
<dimen name="dp_410">1094.4722dp</dimen>
<dimen name="dp_422">1126.5056dp</dimen>
<dimen name="dp_472">1259.9778dp</dimen>
<dimen name="dp_500">1334.7222dp</dimen>
<dimen name="dp_600">1601.6667dp</dimen>
<dimen name="dp_640">1708.4444dp</dimen>
<dimen name="dp_720">1922.0000dp</dimen>
<dimen name="sp_6">16.0167sp</dimen>
<dimen name="sp_7">18.6861sp</dimen>
<dimen name="sp_8">21.3556sp</dimen>
<dimen name="sp_9">24.0250sp</dimen>
<dimen name="sp_10">26.6944sp</dimen>
<dimen name="sp_11">29.3639sp</dimen>
<dimen name="sp_12">32.0333sp</dimen>
<dimen name="sp_13">34.7028sp</dimen>
<dimen name="sp_14">37.3722sp</dimen>
<dimen name="sp_15">40.0417sp</dimen>
<dimen name="sp_16">42.7111sp</dimen>
<dimen name="sp_17">45.3806sp</dimen>
<dimen name="sp_18">48.0500sp</dimen>
<dimen name="sp_19">50.7194sp</dimen>
<dimen name="sp_20">53.3889sp</dimen>
<dimen name="sp_21">56.0583sp</dimen>
<dimen name="sp_22">58.7278sp</dimen>
<dimen name="sp_23">61.3972sp</dimen>
<dimen name="sp_24">64.0667sp</dimen>
<dimen name="sp_25">66.7361sp</dimen>
<dimen name="sp_28">74.7444sp</dimen>
<dimen name="sp_30">80.0833sp</dimen>
<dimen name="sp_32">85.4222sp</dimen>
<dimen name="sp_34">90.7611sp</dimen>
<dimen name="sp_36">96.1000sp</dimen>
<dimen name="sp_38">101.4389sp</dimen>
<dimen name="sp_40">106.7778sp</dimen>
<dimen name="sp_42">112.1167sp</dimen>
<dimen name="sp_48">128.1333sp</dimen>
</resources>
<?xml version="1.0" encoding="utf-8"?>
<resources>
<declare-styleable name="TypefaceTextView">
<attr name="typeface" format="string" />
</declare-styleable>
</resources>
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="colorPrimary">#6200EE</color>
<color name="colorPrimaryDark">#3700B3</color>
<color name="colorAccent">#03DAC5</color>
<color name="color_ceiled">#f1cd78</color>
<color name="color_payed">#333</color>
<color name="color_nofinish">#728DAF</color>
<color name="color_finished">#00c087</color>
<color name="color_f1f1">#F1F1F1</color>
<color name="color_line">#c0c0c0</color>
<color name="white">@android:color/white</color>
<color name="hui_lan">#D5E6FF</color>
<color name="black_white">#F4F8FB</color>
<color name="checked">#ff138768</color>
<color name="unchecked">#ff747575</color>
<color name="transparent">#00000000</color><!--透明色 -->
<color name="ivory">#FFFFF0</color><!--象牙色 -->
<color name="lightyellow">#FFFFE0</color><!--亮黄色 -->
<color name="yellow">#FFFF00</color><!--黄色 -->
<color name="snow">#FFFAFA</color><!--雪白色 -->
<color name="floralwhite">#FFFAF0</color><!--花白色 -->
<color name="lemonchiffon">#FFFACD</color><!--柠檬绸色 -->
<color name="cornsilk">#FFF8DC</color><!--米绸色 -->
<color name="seashell">#FFF5EE</color><!--海贝色 -->
<color name="lavenderblush">#FFF0F5</color><!--淡紫红 -->
<color name="papayawhip">#FFEFD5</color><!--番木色 -->
<color name="blanchedalmond">#FFEBCD</color><!--白杏色 -->
<color name="mistyrose">#FFE4E1</color><!--浅玫瑰色 -->
<color name="bisque">#FFE4C4</color><!--桔黄色 -->
<color name="moccasin">#FFE4B5</color><!--鹿皮色 -->
<color name="navajowhite">#FFDEAD</color><!--纳瓦白 -->
<color name="peachpuff">#FFDAB9</color><!--桃色 -->
<color name="gold">#FFD700</color><!--金色 -->
<color name="pink">#FFC0CB</color><!--粉红色 -->
<color name="lightpink">#FFB6C1</color><!--亮粉红色 -->
<color name="orange">#FFA500</color><!--橙色 -->
<color name="lightsalmon">#FFA07A</color><!--亮肉色 -->
<color name="darkorange">#FF8C00</color><!--暗桔黄色 -->
<color name="coral">#FF7F50</color><!--珊瑚色 -->
<color name="hotpink">#FF69B4</color><!--热粉红色 -->
<color name="tomato">#FF6347</color><!--西红柿色 -->
<color name="orangered">#FF4500</color><!--红橙色 -->
<color name="deeppink">#FF1493</color><!--深粉红色 -->
<color name="fuchsia">#FF00FF</color><!--紫红色 -->
<color name="red">#FF0000</color><!--红色 -->
<color name="oldlace">#FDF5E6</color><!--老花色 -->
<color name="lightgoldenrodyellow">#FAFAD2</color><!--亮金黄色 -->
<color name="linen">#FAF0E6</color><!--亚麻色 -->
<color name="antiquewhite">#FAEBD7</color><!--古董白 -->
<color name="salmon">#FA8072</color><!--鲜肉色 -->
<color name="ghostwhite">#F8F8FF</color><!--幽灵白 -->
<color name="mintcream">#F5FFFA</color><!--薄荷色 -->
<color name="whitesmoke">#F5F5F5</color><!--烟白色 -->
<color name="beige">#F5F5DC</color><!--米色 -->
<color name="wheat">#F5DEB3</color><!--浅黄色 -->
<color name="sandybrown">#F4A460</color><!--沙褐色 -->
<color name="azure">#F0FFFF</color><!--天蓝色 -->
<color name="honeydew">#F0FFF0</color><!--蜜色 -->
<color name="aliceblue">#F0F8FF</color><!--艾利斯兰 -->
<color name="khaki">#F0E68C</color><!--黄褐色 -->
<color name="lightcoral">#F08080</color><!--亮珊瑚色 -->
<color name="palegoldenrod">#EEE8AA</color><!--苍麒麟色 -->
<color name="violet">#EE82EE</color><!--紫罗兰色 -->
<color name="darksalmon">#E9967A</color><!--暗肉色 -->
<color name="lavender">#E6E6FA</color><!--淡紫色 -->
<color name="lightcyan">#E0FFFF</color><!--亮青色 -->
<color name="burlywood">#DEB887</color><!--实木色 -->
<color name="plum">#DDA0DD</color><!--洋李色 -->
<color name="gainsboro">#DCDCDC</color><!--淡灰色 -->
<color name="crimson">#DC143C</color><!--暗深红色 -->
<color name="palevioletred">#DB7093</color><!--苍紫罗兰色 -->
<color name="goldenrod">#DAA520</color><!--金麒麟色 -->
<color name="orchid">#DA70D6</color><!--淡紫色 -->
<color name="thistle">#D8BFD8</color><!--蓟色 -->
<color name="lightgray">#D3D3D3</color><!--亮灰色 -->
<color name="tan">#D2B48C</color><!--茶色 -->
<color name="chocolate">#D2691E</color><!--巧可力色 -->
<color name="peru">#CD853F</color><!--秘鲁色 -->
<color name="indianred">#CD5C5C</color><!--印第安红 -->
<color name="mediumvioletred">#C71585</color><!--中紫罗兰色 -->
<color name="silver">#C0C0C0</color><!--银色 -->
<color name="darkkhaki">#BDB76B</color><!--暗黄褐色 -->
<color name="rosybrown">#BC8F8F</color><!--褐玫瑰红 -->
<color name="mediumorchid">#BA55D3</color><!--中粉紫色 -->
<color name="darkgoldenrod">#B8860B</color><!--暗金黄色 -->
<color name="firebrick">#B22222</color><!--火砖色 -->
<color name="powderblue">#B0E0E6</color><!--粉蓝色 -->
<color name="lightsteelblue">#B0C4DE</color><!--亮钢兰色 -->
<color name="paleturquoise">#AFEEEE</color><!--苍宝石绿 -->
<color name="greenyellow">#ADFF2F</color><!--黄绿色 -->
<color name="lightblue">#ADD8E6</color><!--亮蓝色 -->
<color name="darkgray">#A9A9A9</color><!--暗灰色 -->
<color name="brown">#A52A2A</color><!--褐色 -->
<color name="sienna">#A0522D</color><!--赭色 -->
<color name="darkorchid">#9932CC</color><!--暗紫色 -->
<color name="palegreen">#98FB98</color><!--苍绿色 -->
<color name="darkviolet">#9400D3</color><!--暗紫罗兰色 -->
<color name="mediumpurple">#9370DB</color><!--中紫色 -->
<color name="lightgreen">#90EE90</color><!--亮绿色 -->
<color name="darkseagreen">#8FBC8F</color><!--暗海兰色 -->
<color name="saddlebrown">#8B4513</color><!--重褐色 -->
<color name="darkmagenta">#8B008B</color><!--暗洋红 -->
<color name="darkred">#8B0000</color><!--暗红色 -->
<color name="blueviolet">#8A2BE2</color><!--紫罗兰蓝色 -->
<color name="lightskyblue">#87CEFA</color><!--亮天蓝色 -->
<color name="skyblue">#87CEEB</color><!--天蓝色 -->
<color name="gray">#808080</color><!--灰色 -->
<color name="olive">#808000</color><!--橄榄色 -->
<color name="purple">#800080</color><!--紫色 -->
<color name="maroon">#800000</color><!--粟色 -->
<color name="aquamarine">#7FFFD4</color><!--碧绿色 -->
<color name="chartreuse">#7FFF00</color><!--黄绿色 -->
<color name="lawngreen">#7CFC00</color><!--草绿色 -->
<color name="mediumslateblue">#7B68EE</color><!--中暗蓝色 -->
<color name="lightslategray">#778899</color><!--亮蓝灰 -->
<color name="slategray">#708090</color><!--灰石色 -->
<color name="olivedrab">#6B8E23</color><!--深绿褐色 -->
<color name="slateblue">#6A5ACD</color><!--石蓝色 -->
<color name="dimgray">#696969</color><!--暗灰色 -->
<color name="mediumaquamarine">#66CDAA</color><!--中绿色 -->
<color name="cornflowerblue">#6495ED</color><!--菊兰色 -->
<color name="cadetblue">#5F9EA0</color><!--军兰色 -->
<color name="darkolivegreen">#556B2F</color><!--暗橄榄绿 -->
<color name="indigo">#4B0082</color><!--靛青色 -->
<color name="mediumturquoise">#48D1CC</color><!--中绿宝石 -->
<color name="darkslateblue">#483D8B</color><!--暗灰蓝色 -->
<color name="steelblue">#4682B4</color><!--钢兰色 -->
<color name="royalblue">#4169E1</color><!--皇家蓝 -->
<color name="turquoise">#40E0D0</color><!--青绿色 -->
<color name="mediumseagreen">#3CB371</color><!--中海蓝 -->
<color name="limegreen">#32CD32</color><!--橙绿色 -->
<color name="darkslategray">#2F4F4F</color><!--暗瓦灰色 -->
<color name="seagreen">#2E8B57</color><!--海绿色 -->
<color name="forestgreen">#228B22</color><!--森林绿 -->
<color name="lightseagreen">#20B2AA</color><!--亮海蓝色 -->
<color name="dodgerblue">#1E90FF</color><!--闪兰色 -->
<color name="midnightblue">#191970</color><!--中灰兰色 -->
<color name="aqua">#00FFFF</color><!--浅绿色 -->
<color name="cyan">#00FFFF</color><!--青色 -->
<color name="springgreen">#00FF7F</color><!--春绿色 -->
<color name="lime">#00FF00</color><!--酸橙色 -->
<color name="mediumspringgreen">#00FA9A</color><!--中春绿色 -->
<color name="darkturquoise">#00CED1</color><!--暗宝石绿 -->
<color name="deepskyblue">#00BFFF</color><!--深天蓝色 -->
<color name="darkcyan">#008B8B</color><!--暗青色 -->
<color name="teal">#008080</color><!--水鸭色 -->
<color name="green">#008000</color><!--绿色 -->
<color name="darkgreen">#006400</color><!--暗绿色 -->
<color name="blue">#0000FF</color><!--蓝色 -->
<color name="mediumblue">#0000CD</color><!--中兰色 -->
<color name="darkblue">#00008B</color><!--暗蓝色 -->
<color name="navy">#000080</color><!--海军色 -->
<color name="black">#000000</color><!--黑色 -->
<color name="black2">#FF111010</color><!--黑色 -->
<color name="grassgreen">#99cc33</color><!--草绿色 -->
<color name="gray_cc">#e3e3e3</color><!--灰色cc -->
<color name="gray_qq">#f7f7f7</color><!--灰色qq -->
<color name="gray_8f">#8f8f8f</color><!--灰色8f -->
<color name="toumingbai">#54ffffff</color><!--透明白 -->
<color name="yanbai">#767A83</color><!--透明白 -->
<color name="text_blu">#90A1B1</color><!--lan -->
<color name="backer_back">#13151C</color><!--lan -->
<color name="red_main">#FF3E60</color>
<color name="red_pressed">#ce2b13</color>
<color name="gray_f5">#f5f5f5</color>
<color name="gray_66">#666666</color>
<color name="gray_99">#999999</color>
<color name="text_blue">#308BE9</color>
<color name="child_line_gray_ee">#eeeeee</color>
<color name="child_line_gray_dd">#dddddd</color>
<color name="comment_mark">#fc8714</color>
<color name="comment_all_text">#4e677a</color>
<color name="btn_pressed_true">#2789ba</color>
<color name="store_addr">#415c71</color>
<color name="yellow_point">#fdbc20</color>
<color name="blue_line">#4db7f3</color>
<color name="blue_text">#45afe1</color>
<color name="blue_light">#1aa3f0</color>
<color name="blue_light_line">#5fbff5</color>
<color name="blue_light_corner">#edf9fe</color>
<color name="black_33">#333333</color>
<color name="black_alpha_100">#ff000000</color>
<color name="black_alpha_95">#f2000000</color>
<color name="black_alpha_90">#e6000000</color>
<color name="black_alpha_85">#d9000000</color>
<color name="black_alpha_80">#cc000000</color>
<color name="black_alpha_75">#bf000000</color>
<color name="black_alpha_70">#b3000000</color>
<color name="black_alpha_65">#a6000000</color>
<color name="black_alpha_60">#99000000</color>
<color name="black_alpha_55">#8c000000</color>
<color name="black_alpha_50">#80000000</color>
<color name="black_alpha_45">#73000000</color>
<color name="black_alpha_40">#66000000</color>
<color name="black_alpha_35">#59000000</color>
<color name="black_alpha_30">#4d000000</color>
<color name="black_alpha_25">#40000000</color>
<color name="black_alpha_20">#33000000</color>
<color name="black_alpha_15">#26000000</color>
<color name="black_alpha_10">#1a000000</color>
<color name="black_alpha_05">#0d000000</color>
<color name="black_item">#11151D</color>
<color name="black_blue">#1E2834</color>
<color name="white_alpha_80">#ccffffff</color>
<color name="white_alpha_70">#b3ffffff</color>
<color name="white_alpha_30">#4dffffff</color>
<color name="white_alpha_20">#33ffffff</color>
<color name="red_alpha_50">#80fc1f02</color>
<color name="yellow_alpha_70">#b3fdbc20</color>
<color name="none_color">#00000000</color>
<color name="ml_white">#ffffffff</color>
<color name="ml_gray">#ff9e9e9e</color>
<color name="ml_blue">#ff239efe</color>
<color name="ml_red">#ffff0000</color>
<color name="deal_text_color">#4F5C85</color>
<!--<color name="chart_red">#26BF66</color>-->
<!--<color name="chart_red">#FF8A7C</color>-->
<color name="chart_red">#D04B63</color>
<color name="color_D04B63">#FF3E60</color>
<color name="color_6384FF">#6384FF</color>
<color name="color_E8D28E">#E8D28E</color>
<color name="color_57BEB1">#00C087</color>
<color name="color_53B4A9">#00C087</color>
<color name="chart_green">#00C087</color>
<!--<color name="chart_green">#ffffff</color>-->
<color name="chart_line">#5498FF</color>
<color name="chart_line_background">#00ffffff</color>
<!--<color name="chart_line_white">#66ffffff</color>-->
<color name="chart_line_white">#445498FF</color>
<color name="chart_line_color">#6384FF</color>
<color name="chart_ma5">#DA8AE5</color>
<color name="chart_ma10">#39B0E8</color>
<color name="chart_ma30">#FFC76D</color>
<color name="chart_white">#ffffff</color>
<color name="chart_background">#202326</color>
<color name="chart_bac">#111622</color>
<color name="chart_point_bac">#202326</color>
<color name="chart_grid_line">#662B2D52</color>
<color name="chart_text">#818596</color>
<color name="chart_selector_new">#882E3546</color>
<color name="chart_tab_background">#30343C</color>
<color name="color_2982D1">#3F51B5</color>
<color name="chart_tab_indicator">#FF6601</color>
<color name="text_indicator">#E2026F</color>
<color name="color_111622">#111622</color>
</resources>
\ No newline at end of file
<resources>
<dimen name="chart_0.5dp">0.5dp</dimen>
<dimen name="child_top_padding">10dp</dimen>
<dimen name="activity_horizontal_margin">16dp</dimen>
<dimen name="activity_vertical_margin">16dp</dimen>
<dimen name="title_bar_head">50dp</dimen>
<!-- Your custom size defind by references, can be writted in anywhere, any module, any values/*.xml, for example: -->
<dimen name="card_common_margin_left">@dimen/dp_15</dimen>
<dimen name="chart_text_size">10sp</dimen>
<dimen name="chart_selector_text_size">12sp</dimen>
<dimen name="chart_candle_line_width">1dp</dimen>
<dimen name="chart_candle_width">4dp</dimen>
<dimen name="chart_line_width">0.5dp</dimen>
<dimen name="chart_grid_line_width">1dp</dimen>
<dimen name="chart_point_width">6dp</dimen>
<dimen name="chart_top_padding">15dp</dimen>
<dimen name="chart_bottom_padding">15dp</dimen>
<!-- dp and sp values, must be defind in this file! -->
<!-- view size,you can add if there is no one -->
<dimen name="dp_m_60">-60dp</dimen>
<dimen name="dp_m_30">-30dp</dimen>
<dimen name="dp_m_20">-20dp</dimen>
<dimen name="dp_m_12">-12dp</dimen>
<dimen name="dp_m_10">-10dp</dimen>
<dimen name="dp_m_8">-8dp</dimen>
<dimen name="dp_m_5">-5dp</dimen>
<dimen name="dp_m_2">-2dp</dimen>
<dimen name="dp_m_1">-1dp</dimen>
<dimen name="dp_0">0dp</dimen>
<dimen name="dp_0_1">0.1dp</dimen>
<dimen name="dp_0_5">0.5dp</dimen>
<dimen name="dp_1">1dp</dimen>
<dimen name="dp_1_5">1.5dp</dimen>
<dimen name="dp_2">2dp</dimen>
<dimen name="dp_2_5">2.5dp</dimen>
<dimen name="dp_3">3dp</dimen>
<dimen name="dp_3_5">3.5dp</dimen>
<dimen name="dp_4">4dp</dimen>
<dimen name="dp_4_5">4.5dp</dimen>
<dimen name="dp_5">5dp</dimen>
<dimen name="dp_6">6dp</dimen>
<dimen name="dp_7">7dp</dimen>
<dimen name="dp_7_5">7.5dp</dimen>
<dimen name="dp_8">8dp</dimen>
<dimen name="dp_9">9dp</dimen>
<dimen name="dp_10">10dp</dimen>
<dimen name="dp_11">11dp</dimen>
<dimen name="dp_12">12dp</dimen>
<dimen name="dp_13">13dp</dimen>
<dimen name="dp_14">14dp</dimen>
<dimen name="dp_15">15dp</dimen>
<dimen name="dp_16">16dp</dimen>
<dimen name="dp_17">17dp</dimen>
<dimen name="dp_18">18dp</dimen>
<dimen name="dp_19">19dp</dimen>
<dimen name="dp_20">20dp</dimen>
<dimen name="dp_21">21dp</dimen>
<dimen name="dp_22">22dp</dimen>
<dimen name="dp_23">23dp</dimen>
<dimen name="dp_24">24dp</dimen>
<dimen name="dp_25">25dp</dimen>
<dimen name="dp_26">26dp</dimen>
<dimen name="dp_27">27dp</dimen>
<dimen name="dp_28">28dp</dimen>
<dimen name="dp_29">29dp</dimen>
<dimen name="dp_30">30dp</dimen>
<dimen name="dp_31">31dp</dimen>
<dimen name="dp_32">32dp</dimen>
<dimen name="dp_33">33dp</dimen>
<dimen name="dp_34">34dp</dimen>
<dimen name="dp_35">35dp</dimen>
<dimen name="dp_36">36dp</dimen>
<dimen name="dp_37">37dp</dimen>
<dimen name="dp_38">38dp</dimen>
<dimen name="dp_39">39dp</dimen>
<dimen name="dp_40">40dp</dimen>
<dimen name="dp_41">41dp</dimen>
<dimen name="dp_42">42dp</dimen>
<dimen name="dp_43">43dp</dimen>
<dimen name="dp_44">44dp</dimen>
<dimen name="dp_45">45dp</dimen>
<dimen name="dp_46">46dp</dimen>
<dimen name="dp_47">47dp</dimen>
<dimen name="dp_48">48dp</dimen>
<dimen name="dp_49">49dp</dimen>
<dimen name="dp_50">50dp</dimen>
<dimen name="dp_51">51dp</dimen>
<dimen name="dp_52">52dp</dimen>
<dimen name="dp_53">53dp</dimen>
<dimen name="dp_54">54dp</dimen>
<dimen name="dp_55">55dp</dimen>
<dimen name="dp_56">56dp</dimen>
<dimen name="dp_57">57dp</dimen>
<dimen name="dp_58">58dp</dimen>
<dimen name="dp_59">59dp</dimen>
<dimen name="dp_60">60dp</dimen>
<dimen name="dp_61">61dp</dimen>
<dimen name="dp_62">62dp</dimen>
<dimen name="dp_63">63dp</dimen>
<dimen name="dp_64">64dp</dimen>
<dimen name="dp_65">65dp</dimen>
<dimen name="dp_66">66dp</dimen>
<dimen name="dp_67">67dp</dimen>
<dimen name="dp_68">68dp</dimen>
<dimen name="dp_69">69dp</dimen>
<dimen name="dp_70">70dp</dimen>
<dimen name="dp_71">71dp</dimen>
<dimen name="dp_72">72dp</dimen>
<dimen name="dp_73">73dp</dimen>
<dimen name="dp_74">74dp</dimen>
<dimen name="dp_75">75dp</dimen>
<dimen name="dp_76">76dp</dimen>
<dimen name="dp_77">77dp</dimen>
<dimen name="dp_78">78dp</dimen>
<dimen name="dp_79">79dp</dimen>
<dimen name="dp_80">80dp</dimen>
<dimen name="dp_81">81dp</dimen>
<dimen name="dp_82">82dp</dimen>
<dimen name="dp_83">83dp</dimen>
<dimen name="dp_84">84dp</dimen>
<dimen name="dp_85">85dp</dimen>
<dimen name="dp_86">86dp</dimen>
<dimen name="dp_87">87dp</dimen>
<dimen name="dp_88">88dp</dimen>
<dimen name="dp_89">89dp</dimen>
<dimen name="dp_90">90dp</dimen>
<dimen name="dp_91">91dp</dimen>
<dimen name="dp_92">92dp</dimen>
<dimen name="dp_93">93dp</dimen>
<dimen name="dp_94">94dp</dimen>
<dimen name="dp_95">95dp</dimen>
<dimen name="dp_96">96dp</dimen>
<dimen name="dp_97">97dp</dimen>
<dimen name="dp_98">98dp</dimen>
<dimen name="dp_99">99dp</dimen>
<dimen name="dp_100">100dp</dimen>
<dimen name="dp_101">101dp</dimen>
<dimen name="dp_102">102dp</dimen>
<dimen name="dp_103">103dp</dimen>
<dimen name="dp_104">104dp</dimen>
<dimen name="dp_104_5">104.5dp</dimen>
<dimen name="dp_105">105dp</dimen>
<dimen name="dp_106">106dp</dimen>
<dimen name="dp_107">107dp</dimen>
<dimen name="dp_108">108dp</dimen>
<dimen name="dp_109">109dp</dimen>
<dimen name="dp_110">110dp</dimen>
<dimen name="dp_111">111dp</dimen>
<dimen name="dp_112">112dp</dimen>
<dimen name="dp_113">113dp</dimen>
<dimen name="dp_114">114dp</dimen>
<dimen name="dp_115">115dp</dimen>
<dimen name="dp_116">116dp</dimen>
<dimen name="dp_117">117dp</dimen>
<dimen name="dp_118">118dp</dimen>
<dimen name="dp_119">119dp</dimen>
<dimen name="dp_120">120dp</dimen>
<dimen name="dp_121">121dp</dimen>
<dimen name="dp_122">122dp</dimen>
<dimen name="dp_123">123dp</dimen>
<dimen name="dp_124">124dp</dimen>
<dimen name="dp_125">125dp</dimen>
<dimen name="dp_126">126dp</dimen>
<dimen name="dp_127">127dp</dimen>
<dimen name="dp_128">128dp</dimen>
<dimen name="dp_129">129dp</dimen>
<dimen name="dp_130">130dp</dimen>
<dimen name="dp_131">131dp</dimen>
<dimen name="dp_132">132dp</dimen>
<dimen name="dp_133">133dp</dimen>
<dimen name="dp_134">134dp</dimen>
<dimen name="dp_134_5">134.5dp</dimen>
<dimen name="dp_135">135dp</dimen>
<dimen name="dp_136">136dp</dimen>
<dimen name="dp_137">137dp</dimen>
<dimen name="dp_138">138dp</dimen>
<dimen name="dp_139">139dp</dimen>
<dimen name="dp_140">140dp</dimen>
<dimen name="dp_141">141dp</dimen>
<dimen name="dp_142">142dp</dimen>
<dimen name="dp_143">143dp</dimen>
<dimen name="dp_144">144dp</dimen>
<dimen name="dp_145">145dp</dimen>
<dimen name="dp_146">146dp</dimen>
<dimen name="dp_147">147dp</dimen>
<dimen name="dp_148">148dp</dimen>
<dimen name="dp_149">149dp</dimen>
<dimen name="dp_150">150dp</dimen>
<dimen name="dp_151">151dp</dimen>
<dimen name="dp_152">152dp</dimen>
<dimen name="dp_153">153dp</dimen>
<dimen name="dp_154">154dp</dimen>
<dimen name="dp_155">155dp</dimen>
<dimen name="dp_156">156dp</dimen>
<dimen name="dp_157">157dp</dimen>
<dimen name="dp_158">158dp</dimen>
<dimen name="dp_159">159dp</dimen>
<dimen name="dp_160">160dp</dimen>
<dimen name="dp_161">161dp</dimen>
<dimen name="dp_162">162dp</dimen>
<dimen name="dp_163">163dp</dimen>
<dimen name="dp_164">164dp</dimen>
<dimen name="dp_165">165dp</dimen>
<dimen name="dp_166">166dp</dimen>
<dimen name="dp_167">167dp</dimen>
<dimen name="dp_168">168dp</dimen>
<dimen name="dp_169">169dp</dimen>
<dimen name="dp_170">170dp</dimen>
<dimen name="dp_171">171dp</dimen>
<dimen name="dp_172">172dp</dimen>
<dimen name="dp_173">173dp</dimen>
<dimen name="dp_174">174dp</dimen>
<dimen name="dp_175">175dp</dimen>
<dimen name="dp_176">176dp</dimen>
<dimen name="dp_177">177dp</dimen>
<dimen name="dp_178">178dp</dimen>
<dimen name="dp_179">179dp</dimen>
<dimen name="dp_180">180dp</dimen>
<dimen name="dp_181">181dp</dimen>
<dimen name="dp_182">182dp</dimen>
<dimen name="dp_183">183dp</dimen>
<dimen name="dp_184">184dp</dimen>
<dimen name="dp_185">185dp</dimen>
<dimen name="dp_186">186dp</dimen>
<dimen name="dp_187">187dp</dimen>
<dimen name="dp_188">188dp</dimen>
<dimen name="dp_189">189dp</dimen>
<dimen name="dp_190">190dp</dimen>
<dimen name="dp_191">191dp</dimen>
<dimen name="dp_191_25">191.25dp</dimen>
<dimen name="dp_192">192dp</dimen>
<dimen name="dp_193">193dp</dimen>
<dimen name="dp_194">194dp</dimen>
<dimen name="dp_195">195dp</dimen>
<dimen name="dp_196">196dp</dimen>
<dimen name="dp_197">197dp</dimen>
<dimen name="dp_198">198dp</dimen>
<dimen name="dp_199">199dp</dimen>
<dimen name="dp_200">200dp</dimen>
<dimen name="dp_201">201dp</dimen>
<dimen name="dp_202">202dp</dimen>
<dimen name="dp_203">203dp</dimen>
<dimen name="dp_204">204dp</dimen>
<dimen name="dp_205">205dp</dimen>
<dimen name="dp_206">206dp</dimen>
<dimen name="dp_207">207dp</dimen>
<dimen name="dp_208">208dp</dimen>
<dimen name="dp_209">209dp</dimen>
<dimen name="dp_210">210dp</dimen>
<dimen name="dp_211">211dp</dimen>
<dimen name="dp_212">212dp</dimen>
<dimen name="dp_213">213dp</dimen>
<dimen name="dp_214">214dp</dimen>
<dimen name="dp_215">215dp</dimen>
<dimen name="dp_216">216dp</dimen>
<dimen name="dp_217">217dp</dimen>
<dimen name="dp_218">218dp</dimen>
<dimen name="dp_219">219dp</dimen>
<dimen name="dp_220">220dp</dimen>
<dimen name="dp_221">221dp</dimen>
<dimen name="dp_222">222dp</dimen>
<dimen name="dp_223">223dp</dimen>
<dimen name="dp_224">224dp</dimen>
<dimen name="dp_225">225dp</dimen>
<dimen name="dp_226">226dp</dimen>
<dimen name="dp_227">227dp</dimen>
<dimen name="dp_228">228dp</dimen>
<dimen name="dp_229">229dp</dimen>
<dimen name="dp_230">230dp</dimen>
<dimen name="dp_231">231dp</dimen>
<dimen name="dp_232">232dp</dimen>
<dimen name="dp_233">233dp</dimen>
<dimen name="dp_234">234dp</dimen>
<dimen name="dp_235">235dp</dimen>
<dimen name="dp_236">236dp</dimen>
<dimen name="dp_237">237dp</dimen>
<dimen name="dp_238">238dp</dimen>
<dimen name="dp_239">239dp</dimen>
<dimen name="dp_240">240dp</dimen>
<dimen name="dp_241">241dp</dimen>
<dimen name="dp_242">242dp</dimen>
<dimen name="dp_243">243dp</dimen>
<dimen name="dp_244">244dp</dimen>
<dimen name="dp_245">245dp</dimen>
<dimen name="dp_246">246dp</dimen>
<dimen name="dp_247">247dp</dimen>
<dimen name="dp_248">248dp</dimen>
<dimen name="dp_249">249dp</dimen>
<dimen name="dp_250">250dp</dimen>
<dimen name="dp_251">251dp</dimen>
<dimen name="dp_252">252dp</dimen>
<dimen name="dp_253">253dp</dimen>
<dimen name="dp_254">254dp</dimen>
<dimen name="dp_255">255dp</dimen>
<dimen name="dp_256">256dp</dimen>
<dimen name="dp_257">257dp</dimen>
<dimen name="dp_258">258dp</dimen>
<dimen name="dp_259">259dp</dimen>
<dimen name="dp_260">260dp</dimen>
<dimen name="dp_261">261dp</dimen>
<dimen name="dp_262">262dp</dimen>
<dimen name="dp_263">263dp</dimen>
<dimen name="dp_264">264dp</dimen>
<dimen name="dp_265">265dp</dimen>
<dimen name="dp_266">266dp</dimen>
<dimen name="dp_267">267dp</dimen>
<dimen name="dp_268">268dp</dimen>
<dimen name="dp_269">269dp</dimen>
<dimen name="dp_270">270dp</dimen>
<dimen name="dp_271">271dp</dimen>
<dimen name="dp_272">272dp</dimen>
<dimen name="dp_273">273dp</dimen>
<dimen name="dp_274">274dp</dimen>
<dimen name="dp_275">275dp</dimen>
<dimen name="dp_276">276dp</dimen>
<dimen name="dp_277">277dp</dimen>
<dimen name="dp_278">278dp</dimen>
<dimen name="dp_279">279dp</dimen>
<dimen name="dp_280">280dp</dimen>
<dimen name="dp_281">281dp</dimen>
<dimen name="dp_282">282dp</dimen>
<dimen name="dp_283">283dp</dimen>
<dimen name="dp_284">284dp</dimen>
<dimen name="dp_285">285dp</dimen>
<dimen name="dp_286">286dp</dimen>
<dimen name="dp_287">287dp</dimen>
<dimen name="dp_288">288dp</dimen>
<dimen name="dp_289">289dp</dimen>
<dimen name="dp_290">290dp</dimen>
<dimen name="dp_291">291dp</dimen>
<dimen name="dp_292">292dp</dimen>
<dimen name="dp_293">293dp</dimen>
<dimen name="dp_294">294dp</dimen>
<dimen name="dp_295">295dp</dimen>
<dimen name="dp_296">296dp</dimen>
<dimen name="dp_297">297dp</dimen>
<dimen name="dp_298">298dp</dimen>
<dimen name="dp_299">299dp</dimen>
<dimen name="dp_300">300dp</dimen>
<dimen name="dp_301">301dp</dimen>
<dimen name="dp_302">302dp</dimen>
<dimen name="dp_303">303dp</dimen>
<dimen name="dp_304">304dp</dimen>
<dimen name="dp_305">305dp</dimen>
<dimen name="dp_306">306dp</dimen>
<dimen name="dp_307">307dp</dimen>
<dimen name="dp_308">308dp</dimen>
<dimen name="dp_309">309dp</dimen>
<dimen name="dp_310">310dp</dimen>
<dimen name="dp_311">311dp</dimen>
<dimen name="dp_312">312dp</dimen>
<dimen name="dp_313">313dp</dimen>
<dimen name="dp_314">314dp</dimen>
<dimen name="dp_315">315dp</dimen>
<dimen name="dp_316">316dp</dimen>
<dimen name="dp_317">317dp</dimen>
<dimen name="dp_318">318dp</dimen>
<dimen name="dp_319">319dp</dimen>
<dimen name="dp_320">320dp</dimen>
<dimen name="dp_321">321dp</dimen>
<dimen name="dp_322">322dp</dimen>
<dimen name="dp_323">323dp</dimen>
<dimen name="dp_324">324dp</dimen>
<dimen name="dp_325">325dp</dimen>
<dimen name="dp_326">326dp</dimen>
<dimen name="dp_327">327dp</dimen>
<dimen name="dp_328">328dp</dimen>
<dimen name="dp_329">329dp</dimen>
<dimen name="dp_330">330dp</dimen>
<dimen name="dp_331">331dp</dimen>
<dimen name="dp_332">332dp</dimen>
<dimen name="dp_333">333dp</dimen>
<dimen name="dp_334">334dp</dimen>
<dimen name="dp_335">335dp</dimen>
<dimen name="dp_336">336dp</dimen>
<dimen name="dp_337">337dp</dimen>
<dimen name="dp_338">338dp</dimen>
<dimen name="dp_339">339dp</dimen>
<dimen name="dp_340">340dp</dimen>
<dimen name="dp_341">341dp</dimen>
<dimen name="dp_342">342dp</dimen>
<dimen name="dp_343">343dp</dimen>
<dimen name="dp_344">344dp</dimen>
<dimen name="dp_345">345dp</dimen>
<dimen name="dp_346">346dp</dimen>
<dimen name="dp_347">347dp</dimen>
<dimen name="dp_348">348dp</dimen>
<dimen name="dp_349">349dp</dimen>
<dimen name="dp_350">350dp</dimen>
<dimen name="dp_351">351dp</dimen>
<dimen name="dp_352">352dp</dimen>
<dimen name="dp_353">353dp</dimen>
<dimen name="dp_354">354dp</dimen>
<dimen name="dp_355">355dp</dimen>
<dimen name="dp_356">356dp</dimen>
<dimen name="dp_357">357dp</dimen>
<dimen name="dp_358">358dp</dimen>
<dimen name="dp_359">359dp</dimen>
<dimen name="dp_360">360dp</dimen>
<dimen name="dp_365">365dp</dimen>
<dimen name="dp_370">370dp</dimen>
<dimen name="dp_400">400dp</dimen>
<dimen name="dp_410">410dp</dimen>
<dimen name="dp_422">422dp</dimen>
<dimen name="dp_472">472dp</dimen>
<dimen name="dp_500">500dp</dimen>
<dimen name="dp_600">600dp</dimen>
<dimen name="dp_640">640dp</dimen>
<dimen name="dp_720">720dp</dimen>
<!-- font size,you can add if there is no one -->
<dimen name="sp_6">6sp</dimen>
<dimen name="sp_7">7sp</dimen>
<dimen name="sp_8">8sp</dimen>
<dimen name="sp_9">9sp</dimen>
<dimen name="sp_10">10sp</dimen>
<dimen name="sp_11">11sp</dimen>
<dimen name="sp_12">12sp</dimen>
<dimen name="sp_13">13sp</dimen>
<dimen name="sp_14">14sp</dimen>
<dimen name="sp_15">15sp</dimen>
<dimen name="sp_16">16sp</dimen>
<dimen name="sp_17">17sp</dimen>
<dimen name="sp_18">18sp</dimen>
<dimen name="sp_19">19sp</dimen>
<dimen name="sp_20">20sp</dimen>
<dimen name="sp_21">21sp</dimen>
<dimen name="sp_22">22sp</dimen>
<dimen name="sp_23">23sp</dimen>
<dimen name="sp_24">24sp</dimen>
<dimen name="sp_25">25sp</dimen>
<dimen name="sp_28">28sp</dimen>
<dimen name="sp_30">30sp</dimen>
<dimen name="sp_32">32sp</dimen>
<dimen name="sp_34">34sp</dimen>
<dimen name="sp_36">36sp</dimen>
<dimen name="sp_38">38sp</dimen>
<dimen name="sp_40">40sp</dimen>
<dimen name="sp_42">42sp</dimen>
<dimen name="sp_48">48sp</dimen>
</resources>
\ No newline at end of file
<resources>
<string name="app_name">BluToysApplication</string>
<string name="OCRAEXT">OCRAEXT</string>
<string name="LittleOrion">LittleOrion</string>
</resources>
\ No newline at end of file
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/white</item>
<item name="colorPrimaryDark">@color/white</item>
<item name="colorAccent">@color/black_alpha_45</item>
<item name="windowNoTitle">true</item>
<item name="android:windowFullscreen">true</item>
<item name="titleTextColor">@android:color/white</item>
<item name="colorControlNormal">@color/black_alpha_45</item>
</style>
</resources>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<resourse>
<paths>
<external-path
name="external"
path="" />
<files-path
name="files"
path="" />
<cache-path
name="cache"
path="" />
</paths>
</resourse>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<base-config cleartextTrafficPermitted="true" />
</network-security-config>
\ No newline at end of file
package com.example.blu.toys;
import org.junit.Test;
import static org.junit.Assert.*;
/**
* Example local unit test, which will execute on the development machine (host).
*
* @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
*/
public class ExampleUnitTest {
@Test
public void addition_isCorrect() {
assertEquals(4, 2 + 2);
}
}
\ No newline at end of file
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
google()
jcenter()
// maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' }
// maven { url 'https://jitpack.io' }
}
dependencies {
classpath 'com.android.tools.build:gradle:4.0.1'
classpath 'com.jakewharton:butterknife-gradle-plugin:9.0.0'
}
}
allprojects {
repositories {
google()
maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' }
// maven { url 'https://www.jitpack.io' }
jcenter()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
\ No newline at end of file
# Project-wide Gradle settings.
# IDE (e.g. Android Studio) users:
# Gradle settings configured through the IDE *will override*
# any settings specified in this file.
# For more details on how to configure your build environment visit
# http://www.gradle.org/docs/current/userguide/build_environment.html
# Specifies the JVM arguments used for the daemon process.
# The setting is particularly useful for tweaking memory settings.
org.gradle.jvmargs=-Xmx2048m
# When configured, Gradle will run in incubating parallel mode.
# This option should only be used with decoupled projects. More details, visit
# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
# org.gradle.parallel=true
# AndroidX package structure to make it clearer which packages are bundled with the
# Android operating system, and which are packaged with your app"s APK
# https://developer.android.com/topic/libraries/support-library/androidx-rn
android.useAndroidX=true
# Automatically convert third-party libraries to use AndroidX
android.enableJetifier=true
\ No newline at end of file
#Fri Jan 01 16:05:23 CST 2021
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-6.1.1-all.zip
#!/usr/bin/env sh
##############################################################################
##
## Gradle start up script for UN*X
##
##############################################################################
# Attempt to set APP_HOME
# Resolve links: $0 may be a link
PRG="$0"
# Need this for relative symlinks.
while [ -h "$PRG" ] ; do
ls=`ls -ld "$PRG"`
link=`expr "$ls" : '.*-> \(.*\)$'`
if expr "$link" : '/.*' > /dev/null; then
PRG="$link"
else
PRG=`dirname "$PRG"`"/$link"
fi
done
SAVED="`pwd`"
cd "`dirname \"$PRG\"`/" >/dev/null
APP_HOME="`pwd -P`"
cd "$SAVED" >/dev/null
APP_NAME="Gradle"
APP_BASE_NAME=`basename "$0"`
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
DEFAULT_JVM_OPTS=""
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD="maximum"
warn () {
echo "$*"
}
die () {
echo
echo "$*"
echo
exit 1
}
# OS specific support (must be 'true' or 'false').
cygwin=false
msys=false
darwin=false
nonstop=false
case "`uname`" in
CYGWIN* )
cygwin=true
;;
Darwin* )
darwin=true
;;
MINGW* )
msys=true
;;
NONSTOP* )
nonstop=true
;;
esac
CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
# Determine the Java command to use to start the JVM.
if [ -n "$JAVA_HOME" ] ; then
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
# IBM's JDK on AIX uses strange locations for the executables
JAVACMD="$JAVA_HOME/jre/sh/java"
else
JAVACMD="$JAVA_HOME/bin/java"
fi
if [ ! -x "$JAVACMD" ] ; then
die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
Please set the JAVA_HOME variable in your environment to match the
location of your Java installation."
fi
else
JAVACMD="java"
which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
Please set the JAVA_HOME variable in your environment to match the
location of your Java installation."
fi
# Increase the maximum file descriptors if we can.
if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then
MAX_FD_LIMIT=`ulimit -H -n`
if [ $? -eq 0 ] ; then
if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
MAX_FD="$MAX_FD_LIMIT"
fi
ulimit -n $MAX_FD
if [ $? -ne 0 ] ; then
warn "Could not set maximum file descriptor limit: $MAX_FD"
fi
else
warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
fi
fi
# For Darwin, add options to specify how the application appears in the dock
if $darwin; then
GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
fi
# For Cygwin, switch paths to Windows format before running java
if $cygwin ; then
APP_HOME=`cygpath --path --mixed "$APP_HOME"`
CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
JAVACMD=`cygpath --unix "$JAVACMD"`
# We build the pattern for arguments to be converted via cygpath
ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
SEP=""
for dir in $ROOTDIRSRAW ; do
ROOTDIRS="$ROOTDIRS$SEP$dir"
SEP="|"
done
OURCYGPATTERN="(^($ROOTDIRS))"
# Add a user-defined pattern to the cygpath arguments
if [ "$GRADLE_CYGPATTERN" != "" ] ; then
OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
fi
# Now convert the arguments - kludge to limit ourselves to /bin/sh
i=0
for arg in "$@" ; do
CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
else
eval `echo args$i`="\"$arg\""
fi
i=$((i+1))
done
case $i in
(0) set -- ;;
(1) set -- "$args0" ;;
(2) set -- "$args0" "$args1" ;;
(3) set -- "$args0" "$args1" "$args2" ;;
(4) set -- "$args0" "$args1" "$args2" "$args3" ;;
(5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
(6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
(7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
(8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
(9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
esac
fi
# Escape application args
save () {
for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
echo " "
}
APP_ARGS=$(save "$@")
# Collect all arguments for the java command, following the shell quoting and substitution rules
eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS"
# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong
if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then
cd "$(dirname "$0")"
fi
exec "$JAVACMD" "$@"
@if "%DEBUG%" == "" @echo off
@rem ##########################################################################
@rem
@rem Gradle startup script for Windows
@rem
@rem ##########################################################################
@rem Set local scope for the variables with windows NT shell
if "%OS%"=="Windows_NT" setlocal
set DIRNAME=%~dp0
if "%DIRNAME%" == "" set DIRNAME=.
set APP_BASE_NAME=%~n0
set APP_HOME=%DIRNAME%
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
set DEFAULT_JVM_OPTS=
@rem Find java.exe
if defined JAVA_HOME goto findJavaFromJavaHome
set JAVA_EXE=java.exe
%JAVA_EXE% -version >NUL 2>&1
if "%ERRORLEVEL%" == "0" goto init
echo.
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
echo.
echo Please set the JAVA_HOME variable in your environment to match the
echo location of your Java installation.
goto fail
:findJavaFromJavaHome
set JAVA_HOME=%JAVA_HOME:"=%
set JAVA_EXE=%JAVA_HOME%/bin/java.exe
if exist "%JAVA_EXE%" goto init
echo.
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
echo.
echo Please set the JAVA_HOME variable in your environment to match the
echo location of your Java installation.
goto fail
:init
@rem Get command-line arguments, handling Windows variants
if not "%OS%" == "Windows_NT" goto win9xME_args
:win9xME_args
@rem Slurp the command line arguments.
set CMD_LINE_ARGS=
set _SKIP=2
:win9xME_args_slurp
if "x%~1" == "x" goto execute
set CMD_LINE_ARGS=%*
:execute
@rem Setup the command line
set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
@rem Execute Gradle
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
:end
@rem End local scope for the variables with windows NT shell
if "%ERRORLEVEL%"=="0" goto mainEnd
:fail
rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
rem the _cmd.exe /c_ return code!
if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
exit /b 1
:mainEnd
if "%OS%"=="Windows_NT" endlocal
:omega
include ':FastBleLib'
include ':app'
rootProject.name = "BluToysApplication"
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment