Rename the class Json to avoid symbol conflicts with Jsoncpp 72/132972/2 accepted/tizen/unified/20170609.204945 submit/tizen/20170609.130020
authorMu-Woong Lee <muwoong.lee@samsung.com>
Thu, 8 Jun 2017 12:22:05 +0000 (21:22 +0900)
committerMu-Woong Lee <muwoong.lee@samsung.com>
Thu, 8 Jun 2017 12:33:30 +0000 (21:33 +0900)
Plus, my-place detector has been removed.

Change-Id: Ic1d11300cc1d185ff7a47bc06e1ce1a37ce3f0e3
Signed-off-by: Mu-Woong Lee <muwoong.lee@samsung.com>
159 files changed:
common/client/DBusClient.cpp
common/include/ContextProvider.h
common/include/CtxJson1.h [moved from common/include/Json.h with 69% similarity]
common/include/CustomRegister.h
common/include/DBusClient.h
common/include/DatabaseManager.h
common/include/IContextManager.h
common/include/ICustomRegister.h
common/include/IDBusClientListener.h
common/include/IDatabaseListener.h
common/server/ContextProvider.cpp
common/server/CustomRegistser.cpp
common/server/DatabaseManager.cpp
common/server/DatabaseThread.cpp
common/server/DatabaseThread.h
common/shared/CtxJson1.cpp [moved from common/shared/Json.cpp with 76% similarity]
include/ProviderList.h
src/activity/Activity.cpp
src/app-stats/ActiveWindowMonitor.cpp
src/app-stats/AppStatsLogger.cpp
src/app-stats/AppStatsLogger.h
src/app-stats/AppStatsProvider.cpp
src/app-stats/AppStatsProvider.h
src/app-stats/DbHandle.cpp
src/app-stats/DbHandle.h
src/app-stats/DbInit.cpp
src/app-stats/DbInit.h
src/app-stats/InstallMonitor.cpp
src/app-stats/InstallMonitor.h
src/app-stats/app_inactive_detector/AppInactiveDetector.cpp
src/app-stats/app_inactive_detector/AppInactiveDetector.h
src/app-stats/app_inactive_detector/InactiveDetector.cpp
src/app-stats/app_inactive_detector/InactiveDetector.h
src/app-stats/app_inactive_detector/InactiveDetectorClassificator.h
src/app-stats/app_inactive_detector/InactiveDetectorClassificatorKmeans.h
src/app-stats/app_inactive_detector/InactiveDetectorStorage.cpp
src/app-stats/app_inactive_detector/InactiveDetectorStorage.h
src/battery-stats/BatteryMonitor.cpp
src/battery-stats/BatteryMonitor.h
src/battery-stats/BatteryStatsLogger.cpp
src/battery-stats/BatteryStatsLogger.h
src/battery-stats/BatteryStatsProvider.cpp
src/battery-stats/BatteryStatsProvider.h
src/battery-stats/BatteryUsage.cpp
src/battery-stats/BatteryUsage.h
src/battery-stats/BatteryUsageAnalyzer.cpp
src/battery-stats/BatteryUsageAnalyzer.h
src/battery-stats/HeartDbReader.cpp
src/battery-stats/HeartDbReader.h
src/battery-stats/Querier.cpp
src/battery-stats/Querier.h
src/battery-stats/RecentBatteryUsage.cpp
src/battery-stats/RecentBatteryUsage.h
src/call/Call.cpp
src/call/Call.h
src/contacts/Contacts.cpp
src/custom/CustomManager.cpp
src/custom/CustomManager.h
src/custom/CustomProvider.cpp
src/custom/CustomProvider.h
src/email/Email.cpp
src/geofence/GeofenceMonitorHandle.cpp
src/geofence/PlaceGeofenceProvider.cpp
src/geofence/PlaceGeofenceProvider.h
src/headphone/Headphone.cpp
src/headphone/Headphone.h
src/media-stats/DbHandle.cpp
src/media-stats/DbHandle.h
src/media-stats/MediaContentMonitor.cpp
src/media-stats/MediaContentMonitor.h
src/media-stats/MediaStatsLogger.cpp
src/media-stats/MediaStatsLogger.h
src/media-stats/MediaStatsProvider.cpp
src/media-stats/MediaStatsProvider.h
src/message/Message.cpp
src/my-place/CMakeLists.txt [deleted file]
src/my-place/CreateProvider.cpp [deleted file]
src/my-place/PlaceRecognitionProvider.cpp [deleted file]
src/my-place/PlaceRecognitionProvider.h [deleted file]
src/my-place/facade/UserPlaces.cpp [deleted file]
src/my-place/facade/UserPlaces.h [deleted file]
src/my-place/place/CMakeLists.txt [deleted file]
src/my-place/place/Graph.cpp [deleted file]
src/my-place/place/Graph.h [deleted file]
src/my-place/place/PlaceCateger.cpp [deleted file]
src/my-place/place/PlaceCateger.h [deleted file]
src/my-place/place/PlacesDetector.cpp [deleted file]
src/my-place/place/PlacesDetector.h [deleted file]
src/my-place/utils/CMakeLists.txt [deleted file]
src/my-place/utils/DebugUtils.cpp [deleted file]
src/my-place/utils/DebugUtils.h [deleted file]
src/my-place/utils/Gmap.cpp [deleted file]
src/my-place/utils/Gmap.h [deleted file]
src/my-place/utils/Median.cpp [deleted file]
src/my-place/utils/Median.h [deleted file]
src/my-place/utils/Similarity.h [deleted file]
src/my-place/utils/UserPlacesParams.h [deleted file]
src/my-place/utils/UserPlacesTypes.cpp [deleted file]
src/my-place/utils/UserPlacesTypes.h [deleted file]
src/my-place/visit-categer/CMakeLists.txt [deleted file]
src/my-place/visit-categer/Mahal.cpp [deleted file]
src/my-place/visit-categer/Mahal.h [deleted file]
src/my-place/visit-categer/PiecewiseLin.cpp [deleted file]
src/my-place/visit-categer/PiecewiseLin.h [deleted file]
src/my-place/visit-categer/ProbFeaturesModel.h [deleted file]
src/my-place/visit-categer/VisitCateger.cpp [deleted file]
src/my-place/visit-categer/VisitCateger.h [deleted file]
src/my-place/visit-detector/LocationListenerIface.h [deleted file]
src/my-place/visit-detector/LocationLogger.cpp [deleted file]
src/my-place/visit-detector/LocationLogger.h [deleted file]
src/my-place/visit-detector/VisitDetector.cpp [deleted file]
src/my-place/visit-detector/VisitDetector.h [deleted file]
src/my-place/visit-detector/VisitListenerIface.h [deleted file]
src/my-place/visit-detector/WifiListenerIface.h [deleted file]
src/my-place/visit-detector/WifiLogger.cpp [deleted file]
src/my-place/visit-detector/WifiLogger.h [deleted file]
src/sensor/ClientInfo.cpp
src/sensor/ClientInfo.h
src/sensor/Querier.cpp
src/sensor/Querier.h
src/sensor/SensorProvider.cpp
src/sensor/SensorProvider.h
src/sensor/heartrate/HeartRate.cpp
src/sensor/heartrate/HeartRate.h
src/sensor/heartrate/HeartRateLogger.cpp
src/sensor/heartrate/HeartRateQuerier.cpp
src/sensor/heartrate/HeartRateQuerier.h
src/sensor/pedometer/Pedometer.cpp
src/sensor/pedometer/Pedometer.h
src/sensor/pedometer/PedometerQuerier.cpp
src/sensor/pedometer/PedometerQuerier.h
src/sensor/pressure/Pressure.cpp
src/sensor/pressure/Pressure.h
src/sensor/pressure/PressureQuerier.cpp
src/sensor/pressure/PressureQuerier.h
src/sensor/sleep/Sleep.cpp
src/sensor/sleep/Sleep.h
src/sensor/sleep/SleepQuerier.cpp
src/sensor/sleep/SleepQuerier.h
src/shared/BasicProvider.cpp
src/shared/BasicProvider.h
src/shared/DbHandleBase.cpp
src/shared/DbHandleBase.h
src/social-stats/DbHandle.cpp
src/social-stats/DbHandle.h
src/social-stats/LogAggregator.cpp
src/social-stats/LogAggregator.h
src/social-stats/SocialStatsProvider.cpp
src/social-stats/SocialStatsProvider.h
src/system/Battery.cpp
src/system/Charger.cpp
src/system/Gps.cpp
src/system/Psmode.cpp
src/system/Usb.cpp
src/time/Alarm.cpp
src/time/Alarm.h
src/time/Time.cpp
src/wifi/Wifi.cpp
src/wifi/Wifi.h

index 85c9d75..a8079a6 100644 (file)
@@ -220,7 +220,7 @@ SO_EXPORT int DBusClient::isSupported(std::string subject)
        return __request(REQ_SUPPORT, __generateReqId(), subject.c_str(), NULL, NULL, NULL);
 }
 
-SO_EXPORT int DBusClient::subscribe(std::string subject, Json option, int *reqId, Json *result)
+SO_EXPORT int DBusClient::subscribe(std::string subject, CtxJson1 option, int *reqId, CtxJson1 *result)
 {
        IF_FAIL_RETURN(__init(), ERR_OPERATION_FAILED);
        ASSERT_NOT_NULL(reqId);
@@ -250,7 +250,7 @@ SO_EXPORT int DBusClient::unsubscribe(std::string subject, int reqId)
        return __request(REQ_UNSUBSCRIBE, reqId, subject.c_str(), NULL, NULL, NULL);
 }
 
-SO_EXPORT int DBusClient::read(std::string subject, Json option, int *reqId, Json *result)
+SO_EXPORT int DBusClient::read(std::string subject, CtxJson1 option, int *reqId, CtxJson1 *result)
 {
        IF_FAIL_RETURN(__init(), ERR_OPERATION_FAILED);
        ASSERT_NOT_NULL(reqId);
@@ -271,7 +271,7 @@ SO_EXPORT int DBusClient::read(std::string subject, Json option, int *reqId, Jso
        return error;
 }
 
-SO_EXPORT int DBusClient::readSync(std::string subject, Json option, int *reqId, Json *outputData)
+SO_EXPORT int DBusClient::readSync(std::string subject, CtxJson1 option, int *reqId, CtxJson1 *outputData)
 {
        IF_FAIL_RETURN(__init(), ERR_OPERATION_FAILED);
        ASSERT_NOT_NULL(reqId);
@@ -292,7 +292,7 @@ SO_EXPORT int DBusClient::readSync(std::string subject, Json option, int *reqId,
        return error;
 }
 
-SO_EXPORT int DBusClient::write(std::string subject, Json inputData)
+SO_EXPORT int DBusClient::write(std::string subject, CtxJson1 inputData)
 {
        IF_FAIL_RETURN(__init(), ERR_OPERATION_FAILED);
 
@@ -307,7 +307,7 @@ SO_EXPORT int DBusClient::write(std::string subject, Json inputData)
        return error;
 }
 
-SO_EXPORT int DBusClient::write(std::string subject, Json inputData, Json *result)
+SO_EXPORT int DBusClient::write(std::string subject, CtxJson1 inputData, CtxJson1 *result)
 {
        IF_FAIL_RETURN(__init(), ERR_OPERATION_FAILED);
 
index 2d89262..c98ff79 100644 (file)
@@ -19,7 +19,7 @@
 
 #include <vector>
 #include <Types.h>
-#include <Json.h>
+#include <CtxJson1.h>
 
 #define OPS_SUBSCRIBE  1
 #define OPS_READ               2
@@ -36,17 +36,17 @@ namespace ctx {
                const char* getSubject();
 
                virtual bool isSupported();
-               virtual int subscribe(Json option, Json *requestResult);
-               virtual int unsubscribe(Json option);
-               virtual int read(Json option, Json *requestResult);
-               virtual int write(Json data, Json *requestResult);
+               virtual int subscribe(CtxJson1 option, CtxJson1 *requestResult);
+               virtual int unsubscribe(CtxJson1 option);
+               virtual int read(CtxJson1 option, CtxJson1 *requestResult);
+               virtual int write(CtxJson1 data, CtxJson1 *requestResult);
 
                virtual void getPrivilege(std::vector<const char*> &privilege);
 
                virtual bool unloadable();
 
-               bool publish(Json option, int error, Json dataUpdated);
-               bool replyToRead(Json option, int error, Json dataRead);
+               bool publish(CtxJson1 option, int error, CtxJson1 dataUpdated);
+               bool replyToRead(CtxJson1 option, int error, CtxJson1 dataRead);
 
        protected:
                ContextProvider(const char *subject);
similarity index 69%
rename from common/include/Json.h
rename to common/include/CtxJson1.h
index 31a9d11..76f3470 100644 (file)
@@ -31,47 +31,47 @@ do { \
 
 namespace ctx {
 
-       class Json {
+       class CtxJson1 {
        public:
-               Json();
-               Json(const char *s);
-               Json(const std::string &s);
-
-               /* This Json(const Json &j) only copies the reference to the underlying Json node.
-                * Therefore, changes applied to a Json object affect the other.
-                * If you need to create a 'real' copy of a Json, which can be manipulated separately,
-                * utilize the str() function, e.g., ctx::Json copy(original.str());
+               CtxJson1();
+               CtxJson1(const char *s);
+               CtxJson1(const std::string &s);
+
+               /* This CtxJson1(const CtxJson1 &j) only copies the reference to the underlying CtxJson1 node.
+                * Therefore, changes applied to a CtxJson1 object affect the other.
+                * If you need to create a 'real' copy of a CtxJson1, which can be manipulated separately,
+                * utilize the str() function, e.g., ctx::CtxJson1 copy(original.str());
                 */
-               Json(const Json &j);
+               CtxJson1(const CtxJson1 &j);
 
-               ~Json();
+               ~CtxJson1();
 
-               Json& operator=(const char *s);
-               Json& operator=(const std::string &s);
+               CtxJson1& operator=(const char *s);
+               CtxJson1& operator=(const std::string &s);
 
-               /* This operator=(const Json &j) only copies the reference to the underlying Json node.
-                * Therefore, changes applied to a Json object affect the other.
-                * If you need to create a 'real' copy of a Json, which can be manipulated separately,
-                * utilize the str() function, e.g., ctx::Json copy = original.str();
+               /* This operator=(const CtxJson1 &j) only copies the reference to the underlying CtxJson1 node.
+                * Therefore, changes applied to a CtxJson1 object affect the other.
+                * If you need to create a 'real' copy of a CtxJson1, which can be manipulated separately,
+                * utilize the str() function, e.g., ctx::CtxJson1 copy = original.str();
                 */
-               Json& operator=(const Json &j);
+               CtxJson1& operator=(const CtxJson1 &j);
 
-               bool operator==(const Json &rhs);
-               bool operator!=(const Json &rhs);
+               bool operator==(const CtxJson1 &rhs);
+               bool operator!=(const CtxJson1 &rhs);
 
                std::string str();
 
                bool getKeys(std::list<std::string> *list);
                bool valid();
 
-               bool set(const char *path, const char *key, Json &val);
+               bool set(const char *path, const char *key, CtxJson1 &val);
                bool set(const char *path, const char *key, int val);
                bool set(const char *path, const char *key, int64_t val);
                bool set(const char *path, const char *key, double val);
                bool set(const char *path, const char *key, std::string val);
                bool set(const char *path, const char *key, GVariant *val);
 
-               bool get(const char *path, const char *key, Json *val);
+               bool get(const char *path, const char *key, CtxJson1 *val);
                bool get(const char *path, const char *key, int *val);
                bool get(const char *path, const char *key, int64_t *val);
                bool get(const char *path, const char *key, double *val);
@@ -83,19 +83,19 @@ namespace ctx {
                /* Array operations */
                int getSize(const char *path, const char *key);
 
-               bool append(const char *path, const char *key, Json &val);
+               bool append(const char *path, const char *key, CtxJson1 &val);
                bool append(const char *path, const char *key, int val);
                bool append(const char *path, const char *key, int64_t val);
                bool append(const char *path, const char *key, double val);
                bool append(const char *path, const char *key, std::string val);
 
-               bool setAt(const char *path, const char *key, int index, Json &val);
+               bool setAt(const char *path, const char *key, int index, CtxJson1 &val);
                bool setAt(const char *path, const char *key, int index, int val);
                bool setAt(const char *path, const char *key, int index, int64_t val);
                bool setAt(const char *path, const char *key, int index, double val);
                bool setAt(const char *path, const char *key, int index, std::string val);
 
-               bool getAt(const char *path, const char *key, int index, Json *val);
+               bool getAt(const char *path, const char *key, int index, CtxJson1 *val);
                bool getAt(const char *path, const char *key, int index, int *val);
                bool getAt(const char *path, const char *key, int index, int64_t *val);
                bool getAt(const char *path, const char *key, int index, double *val);
index 5134613..081ec7e 100644 (file)
@@ -18,7 +18,7 @@
 #define _CONTEXT_CUSTOM_REGISTER_H_
 
 #include <Types.h>
-#include <Json.h>
+#include <CtxJson1.h>
 
 namespace ctx {
 
@@ -28,7 +28,7 @@ namespace ctx {
        public:
                virtual ~CustomRegister();
 
-               bool registerCustomProvider(const char* subject, int operation, Json attribute, Json option, const char* owner = NULL);
+               bool registerCustomProvider(const char* subject, int operation, CtxJson1 attribute, CtxJson1 option, const char* owner = NULL);
                bool unregisterCustomProvider(const char* subject);
 
        protected:
index c865e80..ee13e65 100644 (file)
@@ -35,12 +35,12 @@ namespace ctx {
 
                int isSupported(std::string subject);
 
-               int subscribe(std::string subject, Json option, int *reqId, Json *result);
+               int subscribe(std::string subject, CtxJson1 option, int *reqId, CtxJson1 *result);
                int unsubscribe(std::string subject, int reqId);
-               int read(std::string subject, Json option, int *reqId, Json *result);
-               int readSync(std::string subject, Json option, int *reqId, Json *outputData);
-               int write(std::string subject, Json inputData);
-               int write(std::string subject, Json inputData, Json *result);
+               int read(std::string subject, CtxJson1 option, int *reqId, CtxJson1 *result);
+               int readSync(std::string subject, CtxJson1 option, int *reqId, CtxJson1 *outputData);
+               int write(std::string subject, CtxJson1 inputData);
+               int write(std::string subject, CtxJson1 inputData, CtxJson1 *result);
 
                int call(const char *method);
 
index a0fe0ad..c7aa403 100644 (file)
@@ -45,7 +45,7 @@ namespace ctx {
                 * @param[in]   record          A json object containing key, value pairs.
                 * @param[in]   listener        A listener object to receive the result. Allows NULL.
                 */
-               bool insert(unsigned int queryId, const char *tableName, Json record, IDatabaseListener *listener = NULL);
+               bool insert(unsigned int queryId, const char *tableName, CtxJson1 record, IDatabaseListener *listener = NULL);
 
                /**
                 * @brief               Executes a SQL query. Async.
@@ -70,7 +70,7 @@ namespace ctx {
                 * @param[in]   record          A json object containing key, value pairs.
                 * @param[out]  rowId           The row id of the inserted record. If fails, a negative integer.
                 */
-               bool insertSync(const char *tableName, Json record, int64_t *rowId);
+               bool insertSync(const char *tableName, CtxJson1 record, int64_t *rowId);
 
                /**
                 * @brief               Executes a SQL query. Sync.
@@ -78,7 +78,7 @@ namespace ctx {
                 * @param[in]   query           A query to be executed.
                 * @param[out]  records         Query result.
                 */
-               bool executeSync(const char *query, std::vector<Json> *records);
+               bool executeSync(const char *query, std::vector<CtxJson1> *records);
 
        private:
                static bool __init();
index 4bb2561..87c38a0 100644 (file)
@@ -18,7 +18,7 @@
 #define _CONTEXT_I_CONTEXT_MANAGER_H_
 
 #include <Types.h>
-#include <Json.h>
+#include <CtxJson1.h>
 
 namespace ctx {
 
@@ -28,8 +28,8 @@ namespace ctx {
        public:
                virtual ~IContextManager();
 
-               virtual bool publish(const char *subject, Json &option, int error, Json &dataUpdated) = 0;
-               virtual bool replyToRead(const char *subject, Json &option, int error, Json &dataRead) = 0;
+               virtual bool publish(const char *subject, CtxJson1 &option, int error, CtxJson1 &dataUpdated) = 0;
+               virtual bool replyToRead(const char *subject, CtxJson1 &option, int error, CtxJson1 &dataRead) = 0;
        };      /* class IContextManager */
 
 }      /* namespace ctx */
index eca3596..6f53314 100644 (file)
@@ -18,7 +18,7 @@
 #define _CONTEXT_I_CUSTOM_REGISTER_H_
 
 #include <Types.h>
-#include <Json.h>
+#include <CtxJson1.h>
 
 namespace ctx {
 
@@ -28,7 +28,7 @@ namespace ctx {
        public:
                virtual ~ICustomRegister(){};
 
-               virtual bool registerCustomProvider(const char *subject, int operation, Json &attribute, Json &option, const char* owner = NULL) = 0;
+               virtual bool registerCustomProvider(const char *subject, int operation, CtxJson1 &attribute, CtxJson1 &option, const char* owner = NULL) = 0;
                virtual bool unregisterCustomProvider(const char *subject) = 0;
        };      /* class ICustomRegister */
 
index 1463425..c5cbcda 100644 (file)
 #endif
 
 #include <string>
-#include <Json.h>
+#include <CtxJson1.h>
 
 namespace ctx {
 
        class SO_EXPORT IDBusClientListener {
        public:
                virtual ~IDBusClientListener();
-               virtual void onPublish(std::string subject, int reqId, int error, Json event) = 0;
+               virtual void onPublish(std::string subject, int reqId, int error, CtxJson1 event) = 0;
        };
 
 }      /* namespace ctx */
index 96205cb..142dd6e 100644 (file)
@@ -18,7 +18,7 @@
 #define _CONTEXT_I_DATABASE_LISTENER_H_
 
 #include <vector>
-#include <Json.h>
+#include <CtxJson1.h>
 #include <Types.h>
 
 namespace ctx {
@@ -48,7 +48,7 @@ namespace ctx {
                 * @param[in]   error           Error code. If success, 0. Otherwise, a negative value.
                 * @param[in]   records         Data records retreived.
                 */
-               virtual void onExecuted(unsigned int queryId, int error, std::vector<Json>& records) = 0;
+               virtual void onExecuted(unsigned int queryId, int error, std::vector<CtxJson1>& records) = 0;
        };
 
 }      /* namespace ctx */
index ac2758c..bb92493 100644 (file)
@@ -40,22 +40,22 @@ bool ContextProvider::isSupported()
        return true;
 }
 
-int ContextProvider::subscribe(Json option, Json *requestResult)
+int ContextProvider::subscribe(CtxJson1 option, CtxJson1 *requestResult)
 {
        return ERR_NOT_SUPPORTED;
 }
 
-int ContextProvider::unsubscribe(Json option)
+int ContextProvider::unsubscribe(CtxJson1 option)
 {
        return ERR_NOT_SUPPORTED;
 }
 
-int ContextProvider::read(Json option, Json *requestResult)
+int ContextProvider::read(CtxJson1 option, CtxJson1 *requestResult)
 {
        return ERR_NOT_SUPPORTED;
 }
 
-int ContextProvider::write(Json data, Json *requestResult)
+int ContextProvider::write(CtxJson1 data, CtxJson1 *requestResult)
 {
        return ERR_NOT_SUPPORTED;
 }
@@ -69,12 +69,12 @@ bool ContextProvider::unloadable()
        return true;
 }
 
-bool ContextProvider::publish(Json option, int error, Json dataUpdated)
+bool ContextProvider::publish(CtxJson1 option, int error, CtxJson1 dataUpdated)
 {
        return __contextMgr->publish(__subject, option, error, dataUpdated);
 }
 
-bool ContextProvider::replyToRead(Json option, int error, Json dataRead)
+bool ContextProvider::replyToRead(CtxJson1 option, int error, CtxJson1 dataRead)
 {
        return __contextMgr->replyToRead(__subject, option, error, dataRead);
 }
index 313d685..cceb499 100644 (file)
@@ -29,7 +29,7 @@ CustomRegister::~CustomRegister()
 {
 }
 
-bool CustomRegister::registerCustomProvider(const char* subject, int operation, Json attribute, Json option, const char* owner)
+bool CustomRegister::registerCustomProvider(const char* subject, int operation, CtxJson1 attribute, CtxJson1 option, const char* owner)
 {
        return __customRegister->registerCustomProvider(subject, operation, attribute, option, owner);
 }
index 008c450..b94ebf3 100644 (file)
@@ -79,7 +79,7 @@ SO_EXPORT bool DatabaseManager::createTable(unsigned int queryId, const char *ta
        return __databaseThread->createTable(queryId, tableName, columns, option, listener);
 }
 
-SO_EXPORT bool DatabaseManager::insert(unsigned int queryId, const char *tableName, Json record, IDatabaseListener *listener)
+SO_EXPORT bool DatabaseManager::insert(unsigned int queryId, const char *tableName, CtxJson1 record, IDatabaseListener *listener)
 {
        return __databaseThread->insert(queryId, tableName, record, listener);
 }
@@ -94,12 +94,12 @@ SO_EXPORT bool DatabaseManager::createTableSync(const char *tableName, const cha
        return __databaseThread->createTableSync(tableName, columns, option);
 }
 
-SO_EXPORT bool DatabaseManager::insertSync(const char *tableName, Json record, int64_t *rowId)
+SO_EXPORT bool DatabaseManager::insertSync(const char *tableName, CtxJson1 record, int64_t *rowId)
 {
        return __databaseThread->insertSync(tableName, record, rowId);
 }
 
-SO_EXPORT bool DatabaseManager::executeSync(const char *query, std::vector<Json> *records)
+SO_EXPORT bool DatabaseManager::executeSync(const char *query, std::vector<CtxJson1> *records)
 {
        return __databaseThread->executeSync(query, records);
 }
index 66e622e..12a8725 100644 (file)
@@ -74,7 +74,7 @@ bool DatabaseThread::createTable(unsigned int queryId, const char *tableName, co
        return true;
 }
 
-bool DatabaseThread::insert(unsigned int queryId, const char *tableName, Json record, IDatabaseListener *listener)
+bool DatabaseThread::insert(unsigned int queryId, const char *tableName, CtxJson1 record, IDatabaseListener *listener)
 {
        std::string query = __composeInsert(tableName, record);
        IF_FAIL_RETURN(!query.empty(), false);
@@ -135,7 +135,7 @@ bool DatabaseThread::createTableSync(const char *tableName, const char *columns,
        return true;
 }
 
-bool DatabaseThread::insertSync(const char *tableName, Json record, int64_t *rowId)
+bool DatabaseThread::insertSync(const char *tableName, CtxJson1 record, int64_t *rowId)
 {
        IF_FAIL_RETURN(tableName && rowId, false);
 
@@ -143,7 +143,7 @@ bool DatabaseThread::insertSync(const char *tableName, Json record, int64_t *row
        IF_FAIL_RETURN(!query.empty(), false);
        _SD("SQL: %s", query.c_str());
 
-       std::vector<Json> queryResult;
+       std::vector<CtxJson1> queryResult;
        char *err = NULL;
        int ret;
        {
@@ -166,7 +166,7 @@ bool DatabaseThread::insertSync(const char *tableName, Json record, int64_t *row
        return true;
 }
 
-bool DatabaseThread::executeSync(const char *query, std::vector<Json> *records)
+bool DatabaseThread::executeSync(const char *query, std::vector<CtxJson1> *records)
 {
        IF_FAIL_RETURN(query, false);
 
@@ -217,7 +217,7 @@ std::string DatabaseThread::__composeCreate(const char *tableName, const char *c
        return query;
 }
 
-std::string DatabaseThread::__composeInsert(const char *tableName, Json record)
+std::string DatabaseThread::__composeInsert(const char *tableName, CtxJson1 record)
 {
        std::string cols;
        std::string vals;
@@ -259,7 +259,7 @@ void DatabaseThread::__execute(QueryType type, unsigned int queryId, const char
 {
        _SD("SQL(%d): %s", queryId, query);
 
-       std::vector<Json> *queryResult = new(std::nothrow) std::vector<Json>;
+       std::vector<CtxJson1> *queryResult = new(std::nothrow) std::vector<CtxJson1>;
        IF_FAIL_VOID_TAG(queryResult, _E, "Memory allocation failed");
 
        char *err = NULL;
@@ -281,7 +281,7 @@ void DatabaseThread::__execute(QueryType type, unsigned int queryId, const char
        return;
 }
 
-void DatabaseThread::__dispatchResult(QueryType type, unsigned int queryId, IDatabaseListener *listener, int error, std::vector<Json> *result)
+void DatabaseThread::__dispatchResult(QueryType type, unsigned int queryId, IDatabaseListener *listener, int error, std::vector<CtxJson1> *result)
 {
        QueryResult *qr = new(std::nothrow) QueryResult();
        IF_FAIL_VOID_TAG(qr, _E, "Memory allocation failed");
@@ -299,8 +299,8 @@ int DatabaseThread::__executionCb(void *userData, int dim, char **value, char **
 {
        IF_FAIL_RETURN(userData, 0);
 
-       std::vector<Json> *records = static_cast<std::vector<Json>*>(userData);
-       Json row;
+       std::vector<CtxJson1> *records = static_cast<std::vector<CtxJson1>*>(userData);
+       CtxJson1 row;
        bool columnNull = false;
 
        for (int i = 0; i < dim; ++i) {
index 4e3b608..3164f76 100644 (file)
@@ -32,11 +32,11 @@ namespace ctx {
                void close();
 
                bool createTable(unsigned int queryId, const char *tableName, const char *columns, const char *option = NULL, IDatabaseListener *listener = NULL);
-               bool insert(unsigned int queryId, const char *tableName, Json record, IDatabaseListener *listener = NULL);
+               bool insert(unsigned int queryId, const char *tableName, CtxJson1 record, IDatabaseListener *listener = NULL);
                bool execute(unsigned int queryId, const char *query, IDatabaseListener *listener = NULL);
                bool createTableSync(const char *tableName, const char *columns, const char *option = NULL);
-               bool insertSync(const char *tableName, Json record, int64_t *rowId);
-               bool executeSync(const char *query, std::vector<Json> *records);
+               bool insertSync(const char *tableName, CtxJson1 record, int64_t *rowId);
+               bool executeSync(const char *query, std::vector<CtxJson1> *records);
 
        private:
                enum QueryType {
@@ -56,17 +56,17 @@ namespace ctx {
                        unsigned int id;
                        int error;
                        IDatabaseListener *listener;
-                       std::vector<Json> *result;
+                       std::vector<CtxJson1> *result;
                };
 
                void onEvent(int type, void* data);
                void deleteEvent(int type, void* data);
 
                std::string __composeCreate(const char *tableName, const char *columns, const char *option);
-               std::string __composeInsert(const char *tableName, Json record);
+               std::string __composeInsert(const char *tableName, CtxJson1 record);
 
                void __execute(QueryType type, unsigned int queryId, const char *query, IDatabaseListener *listener);
-               void __dispatchResult(QueryType type, unsigned int queryId, IDatabaseListener *listener, int error, std::vector<Json> *result);
+               void __dispatchResult(QueryType type, unsigned int queryId, IDatabaseListener *listener, int error, std::vector<CtxJson1> *result);
 
                static int __executionCb(void *userData, int dim, char **value, char **column);
                static gboolean __dispatcher(gpointer data);
similarity index 76%
rename from common/shared/Json.cpp
rename to common/shared/CtxJson1.cpp
index 2f8a1b8..461448b 100644 (file)
@@ -22,7 +22,7 @@
 #include <iomanip>
 #include <json-glib/json-glib.h>
 #include <Types.h>
-#include <Json.h>
+#include <CtxJson1.h>
 
 #define PATH_DELIM     '.'
 #define MAX_PRECISION 15
@@ -86,30 +86,30 @@ static double __string_to_double(const char* in)
        return out;
 }
 
-SO_EXPORT Json::Json() :
+SO_EXPORT CtxJson1::CtxJson1() :
        __jsonNode(NULL)
 {
        JsonObject *obj = json_object_new();
-       IF_FAIL_VOID_TAG(obj, _E, "Json object construction failed");
+       IF_FAIL_VOID_TAG(obj, _E, "CtxJson1 object construction failed");
 
        __jsonNode = json_node_new(JSON_NODE_OBJECT);
        if (!__jsonNode) {
                json_object_unref(obj);
-               _E("Json object construction failed");
+               _E("CtxJson1 object construction failed");
        }
 
        json_node_set_object(__jsonNode, obj);
        json_object_unref(obj);
 }
 
-SO_EXPORT Json::Json(const Json &j)
+SO_EXPORT CtxJson1::CtxJson1(const CtxJson1 &j)
        : __jsonNode(NULL)
 {
        __jsonNode = json_node_copy(j.__jsonNode);
-       IF_FAIL_VOID_TAG(__jsonNode, _E, "Json object construction failed");
+       IF_FAIL_VOID_TAG(__jsonNode, _E, "CtxJson1 object construction failed");
 }
 
-SO_EXPORT Json::Json(const char *s)
+SO_EXPORT CtxJson1::CtxJson1(const char *s)
        : __jsonNode(NULL)
 {
        if (s) {
@@ -119,7 +119,7 @@ SO_EXPORT Json::Json(const char *s)
        }
 }
 
-SO_EXPORT Json::Json(const std::string &s)
+SO_EXPORT CtxJson1::CtxJson1(const std::string &s)
        : __jsonNode(NULL)
 {
        if (s.empty()) {
@@ -129,12 +129,12 @@ SO_EXPORT Json::Json(const std::string &s)
        }
 }
 
-SO_EXPORT Json::~Json()
+SO_EXPORT CtxJson1::~CtxJson1()
 {
        __release();
 }
 
-void Json::__parse(const char *s)
+void CtxJson1::__parse(const char *s)
 {
        gboolean result;
        JsonParser *parser = NULL;
@@ -157,7 +157,7 @@ CATCH:
                g_object_unref(parser);
 }
 
-void Json::__release()
+void CtxJson1::__release()
 {
        if (__jsonNode) {
                json_node_free(__jsonNode);
@@ -165,22 +165,22 @@ void Json::__release()
        }
 }
 
-SO_EXPORT bool Json::valid()
+SO_EXPORT bool CtxJson1::valid()
 {
        return (__jsonNode != NULL);
 }
 
-SO_EXPORT Json& Json::operator=(const Json &j)
+SO_EXPORT CtxJson1& CtxJson1::operator=(const CtxJson1 &j)
 {
        __release();
        __jsonNode = json_node_copy(j.__jsonNode);
        if (!__jsonNode) {
-               _E("Json object copy failed");
+               _E("CtxJson1 object copy failed");
        }
        return *this;
 }
 
-SO_EXPORT Json& Json::operator=(const char *s)
+SO_EXPORT CtxJson1& CtxJson1::operator=(const char *s)
 {
        __release();
        if (s) {
@@ -191,7 +191,7 @@ SO_EXPORT Json& Json::operator=(const char *s)
        return *this;
 }
 
-SO_EXPORT Json& Json::operator=(const std::string &s)
+SO_EXPORT CtxJson1& CtxJson1::operator=(const std::string &s)
 {
        __release();
        if (s.empty()) {
@@ -202,19 +202,19 @@ SO_EXPORT Json& Json::operator=(const std::string &s)
        return *this;
 }
 
-SO_EXPORT bool Json::operator==(const Json &rhs)
+SO_EXPORT bool CtxJson1::operator==(const CtxJson1 &rhs)
 {
        return __nodeEq(__jsonNode, rhs.__jsonNode);
 }
 
-SO_EXPORT bool Json::operator!=(const Json &rhs)
+SO_EXPORT bool CtxJson1::operator!=(const CtxJson1 &rhs)
 {
        return !operator==(rhs);
 }
 
-char* Json::__strDup()
+char* CtxJson1::__strDup()
 {
-       IF_FAIL_RETURN_TAG(__jsonNode, NULL, _E, "Json object not initialized");
+       IF_FAIL_RETURN_TAG(__jsonNode, NULL, _E, "CtxJson1 object not initialized");
 
        JsonGenerator *jgen = NULL;
        char *output = NULL;
@@ -238,7 +238,7 @@ CATCH:
        return NULL;
 }
 
-SO_EXPORT std::string Json::str()
+SO_EXPORT std::string CtxJson1::str()
 {
        std::string output;
        char *_s = __strDup();
@@ -301,9 +301,9 @@ static JsonObject* __traverse(JsonNode *jnode, const char *path, bool force)
        return jobj;
 }
 
-SO_EXPORT bool Json::set(const char *path, const char *key, Json &val)
+SO_EXPORT bool CtxJson1::set(const char *path, const char *key, CtxJson1 &val)
 {
-       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "Json object not initialized");
+       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "CtxJson1 object not initialized");
        IF_FAIL_RETURN_TAG(key && val.__jsonNode, false, _E, "Invalid parameter");
 
        JsonObject *jobj = __traverse(__jsonNode, path, true);
@@ -314,19 +314,19 @@ SO_EXPORT bool Json::set(const char *path, const char *key, Json &val)
 
        json_object_set_member(jobj, key, val.__jsonNode);
        val.__jsonNode = NULL;
-       val = Json();
+       val = CtxJson1();
 
        return true;
 }
 
-SO_EXPORT bool Json::set(const char *path, const char *key, int val)
+SO_EXPORT bool CtxJson1::set(const char *path, const char *key, int val)
 {
        return set(path, key, static_cast<int64_t>(val));
 }
 
-SO_EXPORT bool Json::set(const char *path, const char *key, int64_t val)
+SO_EXPORT bool CtxJson1::set(const char *path, const char *key, int64_t val)
 {
-       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "Json object not initialized");
+       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "CtxJson1 object not initialized");
        IF_FAIL_RETURN_TAG(key, false, _E, "Invalid parameter");
 
        JsonObject *jobj = __traverse(__jsonNode, path, true);
@@ -339,14 +339,14 @@ SO_EXPORT bool Json::set(const char *path, const char *key, int64_t val)
        return true;
 }
 
-SO_EXPORT bool Json::set(const char *path, const char *key, double val)
+SO_EXPORT bool CtxJson1::set(const char *path, const char *key, double val)
 {
        return set(path, key, __double_to_string(val));
 }
 
-SO_EXPORT bool Json::set(const char *path, const char *key, std::string val)
+SO_EXPORT bool CtxJson1::set(const char *path, const char *key, std::string val)
 {
-       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "Json object not initialized");
+       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "CtxJson1 object not initialized");
        IF_FAIL_RETURN_TAG(key, false, _E, "Invalid parameter");
 
        JsonObject *jobj = __traverse(__jsonNode, path, true);
@@ -360,10 +360,10 @@ SO_EXPORT bool Json::set(const char *path, const char *key, std::string val)
        return true;
 }
 
-SO_EXPORT bool Json::set(const char *path, const char *key, GVariant *val)
+SO_EXPORT bool CtxJson1::set(const char *path, const char *key, GVariant *val)
 {
 #if JSON_CHECK_VERSION(0, 14, 0)
-       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "Json object not initialized");
+       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "CtxJson1 object not initialized");
        IF_FAIL_RETURN_TAG(key && val, false, _E, "Invalid parameter");
 
        const gchar *typeStr = g_variant_get_type_string(val);
@@ -372,7 +372,7 @@ SO_EXPORT bool Json::set(const char *path, const char *key, GVariant *val)
        json_node_t *node = json_gvariant_serialize(val);
        IF_FAIL_RETURN_TAG(node, false, _E, "GVariant manipulation failed");
 
-       Json gvarJson;
+       CtxJson1 gvarJson;
        gvarJson.set(NULL, GVAR_TYPES, std::string(typeStr));
        json_object_set_member(json_node_get_object(gvarJson.__jsonNode), GVAR_VALUES, node);
 
@@ -383,9 +383,9 @@ SO_EXPORT bool Json::set(const char *path, const char *key, GVariant *val)
 #endif
 }
 
-SO_EXPORT bool Json::get(const char *path, const char *key, Json *val)
+SO_EXPORT bool CtxJson1::get(const char *path, const char *key, CtxJson1 *val)
 {
-       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "Json object not initialized");
+       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "CtxJson1 object not initialized");
        IF_FAIL_RETURN_TAG(key && val, false, _E, "Invalid parameter");
 
        JsonObject *jobj = NULL;
@@ -421,9 +421,9 @@ static JsonNode* __get_value_node(JsonNode *jnode, const char *path, const char
        return node;
 }
 
-SO_EXPORT bool Json::get(const char *path, const char *key, int *val)
+SO_EXPORT bool CtxJson1::get(const char *path, const char *key, int *val)
 {
-       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "Json object not initialized");
+       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "CtxJson1 object not initialized");
        IF_FAIL_RETURN_TAG(key && val, false, _E, "Invalid parameter");
 
        int64_t v;
@@ -436,9 +436,9 @@ SO_EXPORT bool Json::get(const char *path, const char *key, int *val)
        return false;
 }
 
-SO_EXPORT bool Json::get(const char *path, const char *key, int64_t *val)
+SO_EXPORT bool CtxJson1::get(const char *path, const char *key, int64_t *val)
 {
-       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "Json object not initialized");
+       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "CtxJson1 object not initialized");
        IF_FAIL_RETURN_TAG(key && val, false, _E, "Invalid parameter");
 
        JsonNode *node = __get_value_node(__jsonNode, path, key);
@@ -457,9 +457,9 @@ SO_EXPORT bool Json::get(const char *path, const char *key, int64_t *val)
        return true;
 }
 
-SO_EXPORT bool Json::get(const char *path, const char *key, double *val)
+SO_EXPORT bool CtxJson1::get(const char *path, const char *key, double *val)
 {
-       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "Json object not initialized");
+       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "CtxJson1 object not initialized");
        IF_FAIL_RETURN_TAG(key && val, false, _E, "Invalid parameter");
 
        JsonNode *node = __get_value_node(__jsonNode, path, key);
@@ -479,9 +479,9 @@ SO_EXPORT bool Json::get(const char *path, const char *key, double *val)
        return true;
 }
 
-SO_EXPORT bool Json::get(const char *path, const char *key, std::string *val)
+SO_EXPORT bool CtxJson1::get(const char *path, const char *key, std::string *val)
 {
-       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "Json object not initialized");
+       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "CtxJson1 object not initialized");
        IF_FAIL_RETURN_TAG(key && val, false, _E, "Invalid parameter");
 
        JsonNode *node = __get_value_node(__jsonNode, path, key);
@@ -497,14 +497,14 @@ SO_EXPORT bool Json::get(const char *path, const char *key, std::string *val)
        return true;
 }
 
-SO_EXPORT bool Json::get(const char *path, const char *key, GVariant **val)
+SO_EXPORT bool CtxJson1::get(const char *path, const char *key, GVariant **val)
 {
 #if JSON_CHECK_VERSION(0, 14, 0)
-       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "Json object not initialized");
+       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "CtxJson1 object not initialized");
        IF_FAIL_RETURN_TAG(key && val, false, _E, "Invalid parameter");
 
        bool ret;
-       Json gvarJson;
+       CtxJson1 gvarJson;
        ret = get(path, key, &gvarJson);
        IF_FAIL_RETURN(ret, false);
 
@@ -512,7 +512,7 @@ SO_EXPORT bool Json::get(const char *path, const char *key, GVariant **val)
        ret = gvarJson.get(NULL, GVAR_TYPES, &gvarTypes);
        IF_FAIL_RETURN(ret, false);
 
-       Json gvarValues;
+       CtxJson1 gvarValues;
        ret = gvarJson.get(NULL, GVAR_VALUES, &gvarValues);
        IF_FAIL_RETURN(ret, false);
 
@@ -529,9 +529,9 @@ SO_EXPORT bool Json::get(const char *path, const char *key, GVariant **val)
 #endif
 }
 
-SO_EXPORT bool Json::remove(const char *path, const char *key)
+SO_EXPORT bool CtxJson1::remove(const char *path, const char *key)
 {
-       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "Json object not initialized");
+       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "CtxJson1 object not initialized");
        IF_FAIL_RETURN_TAG(key, false, _E, "Invalid parameter");
 
        JsonObject *jobj = __traverse(__jsonNode, path, true);
@@ -568,9 +568,9 @@ static JsonArray* __get_array(JsonNode *jnode, const char *path, const char *key
        return json_node_get_array(node);
 }
 
-SO_EXPORT int Json::getSize(const char *path, const char *key)
+SO_EXPORT int CtxJson1::getSize(const char *path, const char *key)
 {
-       IF_FAIL_RETURN_TAG(this->__jsonNode, -1, _E, "Json object not initialized");
+       IF_FAIL_RETURN_TAG(this->__jsonNode, -1, _E, "CtxJson1 object not initialized");
        IF_FAIL_RETURN_TAG(key, -1, _E, "Invalid parameter");
 
        JsonArray *jarr = __get_array(__jsonNode, path, key, false);
@@ -579,9 +579,9 @@ SO_EXPORT int Json::getSize(const char *path, const char *key)
        return json_array_get_length(jarr);
 }
 
-SO_EXPORT bool Json::append(const char *path, const char *key, Json &val)
+SO_EXPORT bool CtxJson1::append(const char *path, const char *key, CtxJson1 &val)
 {
-       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "Json object not initialized");
+       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "CtxJson1 object not initialized");
        IF_FAIL_RETURN_TAG(key && val.__jsonNode, false, _E, "Invalid parameter");
 
        JsonArray *arr = __get_array(__jsonNode, path, key, true);
@@ -589,19 +589,19 @@ SO_EXPORT bool Json::append(const char *path, const char *key, Json &val)
 
        json_array_add_element(arr, val.__jsonNode);
        val.__jsonNode = NULL;
-       val = Json();
+       val = CtxJson1();
 
        return true;
 }
 
-SO_EXPORT bool Json::append(const char *path, const char *key, int val)
+SO_EXPORT bool CtxJson1::append(const char *path, const char *key, int val)
 {
        return append(path, key, static_cast<int64_t>(val));
 }
 
-SO_EXPORT bool Json::append(const char *path, const char *key, int64_t val)
+SO_EXPORT bool CtxJson1::append(const char *path, const char *key, int64_t val)
 {
-       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "Json object not initialized");
+       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "CtxJson1 object not initialized");
        IF_FAIL_RETURN_TAG(key, false, _E, "Invalid parameter");
 
        JsonArray *arr = __get_array(__jsonNode, path, key, true);
@@ -611,14 +611,14 @@ SO_EXPORT bool Json::append(const char *path, const char *key, int64_t val)
        return true;
 }
 
-SO_EXPORT bool Json::append(const char *path, const char *key, double val)
+SO_EXPORT bool CtxJson1::append(const char *path, const char *key, double val)
 {
        return append(path, key, __double_to_string(val));
 }
 
-SO_EXPORT bool Json::append(const char *path, const char *key, std::string val)
+SO_EXPORT bool CtxJson1::append(const char *path, const char *key, std::string val)
 {
-       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "Json object not initialized");
+       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "CtxJson1 object not initialized");
        IF_FAIL_RETURN_TAG(key, false, _E, "Invalid parameter");
 
        JsonArray *arr = __get_array(__jsonNode, path, key, true);
@@ -642,9 +642,9 @@ static JsonNode* __get_array_elem(JsonNode *jnode, const char *path, const char
        return node;
 }
 
-SO_EXPORT bool Json::setAt(const char *path, const char *key, int index, Json &val)
+SO_EXPORT bool CtxJson1::setAt(const char *path, const char *key, int index, CtxJson1 &val)
 {
-       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "Json object not initialized");
+       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "CtxJson1 object not initialized");
        IF_FAIL_RETURN_TAG(val.__jsonNode && key && index >= 0, false, _E, "Invalid parameter");
 
        JsonNode *node = __get_array_elem(__jsonNode, path, key, index);
@@ -656,19 +656,19 @@ SO_EXPORT bool Json::setAt(const char *path, const char *key, int index, Json &v
        json_node_set_object(node, obj);
        json_node_free(val.__jsonNode);
        val.__jsonNode = NULL;
-       val = Json();
+       val = CtxJson1();
 
        return true;
 }
 
-SO_EXPORT bool Json::setAt(const char *path, const char *key, int index, int val)
+SO_EXPORT bool CtxJson1::setAt(const char *path, const char *key, int index, int val)
 {
        return setAt(path, key, index, static_cast<int64_t>(val));
 }
 
-SO_EXPORT bool Json::setAt(const char *path, const char *key, int index, int64_t val)
+SO_EXPORT bool CtxJson1::setAt(const char *path, const char *key, int index, int64_t val)
 {
-       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "Json object not initialized");
+       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "CtxJson1 object not initialized");
        IF_FAIL_RETURN_TAG(key && index >= 0, false, _E, "Invalid parameter");
 
        JsonNode *node = __get_array_elem(__jsonNode, path, key, index);
@@ -679,14 +679,14 @@ SO_EXPORT bool Json::setAt(const char *path, const char *key, int index, int64_t
        return true;
 }
 
-SO_EXPORT bool Json::setAt(const char *path, const char *key, int index, double val)
+SO_EXPORT bool CtxJson1::setAt(const char *path, const char *key, int index, double val)
 {
        return setAt(path, key, index, __double_to_string(val));
 }
 
-SO_EXPORT bool Json::setAt(const char *path, const char *key, int index, std::string val)
+SO_EXPORT bool CtxJson1::setAt(const char *path, const char *key, int index, std::string val)
 {
-       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "Json object not initialized");
+       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "CtxJson1 object not initialized");
        IF_FAIL_RETURN_TAG(key && index >= 0, false, _E, "Invalid parameter");
 
        JsonNode *node = __get_array_elem(__jsonNode, path, key, index);
@@ -697,9 +697,9 @@ SO_EXPORT bool Json::setAt(const char *path, const char *key, int index, std::st
        return true;
 }
 
-SO_EXPORT bool Json::getAt(const char *path, const char *key, int index, Json *val)
+SO_EXPORT bool CtxJson1::getAt(const char *path, const char *key, int index, CtxJson1 *val)
 {
-       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "Json object not initialized");
+       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "CtxJson1 object not initialized");
        IF_FAIL_RETURN_TAG(key && val && index >= 0, false, _E, "Invalid parameter");
 
        JsonNode *node = __get_array_elem(__jsonNode, path, key, index);
@@ -716,9 +716,9 @@ SO_EXPORT bool Json::getAt(const char *path, const char *key, int index, Json *v
        return true;
 }
 
-SO_EXPORT bool Json::getAt(const char *path, const char *key, int index, int *val)
+SO_EXPORT bool CtxJson1::getAt(const char *path, const char *key, int index, int *val)
 {
-       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "Json object not initialized");
+       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "CtxJson1 object not initialized");
        IF_FAIL_RETURN_TAG(key && val && index >= 0, false, _E, "Invalid parameter");
 
        int64_t v;
@@ -730,9 +730,9 @@ SO_EXPORT bool Json::getAt(const char *path, const char *key, int index, int *va
        return false;
 }
 
-SO_EXPORT bool Json::getAt(const char *path, const char *key, int index, int64_t *val)
+SO_EXPORT bool CtxJson1::getAt(const char *path, const char *key, int index, int64_t *val)
 {
-       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "Json object not initialized");
+       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "CtxJson1 object not initialized");
        IF_FAIL_RETURN_TAG(key && val && index >= 0, false, _E, "Invalid parameter");
 
        JsonNode *node = __get_array_elem(__jsonNode, path, key, index);
@@ -754,9 +754,9 @@ SO_EXPORT bool Json::getAt(const char *path, const char *key, int index, int64_t
        return true;
 }
 
-SO_EXPORT bool Json::getAt(const char *path, const char *key, int index, double *val)
+SO_EXPORT bool CtxJson1::getAt(const char *path, const char *key, int index, double *val)
 {
-       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "Json object not initialized");
+       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "CtxJson1 object not initialized");
        IF_FAIL_RETURN_TAG(key && val && index >= 0, false, _E, "Invalid parameter");
 
        JsonNode *node = __get_array_elem(__jsonNode, path, key, index);
@@ -780,9 +780,9 @@ SO_EXPORT bool Json::getAt(const char *path, const char *key, int index, double
        return true;
 }
 
-SO_EXPORT bool Json::getAt(const char *path, const char *key, int index, std::string *val)
+SO_EXPORT bool CtxJson1::getAt(const char *path, const char *key, int index, std::string *val)
 {
-       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "Json object not initialized");
+       IF_FAIL_RETURN_TAG(this->__jsonNode, false, _E, "CtxJson1 object not initialized");
        IF_FAIL_RETURN_TAG(key && val && index >= 0, false, _E, "Invalid parameter");
 
        JsonNode *node = __get_array_elem(__jsonNode, path, key, index);
@@ -801,13 +801,13 @@ SO_EXPORT bool Json::getAt(const char *path, const char *key, int index, std::st
        return true;
 }
 
-bool Json::__getMembers(json_node_t *node, std::list<std::string> &list)
+bool CtxJson1::__getMembers(json_node_t *node, std::list<std::string> &list)
 {
        IF_FAIL_RETURN(node, false);
        list.clear();
 
        JsonObject *jobj = json_node_get_object(node);
-       IF_FAIL_RETURN_TAG(jobj, false, _E, "Getting Json object failed");
+       IF_FAIL_RETURN_TAG(jobj, false, _E, "Getting CtxJson1 object failed");
 
        GList *members = json_object_get_members(jobj);
        IF_FAIL_RETURN(members, true);
@@ -828,13 +828,13 @@ bool Json::__getMembers(json_node_t *node, std::list<std::string> &list)
        return true;
 }
 
-SO_EXPORT bool Json::getKeys(std::list<std::string>* list)
+SO_EXPORT bool CtxJson1::getKeys(std::list<std::string>* list)
 {
        IF_FAIL_RETURN_TAG(list, false, _E, "Invalid parameter");
        return __getMembers(__jsonNode, *list);
 }
 
-bool Json::__nodeEq(json_node_t *lhs, json_node_t *rhs)
+bool CtxJson1::__nodeEq(json_node_t *lhs, json_node_t *rhs)
 {
        IF_FAIL_RETURN(lhs && rhs, false);
 
@@ -860,7 +860,7 @@ bool Json::__nodeEq(json_node_t *lhs, json_node_t *rhs)
        return true;
 }
 
-bool Json::__valueEq(json_node_t *lhs, json_node_t *rhs)
+bool CtxJson1::__valueEq(json_node_t *lhs, json_node_t *rhs)
 {
        GType ltype = json_node_get_value_type(lhs);
        GType rtype = json_node_get_value_type(rhs);
@@ -879,7 +879,7 @@ bool Json::__valueEq(json_node_t *lhs, json_node_t *rhs)
        }
 }
 
-bool Json::__objectEq(json_node_t *lhs, json_node_t *rhs)
+bool CtxJson1::__objectEq(json_node_t *lhs, json_node_t *rhs)
 {
        std::list<std::string> lm, rm;
        IF_FAIL_RETURN(__getMembers(lhs, lm), false);
@@ -907,7 +907,7 @@ bool Json::__objectEq(json_node_t *lhs, json_node_t *rhs)
        return true;
 }
 
-bool Json::__arrayEq(json_node_t *lhs, json_node_t *rhs)
+bool CtxJson1::__arrayEq(json_node_t *lhs, json_node_t *rhs)
 {
        JsonArray *larr = json_node_get_array(lhs);
        JsonArray *rarr = json_node_get_array(rhs);
index 6f8dff4..2061320 100644 (file)
@@ -25,7 +25,7 @@
 #define LIB_PREFIX             "/context-service/libctx-prvd-"
 #define LIB_EXTENSION  ".so"
 
-/* Json Formats */
+/* CtxJson1 Formats */
 #define TRIG_DEF_RANK                  "\"Rank\":{\"type\":\"integer\",\"minimum\":1}"
 #define TRIG_DEF_TOTAL_COUNT   "\"TotalCount\":{\"type\":\"integer\",\"minimum\":0}"
 #define TRIG_DEF_TIME_OF_DAY   "\"TimeOfDay\":{\"type\":\"string\"}"
index f1a5da1..1b07fec 100644 (file)
@@ -49,7 +49,7 @@ void ActivityProvider::__handleUpdate(activity_type_e activity, const activity_d
 {
        IF_FAIL_VOID_TAG(activity == __activityType, _E, "Invalid activity: %d", activity);
 
-       Json dataRead;
+       CtxJson1 dataRead;
        dataRead.set(NULL, KEY_EVENT, VAL_DETECTED);
 
        activity_accuracy_e accuracy = ACTIVITY_ACCURACY_LOW;
index 2f06201..5c33248 100644 (file)
@@ -20,7 +20,7 @@
 #include <utility>
 #include <app_manager.h>
 
-#include <Json.h>
+#include <CtxJson1.h>
 #include <Types.h>
 #include "../shared/SystemInfo.h"
 #include "AppStatisticsTypes.h"
@@ -135,7 +135,7 @@ void ctx::AppUseMonitor::__createRecord(std::string appId)
        int systemVolume;
        int mediaVolume;
        std::string bssid;
-       Json data;
+       CtxJson1 data;
        data.set(NULL, KEY_APP_ID, appId);
 
        if (ctx::system_info::getAudioJackState(&audioJack))
index 8b7e045..a1da303 100644 (file)
@@ -51,12 +51,12 @@ void AppStatsLogger::getPrivilege(std::vector<const char*> &privilege)
        privilege.push_back(PRIV_APP_HISTORY);
 }
 
-int AppStatsLogger::subscribe(Json option, Json* requestResult)
+int AppStatsLogger::subscribe(CtxJson1 option, CtxJson1* requestResult)
 {
        return ERR_NONE;
 }
 
-int AppStatsLogger::unsubscribe(Json option)
+int AppStatsLogger::unsubscribe(CtxJson1 option)
 {
        return ERR_NONE;
 }
index 3c9fbc1..10cc6a1 100644 (file)
@@ -29,8 +29,8 @@ namespace ctx {
                AppStatsLogger();
                ~AppStatsLogger();
 
-               int subscribe(Json option, Json *requestResult);
-               int unsubscribe(Json option);
+               int subscribe(CtxJson1 option, CtxJson1 *requestResult);
+               int unsubscribe(CtxJson1 option);
 
                void getPrivilege(std::vector<const char*> &privilege);
 
index 2b8bb3f..e049034 100644 (file)
@@ -33,7 +33,7 @@ void AppStatsProvider::getPrivilege(std::vector<const char*> &privilege)
        privilege.push_back(PRIV_APP_HISTORY);
 }
 
-int AppStatsProvider::read(Json option, Json *requestResult)
+int AppStatsProvider::read(CtxJson1 option, CtxJson1 *requestResult)
 {
        AppDbHandle *handle = new(std::nothrow) AppDbHandle(this);
        IF_FAIL_RETURN_TAG(handle, ERR_OPERATION_FAILED, _E, "Memory allocation failed");
index 767a523..0711de4 100644 (file)
@@ -24,7 +24,7 @@ namespace ctx {
 
        class AppStatsProvider : public ContextProvider {
        public:
-               int read(Json option, Json *requestResult);
+               int read(CtxJson1 option, CtxJson1 *requestResult);
                void getPrivilege(std::vector<const char*> &privilege);
 
        protected:
index 414bac1..63f89e9 100644 (file)
@@ -30,7 +30,7 @@ AppDbHandle::~AppDbHandle()
 {
 }
 
-int AppDbHandle::read(Json filter)
+int AppDbHandle::read(CtxJson1 filter)
 {
        std::string query;
        const char *subject = reqProvider->getSubject();
@@ -63,7 +63,7 @@ int AppDbHandle::read(Json filter)
        return ERR_NONE;
 }
 
-std::string AppDbHandle::createWhereClauseWithDeviceStatus(Json filter)
+std::string AppDbHandle::createWhereClauseWithDeviceStatus(CtxJson1 filter)
 {
        std::stringstream whereClause;
        std::string bssid;
@@ -80,19 +80,19 @@ std::string AppDbHandle::createWhereClauseWithDeviceStatus(Json filter)
        return whereClause.str();
 }
 
-std::string AppDbHandle::createSqlPeakTime(Json filter)
+std::string AppDbHandle::createSqlPeakTime(CtxJson1 filter)
 {
        return StatsDbHandleBase::createSqlPeakTime(filter, APP_TABLE_USAGE_LOG, createWhereClause(filter));
 }
 
-std::string AppDbHandle::createSqlCommonSetting(Json filter)
+std::string AppDbHandle::createSqlCommonSetting(CtxJson1 filter)
 {
        return StatsDbHandleBase::createSqlCommonSetting(filter, APP_TABLE_USAGE_LOG, createWhereClause(filter));
 }
 
-std::string AppDbHandle::createSqlFrequency(Json filter)
+std::string AppDbHandle::createSqlFrequency(CtxJson1 filter)
 {
-       Json filterCleaned;
+       CtxJson1 filterCleaned;
        std::string weekStr;
        std::string timeOfDay;
        std::string appId;
@@ -136,7 +136,7 @@ std::string AppDbHandle::createSqlFrequency(Json filter)
        return query.str();
 }
 
-std::string AppDbHandle::createSqlRecentlyUsed(Json filter)
+std::string AppDbHandle::createSqlRecentlyUsed(CtxJson1 filter)
 {
        std::stringstream query;
        int limit = DEFAULT_LIMIT;
@@ -157,7 +157,7 @@ std::string AppDbHandle::createSqlRecentlyUsed(Json filter)
        return query.str();
 }
 
-std::string AppDbHandle::createSqlFrequentlyUsed(Json filter)
+std::string AppDbHandle::createSqlFrequentlyUsed(CtxJson1 filter)
 {
        std::stringstream query;
        int limit = DEFAULT_LIMIT;
@@ -178,7 +178,7 @@ std::string AppDbHandle::createSqlFrequentlyUsed(Json filter)
        return query.str();
 }
 
-std::string AppDbHandle::createSqlRarelyUsed(Json filter)
+std::string AppDbHandle::createSqlRarelyUsed(CtxJson1 filter)
 {
        std::stringstream query;
        int limit = DEFAULT_LIMIT;
@@ -201,11 +201,11 @@ std::string AppDbHandle::createSqlRarelyUsed(Json filter)
        return query.str();
 }
 
-void AppDbHandle::replyTriggerItem(int error, Json &jsonResult)
+void AppDbHandle::replyTriggerItem(int error, CtxJson1 &jsonResult)
 {
        IF_FAIL_VOID_TAG(STR_EQ(reqProvider->getSubject(), APP_SUBJ_FREQUENCY), _E, "Invalid subject");
 
-       Json results;
+       CtxJson1 results;
        std::string valStr;
        int val;
 
index 9084d87..4a06374 100644 (file)
@@ -18,7 +18,7 @@
 #define _CONTEXT_STATS_APP_DB_HANDLE_H_
 
 #include <string>
-#include <Json.h>
+#include <CtxJson1.h>
 #include "../shared/DbHandleBase.h"
 
 namespace ctx {
@@ -27,17 +27,17 @@ namespace ctx {
                AppDbHandle(ContextProvider *provider);
                ~AppDbHandle();
 
-               int read(Json filter);
+               int read(CtxJson1 filter);
 
        protected:
-               std::string createWhereClauseWithDeviceStatus(Json filter);
-               std::string createSqlRecentlyUsed(Json filter);
-               std::string createSqlFrequentlyUsed(Json filter);
-               std::string createSqlRarelyUsed(Json filter);
-               std::string createSqlPeakTime(Json filter);
-               std::string createSqlCommonSetting(Json filter);
-               std::string createSqlFrequency(Json filter);
-               void replyTriggerItem(int error, Json &jsonResult);
+               std::string createWhereClauseWithDeviceStatus(CtxJson1 filter);
+               std::string createSqlRecentlyUsed(CtxJson1 filter);
+               std::string createSqlFrequentlyUsed(CtxJson1 filter);
+               std::string createSqlRarelyUsed(CtxJson1 filter);
+               std::string createSqlPeakTime(CtxJson1 filter);
+               std::string createSqlCommonSetting(CtxJson1 filter);
+               std::string createSqlFrequency(CtxJson1 filter);
+               void replyTriggerItem(int error, CtxJson1 &jsonResult);
        };
 }
 
index 652950b..de7e5c7 100644 (file)
@@ -15,7 +15,7 @@
  */
 
 #include <sstream>
-#include <Json.h>
+#include <CtxJson1.h>
 #include <Types.h>
 #include "AppStatisticsTypes.h"
 #include "DbInit.h"
@@ -77,7 +77,7 @@ bool ctx::AppDbInitializer::__packageInfoCb(package_info_h packageInfo, void *us
 
 bool ctx::AppDbInitializer::__appInfoCb(package_info_app_component_type_e compType, const char *appId, void *userData)
 {
-       Json data;
+       CtxJson1 data;
        DatabaseManager dbManager;
 
        data.set(NULL, KEY_APP_ID, appId);
@@ -92,7 +92,7 @@ void ctx::AppDbInitializer::onInserted(unsigned int queryId, int error, int64_t
 {
 }
 
-void ctx::AppDbInitializer::onExecuted(unsigned int queryId, int error, std::vector<Json>& records)
+void ctx::AppDbInitializer::onExecuted(unsigned int queryId, int error, std::vector<CtxJson1>& records)
 {
        if (queryId != EMPTY_CHECKER_QID) {
                _E("Unknown Query ID: %d", queryId);
index c8d18c2..d3530b4 100644 (file)
@@ -30,7 +30,7 @@ namespace ctx {
 
                void onTableCreated(unsigned int queryId, int error);
                void onInserted(unsigned int queryId, int error, int64_t rowId);
-               void onExecuted(unsigned int queryId, int error, std::vector<Json>& records);
+               void onExecuted(unsigned int queryId, int error, std::vector<CtxJson1>& records);
 
                static bool __packageInfoCb(package_info_h packageInfo, void *userData);
                static bool __appInfoCb(package_info_app_component_type_e compType, const char *appId, void *userData);
index a89ce95..b8151fa 100644 (file)
@@ -16,7 +16,7 @@
 
 #include <sstream>
 #include <glib.h>
-#include <Json.h>
+#include <CtxJson1.h>
 #include <Types.h>
 #include <DatabaseManager.h>
 #include "AppStatisticsTypes.h"
@@ -83,7 +83,7 @@ bool ctx::AppInstallMonitor::__appInfoCb(package_info_app_component_type_e compT
        DatabaseManager dbManager;
 
        if (__lastEventType == PACKAGE_MANAGER_EVENT_TYPE_INSTALL) {
-               Json data;
+               CtxJson1 data;
                data.set(NULL, KEY_APP_ID, appId);
                dbManager.insert(0, APP_TABLE_REMOVABLE_APP, data, NULL);
        } else if (__lastEventType == PACKAGE_MANAGER_EVENT_TYPE_UNINSTALL) {
index a022946..eb4a19b 100644 (file)
@@ -35,7 +35,7 @@ namespace ctx {
 
                void onTableCreated(unsigned int queryId, int error) {}
                void onInserted(unsigned int queryId, int error, int64_t rowId) {}
-               void onExecuted(unsigned int queryId, int error, std::vector<Json>& records) {}
+               void onExecuted(unsigned int queryId, int error, std::vector<CtxJson1>& records) {}
 
        public:
                AppInstallMonitor();
index ad13698..bb92f40 100644 (file)
@@ -15,7 +15,7 @@
  */
 
 #include <Types.h>
-#include <Json.h>
+#include <CtxJson1.h>
 #include "AppInactiveDetector.h"
 #include "AppInactiveDetectorTypes.h"
 #include "InactiveDetector.h"
@@ -48,17 +48,17 @@ void ctx::AppInactiveDetectorProvider::destroy(void *data)
        _I(BLUE("Destroyed"));
 }
 
-int ctx::AppInactiveDetectorProvider::subscribe(ctx::Json option, ctx::Json* requestResult)
+int ctx::AppInactiveDetectorProvider::subscribe(ctx::CtxJson1 option, ctx::CtxJson1* requestResult)
 {
        return ERR_NOT_SUPPORTED;
 }
 
-int ctx::AppInactiveDetectorProvider::unsubscribe(ctx::Json option)
+int ctx::AppInactiveDetectorProvider::unsubscribe(ctx::CtxJson1 option)
 {
        return ERR_NOT_SUPPORTED;
 }
 
-int ctx::AppInactiveDetectorProvider::read(ctx::Json option, ctx::Json* requestResult)
+int ctx::AppInactiveDetectorProvider::read(ctx::CtxJson1 option, ctx::CtxJson1* requestResult)
 {
        _I(BLUE("Read"));
        _J("Option", option);
@@ -67,7 +67,7 @@ int ctx::AppInactiveDetectorProvider::read(ctx::Json option, ctx::Json* requestR
        return error == ERR_NONE ? ERR_NONE : error;
 }
 
-int ctx::AppInactiveDetectorProvider::write(ctx::Json data, ctx::Json* requestResult)
+int ctx::AppInactiveDetectorProvider::write(ctx::CtxJson1 data, ctx::CtxJson1* requestResult)
 {
        return ERR_NOT_SUPPORTED;
 }
index 693c082..87c61e2 100644 (file)
@@ -32,10 +32,10 @@ namespace ctx {
                        static ContextProvider *create(void *data);
                        static void destroy(void *data);
 
-                       int subscribe(ctx::Json option, ctx::Json *requestResult);
-                       int unsubscribe(ctx::Json option);
-                       int read(ctx::Json option, ctx::Json *requestResult);
-                       int write(ctx::Json data, ctx::Json *requestResult);
+                       int subscribe(ctx::CtxJson1 option, ctx::CtxJson1 *requestResult);
+                       int unsubscribe(ctx::CtxJson1 option);
+                       int read(ctx::CtxJson1 option, ctx::CtxJson1 *requestResult);
+                       int write(ctx::CtxJson1 data, ctx::CtxJson1 *requestResult);
 
                        bool isSupported();
 
index 5f32585..35deb40 100644 (file)
@@ -82,7 +82,7 @@ void ctx::InactiveDetector::onClusterUpdateFinished(std::vector<AppInfo> *appsWi
        delete appsWithWeight;
 }
 
-int ctx::InactiveDetector::read(const char *subject, ctx::Json option)
+int ctx::InactiveDetector::read(const char *subject, ctx::CtxJson1 option)
 {
        ctx::InactiveDetectorStorage *handle = new(std::nothrow) ctx::InactiveDetectorStorage();
        IF_FAIL_RETURN_TAG(handle, ERR_OPERATION_FAILED, _E, "Memory allocation failed");
@@ -96,12 +96,12 @@ int ctx::InactiveDetector::read(const char *subject, ctx::Json option)
        return ERR_NONE;
 }
 
-ctx::Json ctx::InactiveDetector::toJson(std::vector<AppInfo> *appInfos)
+ctx::CtxJson1 ctx::InactiveDetector::toJson(std::vector<AppInfo> *appInfos)
 {
-       ctx::Json data;
+       ctx::CtxJson1 data;
 
        for(auto appInfo = appInfos->begin(); appInfo != appInfos->end(); appInfo++) {
-               ctx::Json appJ;
+               ctx::CtxJson1 appJ;
                appJ.set(NULL, APP_INACTIVE_DETECTOR_APPINFO_COLUMN_PACKAGE_NAME, appInfo->packageName);
                appJ.set(NULL, APP_INACTIVE_DETECTOR_APPINFO_COLUMN_IS_NODISPLAY, appInfo->isNodisplay);
                appJ.set(NULL, APP_INACTIVE_DETECTOR_APPINFO_COLUMN_IS_ENABLED, appInfo->isEnabled);
index 9a15ec8..8ca1c90 100644 (file)
@@ -18,7 +18,7 @@
 #define _CONTEXT_INACTIVE_DETECTOR_H_
 
 #include <string>
-#include <Json.h>
+#include <CtxJson1.h>
 #include <vector>
 #include "AppInactiveDetectorTypes.h"
 #include <TimerManager.h>
@@ -34,11 +34,11 @@ namespace ctx {
                InactiveDetector();
                ~InactiveDetector();
 
-               int read(const char *subject, ctx::Json option);
+               int read(const char *subject, ctx::CtxJson1 option);
 
                int updateClusters();
                void onClusterUpdateFinished(std::vector<AppInfo> *appsClassified, int error);
-               ctx::Json toJson(std::vector<AppInfo> *apps);
+               ctx::CtxJson1 toJson(std::vector<AppInfo> *apps);
 
                bool onTimerExpired(int timerId);
        };      /* class InactiveDetector */
index 8349947..a01a313 100644 (file)
@@ -32,8 +32,8 @@
        return ret;
 }*/
 
-// expected Json format example: {timeframe: 1; isActive: 0}
-int ctx::InactiveDetectorStorage::read(const char *subject, ctx::Json filter)
+// expected CtxJson1 format example: {timeframe: 1; isActive: 0}
+int ctx::InactiveDetectorStorage::read(const char *subject, ctx::CtxJson1 filter)
 {
        std::string query;
        query = __getQueryGetApps(subject, filter);
@@ -49,7 +49,7 @@ int ctx::InactiveDetectorStorage::read(const char *subject, ctx::Json filter)
        return ERR_NONE;
 }
 
-std::string ctx::InactiveDetectorStorage::__getQueryGetApps(const char *subject, ctx::Json filter)
+std::string ctx::InactiveDetectorStorage::__getQueryGetApps(const char *subject, ctx::CtxJson1 filter)
 {
        double timeframe;
        int isActive;
@@ -117,7 +117,7 @@ std::string ctx::InactiveDetectorStorage::__getSubqueryFormValues(std::vector<Ap
        return selectElements.str();
 }
 
-void ctx::InactiveDetectorStorage::__jsonToObject(std::vector<Json>& records, std::vector<AppInfo> *appsWithWeights, bool resultMode)
+void ctx::InactiveDetectorStorage::__jsonToObject(std::vector<CtxJson1>& records, std::vector<AppInfo> *appsWithWeights, bool resultMode)
 {
        for (auto row = records.begin(); row != records.end(); row++) {
                AppInfo appWithWeight;
@@ -139,7 +139,7 @@ void ctx::InactiveDetectorStorage::__jsonToObject(std::vector<Json>& records, st
        }
 }
 
-void ctx::InactiveDetectorStorage::onExecuted(unsigned int queryId, int error, std::vector<Json>& records)
+void ctx::InactiveDetectorStorage::onExecuted(unsigned int queryId, int error, std::vector<CtxJson1>& records)
 {
        if (error != ERR_NONE) {
                _E("queryId:%d, error:%d", queryId, error);
index 2974ba0..f990c84 100644 (file)
@@ -19,7 +19,7 @@
 
 #include <vector>
 #include "AppInactiveDetectorTypes.h"
-#include <Json.h>
+#include <CtxJson1.h>
 #include <DatabaseManager.h>
 
 namespace ctx {
@@ -29,14 +29,14 @@ namespace ctx {
        private:
                //int type;  //TODO: enum
                void __injectParams(std::string& str, const std::string& from, const std::string& to);
-               void __jsonToObject(std::vector<Json>& records, std::vector<AppInfo> *appsWithWeights, bool resultMode);
-               std::string __getQueryGetApps(const char *subject, ctx::Json filter);
+               void __jsonToObject(std::vector<CtxJson1>& records, std::vector<AppInfo> *appsWithWeights, bool resultMode);
+               std::string __getQueryGetApps(const char *subject, ctx::CtxJson1 filter);
                std::string __getQueryUpdateApps(std::vector<AppInfo> *appsWithWeights);
                std::string __getSubqueryFormValues(std::vector<AppInfo> *appsWithWeights);
 
                void onTableCreated(unsigned int queryId, int error) {}
                void onInserted(unsigned int queryId, int error, int64_t rowId) {}
-               void onExecuted(unsigned int queryId, int error, std::vector<Json>& records);
+               void onExecuted(unsigned int queryId, int error, std::vector<CtxJson1>& records);
 
                DatabaseManager __dbManager;
 
@@ -44,7 +44,7 @@ namespace ctx {
                InactiveDetectorStorage();
                ~InactiveDetectorStorage();
 
-               int read(const char *subject, ctx::Json filter);
+               int read(const char *subject, ctx::CtxJson1 filter);
 
                int updateRanks();
                int getAppsInfoWithWeights(double timestampFrom);
index bee0c26..a4720ad 100644 (file)
@@ -21,7 +21,7 @@
 #include <glib.h>
 #include <device/battery.h>
 #include <Types.h>
-#include <Json.h>
+#include <CtxJson1.h>
 #include "BatteryMonitor.h"
 
 #define DEFAULT_ROW_ID_STR "1"
@@ -66,7 +66,7 @@ void BatteryMonitor::destroy()
 
 void BatteryMonitor::initialize()
 {
-       std::vector<Json> records;
+       std::vector<CtxJson1> records;
        __dbMgr.executeSync(
                "CREATE TABLE IF NOT EXISTS " BATTERY_USAGE_TABLE \
                " (" BATTERY_USAGE_TABLE_COLUMNS ")", &records);
@@ -82,7 +82,7 @@ void BatteryMonitor::initialize()
 
 bool BatteryMonitor::__loadLastInfo()
 {
-       std::vector<Json> records;
+       std::vector<CtxJson1> records;
        bool ret = __dbMgr.executeSync(
                        "SELECT * FROM " BATTERY_LAST_INFO_TABLE \
                        " WHERE " BATTERY_ROW_ID " = " DEFAULT_ROW_ID_STR, &records);
@@ -199,7 +199,7 @@ int BatteryMonitor::stop()
 
 bool BatteryMonitor::__getLastCpuUsageTable(CpuUsageMap* lastHeartCpuLog)
 {
-       std::vector<Json> cpuLog;
+       std::vector<CtxJson1> cpuLog;
        bool ret = __dbMgr.executeSync("SELECT * FROM " BATTERY_LAST_CPU_USAGE_TABLE, &cpuLog);
        IF_FAIL_RETURN_TAG(ret, false, _E, "Failed to load last cpu times of apps");
 
@@ -234,7 +234,7 @@ bool BatteryMonitor::__processBatteryUsage()
        bool ret = __heartReader->dbOpen();
        IF_FAIL_RETURN_TAG(ret, true, _E, "Failed to open heart db");
 
-       std::vector<Json> heartCpuLog;
+       std::vector<CtxJson1> heartCpuLog;
        ret = __heartReader->readCpuLog(__lastHeartAccessTime, &heartCpuLog);
        __heartReader->dbClose();
 
@@ -250,7 +250,7 @@ bool BatteryMonitor::__processBatteryUsage()
        ret = __getLastCpuUsageTable(&lastHeartCpuLog);
 
        // Calculate per app battery usage
-       std::vector<Json> usage;
+       std::vector<CtxJson1> usage;
        __analyzer.calculateBatteryUsage(heartCpuLog, lastHeartCpuLog, &usage);
 
        // Insert battery usage
@@ -267,7 +267,7 @@ bool BatteryMonitor::__processBatteryUsage()
        return true;
 }
 
-bool BatteryMonitor::__insertBatteryUsageLog(std::vector<Json>& usage)
+bool BatteryMonitor::__insertBatteryUsageLog(std::vector<CtxJson1>& usage)
 {
        IF_FAIL_RETURN_TAG(usage.size(), true, _W, "No data");
        std::string query("INSERT INTO " BATTERY_USAGE_TABLE \
index bb6092a..07b5549 100644 (file)
@@ -44,7 +44,7 @@ namespace ctx {
                bool __updateLastInfo();
 
                bool __processBatteryUsage();
-               bool __insertBatteryUsageLog(std::vector<Json>& usage);
+               bool __insertBatteryUsageLog(std::vector<CtxJson1>& usage);
                bool __updateLastCpuUsageLog(CpuUsageMap& usage);
                bool __getLastCpuUsageTable(CpuUsageMap* lastCpuUsage);
                void __removeExpiredLog();
index 3b7af49..8eac2cf 100644 (file)
@@ -36,12 +36,12 @@ void BatteryStatsLogger::getPrivilege(std::vector<const char*> &privilege)
        privilege.push_back(BATTERY_HISTORY_PRIV);
 }
 
-int BatteryStatsLogger::subscribe(Json option, Json* requestResult)
+int BatteryStatsLogger::subscribe(CtxJson1 option, CtxJson1* requestResult)
 {
        return BatteryMonitor::getInstance()->start();
 }
 
-int BatteryStatsLogger::unsubscribe(Json option)
+int BatteryStatsLogger::unsubscribe(CtxJson1 option)
 {
        return BatteryMonitor::getInstance()->stop();
 }
index ef02bb1..970fc2d 100644 (file)
@@ -28,8 +28,8 @@ namespace ctx {
                BatteryStatsLogger();
                ~BatteryStatsLogger();
 
-               int subscribe(Json option, Json *requestResult);
-               int unsubscribe(Json option);
+               int subscribe(CtxJson1 option, CtxJson1 *requestResult);
+               int unsubscribe(CtxJson1 option);
 
                void getPrivilege(std::vector<const char*> &privilege);
        };
index 53899ff..c866c3e 100644 (file)
@@ -32,7 +32,7 @@ void BatteryStatsProvider::getPrivilege(std::vector<const char*> &privilege)
        privilege.push_back(BATTERY_HISTORY_PRIV);
 }
 
-BatteryStatsQuerier* BatteryStatsProvider::getQuerier(Json option)
+BatteryStatsQuerier* BatteryStatsProvider::getQuerier(CtxJson1 option)
 {
        BatteryStatsQuerier *querier = new(std::nothrow) BatteryStatsQuerier(this, option);
        IF_FAIL_RETURN_TAG(querier, NULL, _E, "Memory allocation failed");
index 94d0341..2163b97 100644 (file)
@@ -25,14 +25,14 @@ namespace ctx {
 
        class BatteryStatsProvider : public ContextProvider {
        public:
-               virtual int read(Json option, Json *requestResult) = 0;
+               virtual int read(CtxJson1 option, CtxJson1 *requestResult) = 0;
                void getPrivilege(std::vector<const char*> &privilege);
 
        protected:
                BatteryStatsProvider(const char *subject);
                virtual ~BatteryStatsProvider();
 
-               BatteryStatsQuerier* getQuerier(Json option);
+               BatteryStatsQuerier* getQuerier(CtxJson1 option);
        };
 
 }      /* namespace ctx */
index 532234c..91ae8c8 100644 (file)
@@ -30,7 +30,7 @@ BatteryUsageProvider::~BatteryUsageProvider()
 {
 }
 
-int BatteryUsageProvider::read(Json option, Json *requestResult)
+int BatteryUsageProvider::read(CtxJson1 option, CtxJson1 *requestResult)
 {
        BatteryMonitor::getInstance()->prepareData();
 
index bc748ba..cfcee56 100644 (file)
@@ -26,7 +26,7 @@ namespace ctx {
                BatteryUsageProvider();
                ~BatteryUsageProvider();
 
-               int read(Json option, Json *requestResult);
+               int read(CtxJson1 option, CtxJson1 *requestResult);
        };
 }
 
index cdc0d39..a7af85b 100644 (file)
@@ -28,7 +28,7 @@ BatteryUsageAnalyzer::~BatteryUsageAnalyzer()
 {
 }
 
-void BatteryUsageAnalyzer::calculateBatteryUsage(std::vector<Json>& cpuLog, CpuUsageMap& recentCpuUsageMap, std::vector<Json>* usage)
+void BatteryUsageAnalyzer::calculateBatteryUsage(std::vector<CtxJson1>& cpuLog, CpuUsageMap& recentCpuUsageMap, std::vector<CtxJson1>* usage)
 {
        std::string appId;
        int timestamp;
@@ -77,7 +77,7 @@ void BatteryUsageAnalyzer::calculateBatteryUsage(std::vector<Json>& cpuLog, CpuU
                if (prevTimestamp > timestamp)
                        prevTimestamp = timestamp;
 
-               Json row;
+               CtxJson1 row;
                row.set(NULL, BATTERY_APP_ID, appId);
                row.set(NULL, BATTERY_START_TIME, prevTimestamp);
                row.set(NULL, BATTERY_END_TIME, timestamp);
index 1e4ec73..3618d0d 100644 (file)
@@ -18,7 +18,7 @@
 #define _CONTEXT_BATTERY_USAGE_ANALYZER_H_
 
 #include <vector>
-#include <Json.h>
+#include <CtxJson1.h>
 #include "BatteryStatisticsTypes.h"
 
 namespace ctx {
@@ -28,7 +28,7 @@ namespace ctx {
                BatteryUsageAnalyzer();
                ~BatteryUsageAnalyzer();
 
-               void calculateBatteryUsage(std::vector<Json>& cpuUsageLog, CpuUsageMap& lastCpuUsage, std::vector<Json>* usage);
+               void calculateBatteryUsage(std::vector<CtxJson1>& cpuUsageLog, CpuUsageMap& lastCpuUsage, std::vector<CtxJson1>* usage);
        };
 
 }      /* namespace ctx */
index ee79f85..2275164 100644 (file)
@@ -16,7 +16,7 @@
 
 #include <sstream>
 #include <tzplatform_config.h>
-#include <Json.h>
+#include <CtxJson1.h>
 #include "BatteryStatisticsTypes.h"
 #include "HeartDbReader.h"
 
@@ -79,7 +79,7 @@ void HeartDbReader::dbClose()
        __dbRefCount = 0;
 }
 
-bool HeartDbReader::readCpuLog(int lastHeartAccessTime, std::vector<Json>* cpuUsageLog)
+bool HeartDbReader::readCpuLog(int lastHeartAccessTime, std::vector<CtxJson1>* cpuUsageLog)
 {
        IF_FAIL_RETURN(__heartDb, false);
 
@@ -103,9 +103,9 @@ int HeartDbReader::__cpuUsageLogCb(void *userData, int dim, char **value, char *
 {
        IF_FAIL_RETURN(userData, 0);
 
-       std::vector<Json> *records = static_cast<std::vector<Json>*>(userData);
-       Json row;
-       Json newRow;
+       std::vector<CtxJson1> *records = static_cast<std::vector<CtxJson1>*>(userData);
+       CtxJson1 row;
+       CtxJson1 newRow;
        bool columnNull = false;
 
        for (int i = 0; i < dim; ++i) {
@@ -126,7 +126,7 @@ int HeartDbReader::__cpuUsageLogCb(void *userData, int dim, char **value, char *
        return 0;
 }
 
-void HeartDbReader::__convertCpuUsageLog(Json& row, Json* newRow)
+void HeartDbReader::__convertCpuUsageLog(CtxJson1& row, CtxJson1* newRow)
 {
        std::string appId;
        std::string timestamp;
index b219919..6e5b08d 100644 (file)
@@ -32,12 +32,12 @@ namespace ctx {
 
                bool dbOpen();
                void dbClose();
-               bool readCpuLog(int __lastHeartAccessTime, std::vector<Json>* cpuUsageLog);
+               bool readCpuLog(int __lastHeartAccessTime, std::vector<CtxJson1>* cpuUsageLog);
                bool requestSync();
 
        private:
                static int __cpuUsageLogCb(void *userData, int dim, char **value, char **column);
-               static void __convertCpuUsageLog(Json& row, Json* newRow);
+               static void __convertCpuUsageLog(CtxJson1& row, CtxJson1* newRow);
 
                bool __initializeDBusConnection();
                void __releaseDBusConnection();
index f5ce03f..3f15adb 100644 (file)
@@ -36,7 +36,7 @@
 
 using namespace ctx;
 
-BatteryStatsQuerier::BatteryStatsQuerier(ContextProvider *provider, Json option) :
+BatteryStatsQuerier::BatteryStatsQuerier(ContextProvider *provider, CtxJson1 option) :
        __provider(provider),
        __option(option)
 {
@@ -99,20 +99,20 @@ void BatteryStatsQuerier::onInserted(unsigned int queryId, int error, int64_t ro
 {
 }
 
-void BatteryStatsQuerier::onExecuted(unsigned int queryId, int error, std::vector<Json>& records)
+void BatteryStatsQuerier::onExecuted(unsigned int queryId, int error, std::vector<CtxJson1>& records)
 {
-       Json response;
+       CtxJson1 response;
        __convertToResponse(records, response);
        __provider->replyToRead(__option, error, response);
 
        delete this;
 }
 
-void BatteryStatsQuerier::__convertToResponse(std::vector<Json> &sqlResult, Json &response)
+void BatteryStatsQuerier::__convertToResponse(std::vector<CtxJson1> &sqlResult, CtxJson1 &response)
 {
        response = "{\"" KEY_QUERY_RESULT "\":[]}";
 
-       for (Json& tuple : sqlResult) {
+       for (CtxJson1& tuple : sqlResult) {
                response.append(NULL, KEY_QUERY_RESULT, tuple);
        }
 }
index 6d320ae..e14c6e5 100644 (file)
@@ -24,7 +24,7 @@ namespace ctx {
 
        class BatteryStatsQuerier : public IDatabaseListener {
        public:
-               BatteryStatsQuerier(ContextProvider *provider, Json option);
+               BatteryStatsQuerier(ContextProvider *provider, CtxJson1 option);
                ~BatteryStatsQuerier();
 
                // For now, Default result size(10) isn't applied, unlike other history type.
@@ -38,14 +38,14 @@ namespace ctx {
 
                void onTableCreated(unsigned int queryId, int error);
                void onInserted(unsigned int queryId, int error, int64_t rowId);
-               void onExecuted(unsigned int queryId, int error, std::vector<Json>& records);
+               void onExecuted(unsigned int queryId, int error, std::vector<CtxJson1>& records);
 
        private:
-               void __convertToResponse(std::vector<Json> &sqlResult, Json& response);
+               void __convertToResponse(std::vector<CtxJson1> &sqlResult, CtxJson1& response);
 
                DatabaseManager __dbMgr;
                ContextProvider *__provider;
-               Json __option;
+               CtxJson1 __option;
        };
 }
 
index eda9d8e..4f71aed 100644 (file)
@@ -28,7 +28,7 @@ RecentBatteryUsageProvider::~RecentBatteryUsageProvider()
 {
 }
 
-int RecentBatteryUsageProvider::read(Json option, Json *requestResult)
+int RecentBatteryUsageProvider::read(CtxJson1 option, CtxJson1 *requestResult)
 {
        BatteryMonitor::getInstance()->prepareData();
 
index 2cb7c54..771a627 100644 (file)
@@ -26,7 +26,7 @@ namespace ctx {
                RecentBatteryUsageProvider();
                ~RecentBatteryUsageProvider();
 
-               int read(Json option, Json *requestResult);
+               int read(CtxJson1 option, CtxJson1 *requestResult);
        };
 }
 
index 24c1f0c..721a1d7 100644 (file)
@@ -36,7 +36,7 @@ static telephony_noti_e __callNotiIds[] =
    TELEPHONY_NOTI_VIDEO_CALL_STATUS_ALERTING,
    TELEPHONY_NOTI_VIDEO_CALL_STATUS_INCOMING,
 };
-static Json __latest;
+static CtxJson1 __latest;
 
 CallStateProvider::CallStateProvider() :
        BasicProvider(SUBJ_STATE_CALL)
@@ -67,7 +67,7 @@ void CallStateProvider::__updateCb(telephony_h handle, telephony_noti_e notiId,
 
 void CallStateProvider::__handleUpdate(telephony_h handle, telephony_noti_e notiId, void* id)
 {
-       Json data;
+       CtxJson1 data;
        unsigned int count;
        telephony_call_h *callList;
 
@@ -302,7 +302,7 @@ int CallStateProvider::unsubscribe()
        return ERR_NONE;
 }
 
-bool CallStateProvider::__readCurrentStatus(telephony_h& handle, Json* data)
+bool CallStateProvider::__readCurrentStatus(telephony_h& handle, CtxJson1* data)
 {
        unsigned int count = 0;
        telephony_call_h *callList = NULL;
@@ -353,7 +353,7 @@ int CallStateProvider::read()
        }
 
        bool ret = true;
-       Json data;
+       CtxJson1 data;
        data.set(NULL, KEY_STATE, VAL_IDLE);
 
        for (unsigned int i = 0; i < __handleList.count; i++) {
index 7fc03dc..ef4a911 100644 (file)
@@ -42,7 +42,7 @@ namespace ctx {
                void __releaseTelephony();
                bool __setCallback();
                void __unsetCallback();
-               bool __readCurrentStatus(telephony_h& handle, Json* data);
+               bool __readCurrentStatus(telephony_h& handle, CtxJson1* data);
 
                bool __getCallState(telephony_call_h& handle, std::string& state);
                bool __getCallType(telephony_call_h& handle, std::string& type);
index fc7d006..6684e47 100644 (file)
@@ -64,7 +64,7 @@ void ContactsChangeProvider::__handleUpdate(const char* viewUri)
        std::string view = (STR_EQ(viewUri, _contacts_my_profile._uri)? VAL_MY_PROFILE : VAL_PERSON);
        IF_FAIL_VOID_TAG(!__isConsecutiveChange(viewUri), _D, "Ignore consecutive db change: %s", view.c_str());
 
-       Json data;
+       CtxJson1 data;
        data.set(NULL, KEY_EVENT, VAL_CHANGED);
        data.set(NULL, KEY_TYPE, view);
        publish(NULL, ERR_NONE, data);
index 5ec516f..1a650f1 100644 (file)
@@ -27,10 +27,10 @@ using namespace ctx;
 static std::map<std::string, CustomProvider*> __customMap;
 static DatabaseManager __dbManager;
 
-static bool __isValidFact(std::string subject, Json& fact);
-static bool __checkValueInt(Json& tmpl, std::string key, int value);
-static bool __checkValueString(Json& tmpl, std::string key, std::string value);
-static bool __checkValueEnum(Json& tmpl, std::string key, std::string value);
+static bool __isValidFact(std::string subject, CtxJson1& fact);
+static bool __checkValueInt(CtxJson1& tmpl, std::string key, int value);
+static bool __checkValueString(CtxJson1& tmpl, std::string key, std::string value);
+static bool __checkValueEnum(CtxJson1& tmpl, std::string key, std::string value);
 
 CustomManager::CustomManager() :
        BasicProvider(SUBJ_CUSTOM)
@@ -64,7 +64,7 @@ int CustomManager::unsubscribe()
        return ERR_NONE;
 }
 
-int CustomManager::write(Json data, Json *requestResult)
+int CustomManager::write(CtxJson1 data, CtxJson1 *requestResult)
 {
        int error = ERR_NONE;
        std::string req;
@@ -77,7 +77,7 @@ int CustomManager::write(Json data, Json *requestResult)
        std::string subj = std::string(SUBJ_CUSTOM) + TRIG_SUBJECT_SEPERATOR + packageId + TRIG_SUBJECT_SEPERATOR + name;
 
        if (req == TRIG_CUSTOM_REQ_ADD) {
-               Json tmpl;
+               CtxJson1 tmpl;
                data.get(NULL, TRIG_TMPL_KEY_ATTRIBUTE, &tmpl);
 
                error = __addCustomItem(subj, name, tmpl, packageId);
@@ -87,7 +87,7 @@ int CustomManager::write(Json data, Json *requestResult)
                        requestResult->set(NULL, TRIG_TMPL_KEY_SUBJECT, subj);
                }
        } else if (req == TRIG_CUSTOM_REQ_PUBLISH) {
-               Json fact;
+               CtxJson1 fact;
                data.get(NULL, TRIG_CUSTOM_KEY_FACT, &fact);
 
                error = __publishData(subj, fact);
@@ -108,7 +108,7 @@ ContextProvider* CustomManager::getProvider(const char* subject)
 bool CustomManager::__initialize()
 {
        /* Create custom template table */
-       std::vector<Json> record;
+       std::vector<CtxJson1> record;
        bool ret = __dbManager.executeSync(CREATE_CUSTOM_TMPL_TABLE_QUERY, &record);
        IF_FAIL_RETURN_TAG(ret, false, _E, "Create template table failed");
 
@@ -118,9 +118,9 @@ bool CustomManager::__initialize()
        IF_FAIL_RETURN(record.size() > 0, true);
 
        int error;
-       std::vector<Json>::iterator vedEnd = record.end();
+       std::vector<CtxJson1>::iterator vedEnd = record.end();
        for (auto vecPos = record.begin(); vecPos != vedEnd; ++vecPos) {
-               Json elem = *vecPos;
+               CtxJson1 elem = *vecPos;
                std::string subject;
                std::string name;
                std::string attributes;
@@ -130,7 +130,7 @@ bool CustomManager::__initialize()
                elem.get(NULL, CUSTOM_COLUMN_ATTRIBUTE, &attributes);
                elem.get(NULL, CUSTOM_COLUMN_OWNER, &owner);
 
-               error = __addCustomItem(subject.c_str(), name, Json(attributes), owner, true);
+               error = __addCustomItem(subject.c_str(), name, CtxJson1(attributes), owner, true);
                if (error != ERR_NONE) {
                        _E("Failed to add custom item(%s): %#x", subject.c_str(), error);
                }
@@ -139,7 +139,7 @@ bool CustomManager::__initialize()
        return true;
 }
 
-int CustomManager::__addCustomItem(std::string subject, std::string name, Json tmpl, std::string owner, bool isInit)
+int CustomManager::__addCustomItem(std::string subject, std::string name, CtxJson1 tmpl, std::string owner, bool isInit)
 {
        std::map<std::string, CustomProvider*>::iterator it;
        it = __customMap.find(subject);
@@ -164,7 +164,7 @@ int CustomManager::__addCustomItem(std::string subject, std::string name, Json t
        if (!isInit) {
                std::string q = std::string(INSERT_CUSTOM_TMPL_QUERY) + "('" + subject + "', '" +
                                                name +  "', '" + tmpl.str() + "', '" + owner + "'); ";
-               std::vector<Json> record;
+               std::vector<CtxJson1> record;
                bool ret = __dbManager.executeSync(q.c_str(), &record);
                IF_FAIL_RETURN_TAG(ret, ERR_OPERATION_FAILED, _E, "Failed to query custom templates");
        }
@@ -184,14 +184,14 @@ int CustomManager::__removeCustomItem(std::string subject)
 
        /* Delete item from custom template db */
        std::string q = std::string(DELETE_CUSTOM_TMPL_QUERY) + "'" + subject + "'";
-       std::vector<Json> record;
+       std::vector<CtxJson1> record;
        bool ret = __dbManager.executeSync(q.c_str(), &record);
        IF_FAIL_RETURN_TAG(ret, ERR_OPERATION_FAILED, _E, "Failed to query custom templates");
 
        return ERR_NONE;
 }
 
-int CustomManager::__publishData(std::string subject, Json fact)
+int CustomManager::__publishData(std::string subject, CtxJson1 fact)
 {
        std::map<std::string, CustomProvider*>::iterator it;
        it = __customMap.find(subject);
@@ -204,9 +204,9 @@ int CustomManager::__publishData(std::string subject, Json fact)
        return ERR_NONE;
 }
 
-bool __isValidFact(std::string subject, Json& fact)
+bool __isValidFact(std::string subject, CtxJson1& fact)
 {
-       Json tmpl = __customMap[subject]->getTemplate();
+       CtxJson1 tmpl = __customMap[subject]->getTemplate();
        IF_FAIL_RETURN_TAG(tmpl != EMPTY_JSON_OBJECT, false, _E, "Failed to get template");
 
        bool ret;
@@ -254,7 +254,7 @@ bool __isValidFact(std::string subject, Json& fact)
        return true;
 }
 
-bool __checkValueInt(Json& tmpl, std::string key, int value)
+bool __checkValueInt(CtxJson1& tmpl, std::string key, int value)
 {
        int min, max;
 
@@ -269,13 +269,13 @@ bool __checkValueInt(Json& tmpl, std::string key, int value)
        return true;
 }
 
-bool __checkValueString(Json& tmpl, std::string key, std::string value)
+bool __checkValueString(CtxJson1& tmpl, std::string key, std::string value)
 {
        /* any value is accepted */
        return true;
 }
 
-bool __checkValueEnum(Json& tmpl, std::string key, std::string value)
+bool __checkValueEnum(CtxJson1& tmpl, std::string key, std::string value)
 {
        /* check acceptable value */
        std::string tmplValue;
index 8561cce..babb0eb 100644 (file)
@@ -30,7 +30,7 @@ namespace ctx {
 
                int subscribe();
                int unsubscribe();
-               int write(Json data, Json *requestResult);
+               int write(CtxJson1 data, CtxJson1 *requestResult);
 
                bool isSupported();
 
@@ -40,9 +40,9 @@ namespace ctx {
 
        private:
                bool __initialize();
-               int __addCustomItem(std::string subject, std::string name, ctx::Json tmpl, std::string owner, bool isInit = false);
+               int __addCustomItem(std::string subject, std::string name, ctx::CtxJson1 tmpl, std::string owner, bool isInit = false);
                int __removeCustomItem(std::string subject);
-               int __publishData(std::string, ctx::Json fact);
+               int __publishData(std::string, ctx::CtxJson1 fact);
        };
 }
 
index 53f23c6..2874c4f 100644 (file)
@@ -18,7 +18,7 @@
 
 using namespace ctx;
 
-CustomProvider::CustomProvider(const char* subject, std::string name, Json tmpl, std::string owner) :
+CustomProvider::CustomProvider(const char* subject, std::string name, CtxJson1 tmpl, std::string owner) :
        BasicProvider(subject),
        __name(name),
        __tmpl(tmpl),
@@ -53,13 +53,13 @@ int CustomProvider::unsubscribe()
 
 int CustomProvider::read()
 {
-       Json data = __latest.str();
+       CtxJson1 data = __latest.str();
 
        replyToRead(NULL, ERR_NONE, data);
        return ERR_NONE;
 }
 
-void CustomProvider::handleUpdate(Json data)
+void CustomProvider::handleUpdate(CtxJson1 data)
 {
        /* Store latest state for read request */
        __latest = data.str();
@@ -72,7 +72,7 @@ std::string CustomProvider::getOwner()
        return __owner;
 }
 
-Json CustomProvider::getTemplate()
+CtxJson1 CustomProvider::getTemplate()
 {
        return __tmpl;
 }
index 3def760..031d9ad 100644 (file)
@@ -24,7 +24,7 @@ namespace ctx {
 
        class CustomProvider : public BasicProvider {
        public:
-               CustomProvider(const char* subject, std::string name, ctx::Json tmpl, std::string owner);
+               CustomProvider(const char* subject, std::string name, ctx::CtxJson1 tmpl, std::string owner);
                ~CustomProvider();
 
                int subscribe();
@@ -35,16 +35,16 @@ namespace ctx {
 
                bool unloadable();
 
-               void handleUpdate(ctx::Json data);
+               void handleUpdate(ctx::CtxJson1 data);
 
                std::string getOwner();
-               ctx::Json getTemplate();
+               ctx::CtxJson1 getTemplate();
 
        private:
                std::string __name;
-               ctx::Json __tmpl;
+               ctx::CtxJson1 __tmpl;
                std::string __owner;
-               ctx::Json __latest;
+               ctx::CtxJson1 __latest;
        };
 }
 
index 69f4250..f1351f4 100644 (file)
@@ -49,13 +49,13 @@ void EmailEventProvider::onSignal(const char* sender, const char* path, const ch
        if (subType == NOTI_DOWNLOAD_FINISH) {
                //TODO: Check if this signal actually means that there are new mails
                _D("sub type: %d, gi1: %d, gc: %s, gi2: %d, gi3: %d", subType, gi1, gc, gi2, gi3);
-               Json dataUpdated;
+               CtxJson1 dataUpdated;
                dataUpdated.set(NULL, KEY_EVENT, VAL_RECEIVED);
                publish(NULL, ERR_NONE, dataUpdated);
 
        } else if (subType == NOTI_SEND_FINISH) {
                _D("sub type: %d, gi1: %d, gc: %s, gi2: %d, gi3: %d", subType, gi1, gc, gi2, gi3);
-               Json dataUpdated;
+               CtxJson1 dataUpdated;
                dataUpdated.set(NULL, KEY_EVENT, VAL_SENT);
                publish(NULL, ERR_NONE, dataUpdated);
        }
index cf896b2..93c5b92 100644 (file)
@@ -15,7 +15,7 @@
  */
 
 #include <Types.h>
-#include <Json.h>
+#include <CtxJson1.h>
 #include "PlaceGeofenceProvider.h"
 #include "GeofenceMonitorHandle.h"
 
@@ -168,10 +168,10 @@ void GeofenceMonitorHandle::__emitStateChange()
 
        __prevState = currentState;
 
-       Json option;
+       CtxJson1 option;
        option.set(NULL, KEY_PLACE_ID, __placeId);
 
-       Json data;
+       CtxJson1 data;
        data.set(NULL, KEY_PLACE_ID, __placeId);
        data.set(NULL, KEY_EVENT, __getStateString(currentState));
 
index 10f7923..23388f6 100644 (file)
@@ -52,7 +52,7 @@ bool PlaceGeofenceProvider::unloadable()
        return false;
 }
 
-int PlaceGeofenceProvider::subscribe(Json option, Json *requestResult)
+int PlaceGeofenceProvider::subscribe(CtxJson1 option, CtxJson1 *requestResult)
 {
        int placeId = -1;
        option.get(NULL, KEY_PLACE_ID, &placeId);
@@ -79,7 +79,7 @@ int PlaceGeofenceProvider::subscribe(Json option, Json *requestResult)
        return ERR_NONE;
 }
 
-int PlaceGeofenceProvider::unsubscribe(Json option)
+int PlaceGeofenceProvider::unsubscribe(CtxJson1 option)
 {
        int placeId = -1;
        option.get(NULL, KEY_PLACE_ID, &placeId);
index 5556fd5..6cbbd08 100644 (file)
@@ -30,8 +30,8 @@ namespace ctx {
                PlaceGeofenceProvider();
                ~PlaceGeofenceProvider();
 
-               int subscribe(Json option, Json *requestResult);
-               int unsubscribe(Json option);
+               int subscribe(CtxJson1 option, CtxJson1 *requestResult);
+               int unsubscribe(CtxJson1 option);
 
                bool isSupported();
                void getPrivilege(std::vector<const char*> &privilege);
index 63ec01b..efa221f 100644 (file)
@@ -73,7 +73,7 @@ int HeadphoneStateProvider::read()
        if (!__beingSubscribed)
                __connected = __getCurrentStatus();
 
-       Json data;
+       CtxJson1 data;
        __generateDataPacket(&data);
        replyToRead(NULL, ERR_NONE, data);
 
@@ -134,7 +134,7 @@ bool HeadphoneStateProvider::__getCurrentStatus()
        return ((__audioJackState != RUNTIME_INFO_AUDIO_JACK_STATUS_UNCONNECTED) || __btAudioState);
 }
 
-void HeadphoneStateProvider::__generateDataPacket(Json* data)
+void HeadphoneStateProvider::__generateDataPacket(CtxJson1* data)
 {
        data->set(NULL, KEY_IS_CONNECTED, __connected ? VAL_TRUE : VAL_FALSE);
 
@@ -159,7 +159,7 @@ bool HeadphoneStateProvider::__handleUpdate()
 
        IF_FAIL_RETURN(prevState != __connected, false);
 
-       Json data;
+       CtxJson1 data;
        __generateDataPacket(&data);
        publish(NULL, ERR_NONE, data);
        return true;
index 62e1b88..2c188c6 100644 (file)
@@ -50,7 +50,7 @@ namespace ctx {
                void __unsetBtAudioCallback();
                void __setBtAudioState(bool state);
 
-               void __generateDataPacket(Json* data);
+               void __generateDataPacket(CtxJson1* data);
                bool __handleUpdate();
                void __handleAudioJackEvent();
                static gboolean __handleBtEvent(gpointer data);
index fdfadfc..b623594 100644 (file)
@@ -31,7 +31,7 @@ MediaDbHandle::~MediaDbHandle()
 {
 }
 
-int MediaDbHandle::read(Json filter)
+int MediaDbHandle::read(CtxJson1 filter)
 {
        //TODO: filter validation (in the API side?)
        std::string query;
@@ -66,7 +66,7 @@ int MediaDbHandle::read(Json filter)
        return ERR_NONE;
 }
 
-std::string MediaDbHandle::createWhereClause(int mediaType, Json filter)
+std::string MediaDbHandle::createWhereClause(int mediaType, CtxJson1 filter)
 {
        std::stringstream whereClause;
 
@@ -76,21 +76,21 @@ std::string MediaDbHandle::createWhereClause(int mediaType, Json filter)
        return whereClause.str();
 }
 
-std::string MediaDbHandle::createSqlPeakTime(int mediaType, Json filter)
+std::string MediaDbHandle::createSqlPeakTime(int mediaType, CtxJson1 filter)
 {
        std::string where = createWhereClause(mediaType, filter);
        return StatsDbHandleBase::createSqlPeakTime(filter, MEDIA_TABLE_NAME, where);
 }
 
-std::string MediaDbHandle::createSqlCommonSetting(int mediaType, Json filter)
+std::string MediaDbHandle::createSqlCommonSetting(int mediaType, CtxJson1 filter)
 {
        std::string where = createWhereClause(mediaType, filter);
        return StatsDbHandleBase::createSqlCommonSetting(filter, MEDIA_TABLE_NAME, where);
 }
 
-std::string MediaDbHandle::createSqlFrequency(int mediaType, Json filter)
+std::string MediaDbHandle::createSqlFrequency(int mediaType, CtxJson1 filter)
 {
-       Json filterCleaned;
+       CtxJson1 filterCleaned;
        std::string weekStr;
        std::string timeOfDay;
 
@@ -111,12 +111,12 @@ std::string MediaDbHandle::createSqlFrequency(int mediaType, Json filter)
        return query.str();
 }
 
-void MediaDbHandle::replyTriggerItem(int error, Json &jsonResult)
+void MediaDbHandle::replyTriggerItem(int error, CtxJson1 &jsonResult)
 {
        IF_FAIL_VOID_TAG(STR_EQ(reqProvider->getSubject(), MEDIA_SUBJ_MUSIC_FREQUENCY) ||
                STR_EQ(reqProvider->getSubject(), MEDIA_SUBJ_VIDEO_FREQUENCY), _E, "Invalid subject");
 
-       Json results;
+       CtxJson1 results;
        int val;
 
        jsonResult.get(NULL, KEY_TOTAL_COUNT, &val);
index 8b7f1c1..42b5ad6 100644 (file)
@@ -18,7 +18,7 @@
 #define _CONTEXT_STATS_MEDIA_DB_HANDLE_H_
 
 #include <string>
-#include <Json.h>
+#include <CtxJson1.h>
 #include "../shared/DbHandleBase.h"
 
 namespace ctx {
@@ -27,14 +27,14 @@ namespace ctx {
                MediaDbHandle(ContextProvider *provider);
                ~MediaDbHandle();
 
-               int read(Json filter);
+               int read(CtxJson1 filter);
 
        protected:
-               std::string createWhereClause(int mediaType, Json filter);
-               std::string createSqlPeakTime(int mediaType, Json filter);
-               std::string createSqlCommonSetting(int mediaType, Json filter);
-               std::string createSqlFrequency(int mediaType, Json filter);
-               void replyTriggerItem(int error, Json &jsonResult);
+               std::string createWhereClause(int mediaType, CtxJson1 filter);
+               std::string createSqlPeakTime(int mediaType, CtxJson1 filter);
+               std::string createSqlCommonSetting(int mediaType, CtxJson1 filter);
+               std::string createSqlFrequency(int mediaType, CtxJson1 filter);
+               void replyTriggerItem(int error, CtxJson1 &jsonResult);
        };
 }
 
index bf29b2d..179121f 100644 (file)
@@ -132,7 +132,7 @@ void ctx::MediaContentMonitor::__updatePlayCount(const char *uuid, int type, int
        __dbManager.execute(0, query.str().c_str(), this);
 }
 
-void ctx::MediaContentMonitor::onExecuted(unsigned int queryId, int error, std::vector<Json>& records)
+void ctx::MediaContentMonitor::onExecuted(unsigned int queryId, int error, std::vector<CtxJson1>& records)
 {
        IF_FAIL_VOID(!records.empty());
 
@@ -146,7 +146,7 @@ void ctx::MediaContentMonitor::__insertLog(int mediaType)
 {
        int systemVolume = -1, mediaVolume = -1, audioJack = -1;
 
-       Json data;
+       CtxJson1 data;
        data.set(NULL, CX_MEDIA_TYPE, mediaType);
 
        if (ctx::system_info::getAudioJackState(&audioJack))
index 84610b3..8b64e15 100644 (file)
@@ -42,7 +42,7 @@ namespace ctx {
 
                void onTableCreated(unsigned int queryId, int error) {}
                void onInserted(unsigned int queryId, int error, int64_t rowId) {}
-               void onExecuted(unsigned int queryId, int error, std::vector<Json>& records);
+               void onExecuted(unsigned int queryId, int error, std::vector<CtxJson1>& records);
                void onSignal(const char *sender, const char *path, const char *iface, const char *name, GVariant *param);
 
        public:
index 75fc326..622dec2 100644 (file)
@@ -33,12 +33,12 @@ void MediaStatsLogger::getPrivilege(std::vector<const char*> &privilege)
        privilege.push_back(PRIV_MEDIA_HISTORY);
 }
 
-int MediaStatsLogger::subscribe(Json option, Json* requestResult)
+int MediaStatsLogger::subscribe(CtxJson1 option, CtxJson1* requestResult)
 {
        return ERR_NONE;
 }
 
-int MediaStatsLogger::unsubscribe(Json option)
+int MediaStatsLogger::unsubscribe(CtxJson1 option)
 {
        return ERR_NONE;
 }
index 60b8f12..0f077aa 100644 (file)
@@ -27,8 +27,8 @@ namespace ctx {
                MediaStatsLogger();
                ~MediaStatsLogger();
 
-               int subscribe(Json option, Json *requestResult);
-               int unsubscribe(Json option);
+               int subscribe(CtxJson1 option, CtxJson1 *requestResult);
+               int unsubscribe(CtxJson1 option);
                void getPrivilege(std::vector<const char*> &privilege);
 
        private:
index ed05640..dba21d5 100644 (file)
@@ -39,7 +39,7 @@ bool MediaStatsProvider::isSupported()
        return true;
 }
 
-int MediaStatsProvider::read(Json option, Json* requestResult)
+int MediaStatsProvider::read(CtxJson1 option, CtxJson1* requestResult)
 {
        MediaDbHandle *handle = new(std::nothrow) MediaDbHandle(this);
        IF_FAIL_RETURN_TAG(handle, ERR_OPERATION_FAILED, _E, "Memory allocation failed");
index 26a32cc..c5e6aec 100644 (file)
@@ -24,7 +24,7 @@ namespace ctx {
 
        class MediaStatsProvider : public ContextProvider {
        public:
-               int read(Json option, Json* requestResult);
+               int read(CtxJson1 option, CtxJson1* requestResult);
                bool isSupported();
                void getPrivilege(std::vector<const char*> &privilege);
 
index ed14fe8..5b7c2e9 100644 (file)
@@ -57,7 +57,7 @@ void MessageEventProvider::__handleUpdate(msg_struct_t msg)
        int err;
        int type;
        char address[MAX_ADDR_SIZE];
-       Json data;
+       CtxJson1 data;
 
        err = msg_get_int_value(msg, MSG_MESSAGE_TYPE_INT, &type);
        IF_FAIL_VOID_TAG(err == MSG_SUCCESS, _W, "Getting message type failed");
diff --git a/src/my-place/CMakeLists.txt b/src/my-place/CMakeLists.txt
deleted file mode 100644 (file)
index cc19619..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-SET(target "${target_prefix}-my-place")
-SET(target_myplace_utils_static "${target}-utils_static")
-
-INCLUDE_DIRECTORIES(utils)
-
-SET(DEPS ${DEPS}
-       gmodule-2.0
-       capi-location-manager
-       capi-network-wifi
-)
-
-FILE(GLOB SRCS *.cpp facade/*.cpp visit-detector/*.cpp)
-
-INCLUDE(FindPkgConfig)
-PKG_CHECK_MODULES(PKG_MYPLACE REQUIRED ${DEPS})
-
-FOREACH(flag ${PKG_MYPLACE_CFLAGS})
-       SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${flag}")
-ENDFOREACH(flag)
-
-ADD_LIBRARY(${target} SHARED ${SRCS})
-TARGET_LINK_LIBRARIES(${target} ${PKG_MYPLACE_LDFLAGS} ${target_shared} ${target_myplace_utils_static})
-
-INSTALL(TARGETS ${target} DESTINATION ${CMAKE_INSTALL_LIBDIR}/${target_dir})
-
-ADD_SUBDIRECTORY(utils)
-ADD_SUBDIRECTORY(place)
-ADD_SUBDIRECTORY(visit-categer)
\ No newline at end of file
diff --git a/src/my-place/CreateProvider.cpp b/src/my-place/CreateProvider.cpp
deleted file mode 100644 (file)
index abeb994..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <CreateProvider.h>
-#include "PlaceRecognitionProvider.h"
-
-using namespace ctx;
-
-extern "C" SO_EXPORT ContextProvider* CreateProvider(const char *subject)
-{
-       ADD_PROVIDER(SUBJ_PLACE_DETECTION, PlaceRecognitionProvider);
-
-       return NULL;
-}
diff --git a/src/my-place/PlaceRecognitionProvider.cpp b/src/my-place/PlaceRecognitionProvider.cpp
deleted file mode 100644 (file)
index fd30973..0000000
+++ /dev/null
@@ -1,93 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include "PlaceRecognitionProvider.h"
-#include <Util.h>
-
-void ctx::PlaceRecognitionProvider::getPrivilege(std::vector<const char*> &privilege)
-{
-       privilege.push_back(PRIV_LOCATION);
-       privilege.push_back(PRIV_NETWORK);
-}
-
-int ctx::PlaceRecognitionProvider::subscribe(ctx::Json option, ctx::Json* requestResult)
-{
-       /* NOTE: This function needs to return ERR_NONE.
-          Otherwise, context-service will automatically delete this object. */
-       return ERR_NONE;
-}
-
-int ctx::PlaceRecognitionProvider::unsubscribe(ctx::Json option)
-{
-       /* NOTE: As the above subscribe() returns ERR_NONE, in parallel,
-          this function also needs to return ERR_NONE. */
-       return ERR_NONE;
-}
-
-int ctx::PlaceRecognitionProvider::read(ctx::Json option, ctx::Json* requestResult)
-{
-       _D(BLUE("Read"));
-       _J("Option", option);
-
-       std::string request;
-       Json dataRead;
-       option.get(NULL, PLACE_DETECTION_REQUEST, &request);
-       bool consent = __engine.getConsent();
-       int ret = ERR_NONE;
-       if (request == PLACE_DETECTION_REQUEST_CONSENT) {
-               dataRead.set(NULL, PLACE_DETECTION_REQUEST_CONSENT, consent ? MYPLACE_SETTING_VALUE_TRUE : MYPLACE_SETTING_VALUE_FALSE);
-       } else if (request == PLACE_DETECTION_REQUEST_LIST) {
-               if (consent)
-                       dataRead = UserPlaces::getPlaces();
-               else
-                       ret = ERR_NOT_STARTED;
-       } else {
-               ret = ERR_INVALID_PARAMETER;
-       }
-
-       replyToRead(option, ret, dataRead);
-       return ret;
-}
-
-int ctx::PlaceRecognitionProvider::write(ctx::Json data, ctx::Json* requestResult)
-{
-       _D(BLUE("Write"));
-       _J("Data", data);
-
-       std::string value;
-       IF_FAIL_RETURN_TAG(
-                       data.get(NULL, PLACE_DETECTION_REQUEST_CONSENT, &value),
-                       ERR_NOT_SUPPORTED,
-                       _E,
-                       "Invalid write request");
-       if (value == MYPLACE_SETTING_VALUE_TRUE) {
-               __engine.setConsent(true);
-       } else if (value == MYPLACE_SETTING_VALUE_FALSE) {
-               __engine.setConsent(false);
-       } else {
-               _E("Invalid write parameter %s = '%s'", PLACE_DETECTION_REQUEST_CONSENT, value.c_str());
-               return ERR_INVALID_PARAMETER;
-       }
-       return ERR_NONE;
-}
-
-bool ctx::PlaceRecognitionProvider::isSupported()
-{
-       bool locationSupport = util::getSystemInfoBool("tizen.org/feature/location");
-       bool wifiSupport = util::getSystemInfoBool("tizen.org/feature/network.wifi");
-       _D("locationSupport = %d, wifiSupport = %d", locationSupport, wifiSupport);
-       return locationSupport && wifiSupport;
-}
diff --git a/src/my-place/PlaceRecognitionProvider.h b/src/my-place/PlaceRecognitionProvider.h
deleted file mode 100644 (file)
index 4a3a96c..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef _CONTEXT_PLACE_RECOGNITION_H_
-#define _CONTEXT_PLACE_RECOGNITION_H_
-
-#include <ContextProvider.h>
-#include <MyPlaceTypes.h>
-#include "facade/UserPlaces.h"
-
-namespace ctx {
-
-       class PlaceRecognitionProvider : public ContextProvider {
-
-       public:
-               PlaceRecognitionProvider() :
-                       ContextProvider(SUBJ_PLACE_DETECTION),
-                       __engine(PLACE_RECOG_HIGH_ACCURACY_MODE) {}
-
-               ~PlaceRecognitionProvider() {}
-
-               int subscribe(ctx::Json option, ctx::Json *requestResult);
-               int unsubscribe(ctx::Json option);
-               int read(ctx::Json option, ctx::Json *requestResult);
-               int write(ctx::Json data, ctx::Json *requestResult);
-
-               bool isSupported();
-               void getPrivilege(std::vector<const char*> &privilege);
-
-       private:
-               UserPlaces __engine;
-
-       };      /* class PlaceRecognitionProvider */
-
-}      /* namespace ctx */
-
-#endif /* End of _CONTEXT_PLACE_RECOGNITION_H_ */
diff --git a/src/my-place/facade/UserPlaces.cpp b/src/my-place/facade/UserPlaces.cpp
deleted file mode 100755 (executable)
index 067d595..0000000
+++ /dev/null
@@ -1,326 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <ctime>
-#include <memory>
-#include <sstream>
-#include <Types.h>
-#include "UserPlaces.h"
-#include <MyPlaceTypes.h>
-#include <gmodule.h>
-#include <DatabaseManager.h>
-#include <string>
-
-#define SO_PATH _LIBDIR_ "/context-service/libctx-prvd-my-place-places-detector.so"
-
-typedef void (*places_detector_t)();
-
-#define __GET_PLACES_QUERY "SELECT "\
-       PLACE_COLUMN_CATEG_ID ", "\
-       PLACE_COLUMN_CATEG_CONFIDENCE ", "\
-       PLACE_COLUMN_NAME ", "\
-       PLACE_COLUMN_LOCATION_VALID ", "\
-       PLACE_COLUMN_LOCATION_LATITUDE ", "\
-       PLACE_COLUMN_LOCATION_LONGITUDE ", "\
-       PLACE_COLUMN_LOCATION_ACCURACY ", "\
-       PLACE_COLUMN_WIFI_APS ", "\
-       PLACE_COLUMN_CREATE_DATE \
-       " FROM " PLACE_TABLE
-
-#define __GET_WIFI_APS_MAP_QUERY "SELECT "\
-       WIFI_APS_MAP_COLUMN_MAC ", "\
-       WIFI_APS_MAP_COLUMN_NETWORK_NAME \
-       " FROM " WIFI_APS_MAP_TABLE
-
-#define __MYPLACE_SETTINGS_TABLE_COLUMNS \
-       MYPLACE_SETTINGS_COLUMN_KEY " TEXT NOT NULL UNIQUE, "\
-       MYPLACE_SETTINGS_COLUMN_VALUE " TEXT NOT NULL"\
-
-#define __GET_USER_CONSENT_QUERY "SELECT "\
-       MYPLACE_SETTINGS_COLUMN_VALUE \
-       " FROM " MYPLACE_SETTINGS_TABLE \
-       " WHERE " MYPLACE_SETTINGS_COLUMN_KEY \
-       "='" MYPLACE_SETTING_KEY_USER_CONSENT "';"
-
-ctx::UserPlaces::UserPlaces(PlaceRecogMode energyMode):
-       __visitDetector(nullptr),
-       __timerId(-1),
-       __started(false),
-       __energyMode(energyMode)
-{
-       _D("");
-       __dbCreateMyPlaceSettingsTable();
-       if (getConsent())
-               __start();
-}
-
-ctx::UserPlaces::~UserPlaces()
-{
-       __stop();
-};
-
-ctx::Json ctx::UserPlaces::getPlaces()
-{
-       std::vector<Json> records = __dbGetPlaces();
-       std::map<std::string, std::string> wifiAPsMap = __dbGetWifiAPsMap();
-       std::vector<std::shared_ptr<Place>> places = __placesFromJsons(records, wifiAPsMap);
-       return UserPlaces::__composeJson(places);
-}
-
-ctx::Json ctx::UserPlaces::__composeJson(std::vector<std::shared_ptr<Place>> places)
-{
-       ctx::Json data;
-       for (std::shared_ptr<ctx::Place> place : places) {
-               ctx::Json placeJson;
-               placeJson.set(NULL, PLACE_CATEG_ID, static_cast<int>(place->categId));
-               placeJson.set(NULL, PLACE_CATEG_CONFIDENCE, static_cast<double>(place->categConfidence));
-               placeJson.set(NULL, PLACE_NAME, place->name);
-               if (place->locationValid) {
-                       ctx::Json locationJson;
-                       locationJson.set(NULL, PLACE_LOCATION_LATITUDE, static_cast<double>(place->location.latitude));
-                       locationJson.set(NULL, PLACE_LOCATION_LONGITUDE, static_cast<double>(place->location.longitude));
-                       locationJson.set(NULL, PLACE_LOCATION_ACCURACY, static_cast<double>(place->location.accuracy));
-                       placeJson.set(NULL, PLACE_LOCATION, locationJson);
-               }
-               if (place->wifiAps.size()) {
-                       ctx::Json wifiApsListJson;
-                       for (std::pair<std::string, std::string> ap : place->wifiAps) {
-                               ctx::Json wifiApJson;
-                               wifiApJson.set(NULL, PLACE_WIFI_AP_MAC, ap.first);
-                               wifiApJson.set(NULL, PLACE_WIFI_AP_NETWORK_NAME, ap.second);
-                               wifiApsListJson.append(NULL, PLACE_WIFI_APS, wifiApJson);
-                       }
-                       placeJson.set(NULL, PLACE_WIFI_APS, wifiApsListJson);
-               }
-               placeJson.set(NULL, PLACE_CREATE_DATE, static_cast<int64_t>(place->createDate));
-               data.append(NULL, PLACE_DATA_READ, placeJson);
-       }
-       _J("returns ", data);
-       return data;
-}
-
-void ctx::UserPlaces::setMode(PlaceRecogMode energyMode)
-{
-       __energyMode = energyMode;
-       if (__visitDetector)
-               __visitDetector->setMode(energyMode);
-}
-
-bool ctx::UserPlaces::onTimerExpired(int timerId)
-{
-       _D("Try to detect places from user visits");
-       GModule *soHandle = g_module_open(SO_PATH, G_MODULE_BIND_LAZY);
-       IF_FAIL_RETURN_TAG(soHandle, true, _E, "%s", g_module_error());
-
-       gpointer symbol;
-       if (!g_module_symbol(soHandle, "detectPlaces", &symbol) || symbol == NULL) {
-               _E("%s", g_module_error());
-               g_module_close(soHandle);
-               return true;
-       }
-
-       places_detector_t detectPlaces = reinterpret_cast<places_detector_t>(symbol);
-
-       detectPlaces();
-       g_module_close(soHandle);
-       return true;
-}
-
-std::vector<ctx::Json> ctx::UserPlaces::__dbGetPlaces()
-{
-       std::vector<Json> records;
-       DatabaseManager dbManager;
-       bool ret = dbManager.executeSync(__GET_PLACES_QUERY, &records);
-       _D("load places execute query result: %s", ret ? "SUCCESS" : "FAIL");
-       return records;
-}
-
-std::map<std::string, std::string> ctx::UserPlaces::__dbGetWifiAPsMap()
-{
-       std::vector<Json> records;
-       std::map<std::string, std::string> wifiAPsMap;
-       DatabaseManager dbManager;
-       bool ret = dbManager.executeSync(__GET_WIFI_APS_MAP_QUERY, &records);
-       _D("load Wifi APs map (size = %d), result: %s", records.size(), ret ? "SUCCESS" : "FAIL");
-       std::string mac = "";
-       std::string networkName = "";
-       for (Json record : records) {
-               record.get(NULL, WIFI_APS_MAP_COLUMN_MAC, &mac);
-               record.get(NULL, WIFI_APS_MAP_COLUMN_NETWORK_NAME, &networkName);
-               wifiAPsMap.insert(std::pair<std::string, std::string>(mac, networkName));
-       }
-       return wifiAPsMap;
-}
-
-std::shared_ptr<ctx::Place> ctx::UserPlaces::__placeFromJson(Json &row, std::map<std::string, std::string> &wifiAPsMap)
-{
-       std::shared_ptr<Place> place = std::make_shared<Place>();
-       __placeCategoryFromJson(row, *place);
-       row.get(NULL, PLACE_COLUMN_NAME, &(place->name));
-       __placeLocationFromJson(row, *place);
-       __placeWifiAPsFromJson(row, wifiAPsMap, *place);
-       __placeCreateDateFromJson(row, *place);
-       _D("db_result: categId: %d; place: name: %s; locationValid: %d; latitude: %lf, longitude: %lf, createDate: %d", place->categId, place->name.c_str(), place->locationValid, place->location.latitude, place->location.longitude, place->createDate);
-       return place;
-}
-
-void ctx::UserPlaces::__placeCategoryFromJson(Json &row, ctx::Place &place)
-{
-       int categId;
-       row.get(NULL, PLACE_COLUMN_CATEG_ID, &categId);
-       // This is due to the fact the JSON module API interface doesn't handle enum
-       place.categId = static_cast<PlaceCategId>(categId);
-}
-
-void ctx::UserPlaces::__placeLocationFromJson(Json &row, ctx::Place &place)
-{
-       int locationValidInt;
-       row.get(NULL, PLACE_COLUMN_LOCATION_VALID, &locationValidInt);
-       place.locationValid = (bool) locationValidInt;
-       row.get(NULL, PLACE_COLUMN_LOCATION_LATITUDE, &(place.location.latitude));
-       row.get(NULL, PLACE_COLUMN_LOCATION_LONGITUDE, &(place.location.longitude));
-       row.get(NULL, PLACE_COLUMN_LOCATION_ACCURACY, &(place.location.accuracy));
-}
-
-void ctx::UserPlaces::__placeWifiAPsFromJson(Json &row, std::map<std::string, std::string> &wifiAPsMap, ctx::Place &place)
-{
-       std::string wifiAps;
-       row.get(NULL, PLACE_COLUMN_WIFI_APS, &wifiAps);
-       std::stringstream ss;
-       ss << wifiAps;
-       std::shared_ptr<MacSet> macSet = std::make_shared<MacSet>();
-       ss >> *macSet;
-       for (ctx::Mac mac : *macSet) {
-               place.wifiAps.insert(std::pair<std::string, std::string>(mac, wifiAPsMap[mac]));
-       }
-}
-
-void ctx::UserPlaces::__placeCreateDateFromJson(Json &row, ctx::Place &place)
-{
-       int createDate;
-       row.get(NULL, PLACE_COLUMN_CREATE_DATE, &(createDate));
-       // This is due to the fact the JSON module API interface doesn't handle time_t
-       place.createDate = static_cast<time_t>(createDate);
-}
-
-std::vector<std::shared_ptr<ctx::Place>> ctx::UserPlaces::__placesFromJsons(std::vector<Json>& records, std::map<std::string, std::string> &wifiAPsMap)
-{
-       std::vector<std::shared_ptr<Place>> places;
-       _D("db_result: number of all places: %d", records.size());
-
-       for (Json &row : records) {
-               std::shared_ptr<Place> place = __placeFromJson(row, wifiAPsMap);
-               places.push_back(place);
-       }
-       _D("number of all places in vector: %d", places.size());
-       return places;
-}
-
-void ctx::UserPlaces::__dbCreateMyPlaceSettingsTable()
-{
-       DatabaseManager dbManager;
-       bool ret = dbManager.createTableSync(MYPLACE_SETTINGS_TABLE, __MYPLACE_SETTINGS_TABLE_COLUMNS);
-       _D("db: Myplace setting Table Creation Result: %s", ret ? "SUCCESS" : "FAIL");
-}
-
-void ctx::UserPlaces::setConsent(bool consent)
-{
-       _D("");
-       DatabaseManager dbManager;
-       std::vector<Json> records;
-       std::stringstream query;
-       query << "REPLACE INTO " MYPLACE_SETTINGS_TABLE \
-                       " ( " MYPLACE_SETTINGS_COLUMN_KEY ", " MYPLACE_SETTINGS_COLUMN_VALUE " )" \
-                       " VALUES ( '" MYPLACE_SETTING_KEY_USER_CONSENT "', '";
-       if (consent) {
-               query << MYPLACE_SETTING_VALUE_TRUE;
-               if (!__started)
-                       __start();
-       } else {
-               query << MYPLACE_SETTING_VALUE_FALSE;
-               if (__started)
-                       __stop();
-       }
-       query << "' );";
-
-       bool ret = dbManager.executeSync(query.str().c_str(), &records);
-       IF_FAIL_VOID_TAG(ret, _E, "Setting user consent (value = %d) to database failed", consent);
-}
-
-bool ctx::UserPlaces::getConsent()
-{
-       _D("");
-       DatabaseManager dbManager;
-       std::vector<Json> records;
-       bool ret = dbManager.executeSync(__GET_USER_CONSENT_QUERY, &records);
-       IF_FAIL_RETURN_TAG(ret, MYPLACE_SETTING_USER_CONSENT_DEFAULT, _E, "Getting user consent from database failed");
-       if (records.size()) {
-               std::string consentStr;
-               records[0].get(NULL, MYPLACE_SETTINGS_COLUMN_VALUE, &consentStr);
-               if (consentStr == MYPLACE_SETTING_VALUE_TRUE) {
-                       _D("User consent value from db: TRUE");
-                       return true;
-               } else if (consentStr == MYPLACE_SETTING_VALUE_FALSE) {
-                       _D("User consent value from db: FALSE");
-                       return false;
-               } else {
-                       _E("Unknown user consent value \"%s\" from db, it should be \"%s\" or \"%s\"",
-                               consentStr.c_str(),
-                               MYPLACE_SETTING_VALUE_TRUE,
-                               MYPLACE_SETTING_VALUE_FALSE);
-               }
-       }
-       // consent record empty or unknown value
-       setConsent(MYPLACE_SETTING_USER_CONSENT_DEFAULT);
-       return MYPLACE_SETTING_USER_CONSENT_DEFAULT;
-}
-
-void ctx::UserPlaces::__start()
-{
-       _D("");
-       time_t now = std::time(nullptr);
-       __visitDetector = new(std::nothrow) VisitDetector(now, __energyMode);
-       if (__visitDetector == nullptr) {
-               _E("Cannot initialize VisitDetector");
-               return;
-       }
-       __timerId = __timerManager.setAt( // execute once every night
-                       PLACES_DETECTOR_TASK_START_HOUR,
-                       PLACES_DETECTOR_TASK_START_MINUTE,
-                       DayOfWeek::EVERYDAY,
-                       this);
-       if (__timerId < 0) {
-               _E("timer set FAIL");
-               return;
-       } else {
-               _D("timer set SUCCESS");
-       }
-       __started = true;
-}
-
-void ctx::UserPlaces::__stop()
-{
-       _D("");
-       if (__timerId >= 0) {
-               __timerManager.remove(__timerId);
-               __timerId = -1;
-       }
-       if (__visitDetector) {
-               delete __visitDetector;
-               __visitDetector = nullptr;
-       }
-       __started = false;
-}
diff --git a/src/my-place/facade/UserPlaces.h b/src/my-place/facade/UserPlaces.h
deleted file mode 100644 (file)
index bc552cc..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef _CONTEXT_PLACE_RECOGNITION_USER_PLACES_H_
-#define _CONTEXT_PLACE_RECOGNITION_USER_PLACES_H_
-
-#include <vector>
-#include <map>
-#include <string>
-#include <Json.h>
-#include <TimerManager.h>
-#include <ITimerListener.h>
-#include "../visit-detector/VisitDetector.h"
-#include <UserPlacesTypes.h>
-
-namespace ctx {
-
-       class UserPlaces : public ITimerListener {
-
-       private:
-               VisitDetector *__visitDetector;
-               int __timerId;
-               TimerManager __timerManager;
-               bool __started;
-               PlaceRecogMode __energyMode;
-               static std::vector<Json> __dbGetPlaces();
-               static std::map<std::string, std::string> __dbGetWifiAPsMap();
-               static std::shared_ptr<ctx::Place> __placeFromJson(Json &row, std::map<std::string,
-                               std::string> &wifiAPsMap);
-               static void __placeCategoryFromJson(Json &row, ctx::Place &place);
-               static void __placeLocationFromJson(Json &row, ctx::Place &place);
-               static void __placeWifiAPsFromJson(Json &row, std::map<std::string,
-                               std::string> &wifiAPsMap, ctx::Place &place);
-               static void __placeCreateDateFromJson(Json &row, ctx::Place &place);
-               static std::vector<std::shared_ptr<Place>> __placesFromJsons(
-                               std::vector<Json>& records,
-                               std::map<std::string, std::string> &wifiAPsMap);
-               static std::vector<std::shared_ptr<Place>> __getPlaces();
-               static Json __composeJson(std::vector<std::shared_ptr<Place>> places);
-               static void __dbCreateMyPlaceSettingsTable();
-               void __start();
-               void __stop();
-
-               bool onTimerExpired(int timerId);
-
-               UserPlaces(const UserPlaces&) = delete;
-               UserPlaces& operator=(const UserPlaces&) = delete;
-
-       public:
-               UserPlaces(PlaceRecogMode energyMode = PLACE_RECOG_HIGH_ACCURACY_MODE);
-               ~UserPlaces();
-
-               void setMode(PlaceRecogMode energyMode);
-               static ctx::Json getPlaces();
-               void setConsent(bool consent);
-               bool getConsent();
-
-       };      /* class UserPlaces */
-
-}      /* namespace ctx */
-
-#endif /* End of _CONTEXT_PLACE_RECOGNITION_USER_PLACES_H_ */
diff --git a/src/my-place/place/CMakeLists.txt b/src/my-place/place/CMakeLists.txt
deleted file mode 100644 (file)
index 7ac705f..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-SET(target "${target_prefix}-my-place-places-detector")
-
-INCLUDE_DIRECTORIES(../utils)
-
-FILE(GLOB SRCS *.cpp)
-
-ADD_LIBRARY(${target} SHARED ${SRCS})
-TARGET_LINK_LIBRARIES(${target} ${target_myplace_utils_static})
-
-INSTALL(TARGETS ${target} DESTINATION ${CMAKE_INSTALL_LIBDIR}/${target_dir})
\ No newline at end of file
diff --git a/src/my-place/place/Graph.cpp b/src/my-place/place/Graph.cpp
deleted file mode 100644 (file)
index 82ccc72..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <memory>
-#include <queue>
-#include "Graph.h"
-
-std::shared_ptr<ctx::graph::Components> ctx::graph::connectedComponents(Graph &graph)
-{
-       std::shared_ptr<Components> ccs = std::make_shared<Components>();
-       std::set<int> fringe;
-
-       for (Node i = 0; i < static_cast<Node>(graph.size()); i++) {
-               if (!graph[i])
-                       continue;
-
-               // neighbourhood of node i exists (was not removed)
-               std::shared_ptr<Component> c = std::make_shared<Component>();
-               ccs->push_back(c);
-               fringe.insert(i);
-               while (!fringe.empty()) {
-                       Node currNode = *fringe.begin();
-                       fringe.erase(fringe.begin());
-                       c->insert(currNode);
-
-                       std::shared_ptr<NeighbourNodes> currNhood = graph[currNode];
-                       for (Node nhoodNode : *currNhood) {
-                               if (graph[nhoodNode] && fringe.find(nhoodNode) == fringe.end())
-                                       fringe.insert(nhoodNode);
-                       }
-                       graph[currNode].reset();  // removing current node
-               }
-       }
-       return ccs;
-}
diff --git a/src/my-place/place/Graph.h b/src/my-place/place/Graph.h
deleted file mode 100644 (file)
index 542b0cd..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef _CONTEXT_PLACE_RECOGNITION_GRAPH_H_
-#define _CONTEXT_PLACE_RECOGNITION_GRAPH_H_
-
-#include <memory>
-#include <vector>
-#include <set>
-
-namespace ctx {
-
-namespace graph {
-
-       typedef int Node;
-       typedef std::set<Node> NeighbourNodes;
-       typedef std::vector<std::shared_ptr<NeighbourNodes>> Graph;
-       typedef std::set<Node> Component;
-       typedef std::vector<std::shared_ptr<Component>> Components;
-
-       /*
-        * make connected components of a given graph
-        * caution: the graph will be changed (its nodes will be cleared)
-        */
-       std::shared_ptr<Components> connectedComponents(Graph &graph);
-
-}      /* namespace graph */
-
-}      /* namespace ctx */
-
-#endif /* End of _CONTEXT_PLACE_RECOGNITION_GRAPH_H_ */
diff --git a/src/my-place/place/PlaceCateger.cpp b/src/my-place/place/PlaceCateger.cpp
deleted file mode 100644 (file)
index 603e857..0000000
+++ /dev/null
@@ -1,110 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include "PlaceCateger.h"
-#include <Median.h>
-#include <UserPlacesParams.h>
-#include <UserPlacesTypes.h>
-#include <algorithm>
-#include <Types.h>
-
-void ctx::PlaceCateger::__reduceOutliers(ctx::Visits &visits)
-{
-       int size = visits.size();
-       visits.erase(std::remove_if(
-                                       visits.begin(),
-                                       visits.end(),
-                                       [](Visit v)->bool {
-                                               return v.categs[PLACE_CATEG_ID_HOME] < PLACES_CATEGER_MIN_VISITS_SCORE
-                                                               && v.categs[PLACE_CATEG_ID_WORK] < PLACES_CATEGER_MIN_VISITS_SCORE
-                                                               && v.categs[PLACE_CATEG_ID_OTHER] < PLACES_CATEGER_MIN_VISITS_SCORE;
-                                       }),
-                               visits.end());
-       int newSize = visits.size();
-       if (size != newSize)
-               _D("Visits number from %d to %d (visits min scores checking)", size, newSize);
-}
-
-/*
- * Change category if home or work has to few visits
- */
-bool ctx::PlaceCateger::__reduceCategory(const PlaceCategId &categId, const ctx::Visits &visits)
-{
-       return (categId == PLACE_CATEG_ID_HOME && visits.size() < PLACES_CATEGER_MIN_VISITS_PER_HOME)
-               || (categId == PLACE_CATEG_ID_WORK && visits.size() < PLACES_CATEGER_MIN_VISITS_PER_WORK);
-}
-
-void ctx::PlaceCateger::categorize(ctx::Visits &visits, ctx::Place &place)
-{
-       __reduceOutliers(visits);
-
-       place.categId = PLACE_CATEG_ID_NONE;
-       place.categConfidence = 0.0;
-
-       if (!visits.empty()) {
-               const std::vector<PlaceCategId> categIds = {
-                       PLACE_CATEG_ID_HOME,
-                       PLACE_CATEG_ID_WORK,
-                       PLACE_CATEG_ID_OTHER
-               };
-               num_t sumScore = 0.0;
-               num_t maxScore = 0.0;
-               for (PlaceCategId categId : categIds) {
-                       std::vector<num_t> categVector = __categVectorFromVisits(visits, categId);
-                       int i, j;
-                       num_t score = median(categVector, i, j);
-                       sumScore += score;
-                       if (score > maxScore) {
-                               maxScore = score;
-                               place.categId = categId;
-                       }
-               }
-               if (sumScore > 0)
-                       place.categConfidence = maxScore / sumScore;
-               if (__reduceCategory(place.categId, visits)) {
-                       place.categId = PLACE_CATEG_ID_OTHER;
-                       place.categConfidence = 0.0;
-               }
-       }
-
-       place.name = __categId2Name(place.categId);
-}
-
-std::vector<ctx::num_t> ctx::PlaceCateger::__categVectorFromVisits(const ctx::Visits &visits, PlaceCategId categId)
-{
-       std::vector<ctx::num_t> vec;
-       for (auto &visit : visits) {
-               auto search = visit.categs.find(categId);
-               if (search != visit.categs.end())
-                       vec.push_back(search->second);
-       }
-       return vec;
-}
-
-std::string ctx::PlaceCateger::__categId2Name(PlaceCategId categId) {
-       switch (categId) {
-       case PLACE_CATEG_ID_HOME:
-               return "home";
-       case PLACE_CATEG_ID_WORK:
-               return "work";
-       case PLACE_CATEG_ID_OTHER:
-               return "other";
-       case PLACE_CATEG_ID_NONE:
-               return "none";
-       default:
-               return "";
-       }
-}
diff --git a/src/my-place/place/PlaceCateger.h b/src/my-place/place/PlaceCateger.h
deleted file mode 100644 (file)
index dd6943f..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef _CONTEXT_PLACE_RECOGNITION_PLACE_CATEGER_
-#define _CONTEXT_PLACE_RECOGNITION_PLACE_CATEGER_
-
-#include <UserPlacesTypes.h>
-#include <utility>
-#include <vector>
-#include <string>
-#include <MyPlaceTypes.h>
-
-namespace ctx {
-
-       class PlaceCateger {
-
-       private:
-               static bool __reduceCategory(const PlaceCategId &categId, const ctx::Visits &visits);
-               static void __reduceOutliers(Visits &visits);
-               static std::vector<ctx::num_t> __categVectorFromVisits(const ctx::Visits &visits, PlaceCategId categId);
-               static std::string __categId2Name(PlaceCategId categId);
-
-       public:
-               static void categorize(ctx::Visits &visits, ctx::Place &place);
-
-       };      /* class PlaceCateger */
-
-}      /* namespace ctx */
-
-#endif /* End of _CONTEXT_PLACE_RECOGNITION_PLACE_CATEGER_ */
diff --git a/src/my-place/place/PlacesDetector.cpp b/src/my-place/place/PlacesDetector.cpp
deleted file mode 100644 (file)
index 96e9a41..0000000
+++ /dev/null
@@ -1,383 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <sstream>
-#include <Types.h>
-#include <Json.h>
-#include <Similarity.h>
-#include "PlacesDetector.h"
-#include "PlaceCateger.h"
-#include <Median.h>
-#ifdef DEBUG_MODE
-#include <Gmap.h>
-#endif /* DEBUG_MODE */
-#include <UserPlacesTypes.h>
-#include <fstream>
-#include <algorithm>
-#include <UserPlacesParams.h>
-#include <DebugUtils.h>
-#include <DatabaseManager.h>
-
-#define __DELETE_PLACES_QUERY "DELETE FROM " PLACE_TABLE
-
-#ifdef DEBUG_MODE
-#define __USER_PLACES_FILE "/tmp/user_places.txt"
-#endif /* DEBUG_MODE */
-
-#define __GET_VISITS_QUERY "SELECT "\
-       VISIT_COLUMN_END_TIME ", "\
-       VISIT_COLUMN_START_TIME ", "\
-       VISIT_COLUMN_WIFI_APS ", "\
-       VISIT_COLUMN_LOCATION_VALID ", "\
-       VISIT_COLUMN_LOCATION_LATITUDE ", "\
-       VISIT_COLUMN_LOCATION_LONGITUDE ", "\
-       VISIT_COLUMN_LOCATION_ACCURACY ", "\
-       VISIT_COLUMN_CATEG_HOME ", "\
-       VISIT_COLUMN_CATEG_WORK ", "\
-       VISIT_COLUMN_CATEG_OTHER \
-       " FROM " VISIT_TABLE
-
-#define __PLACE_TABLE_COLUMNS \
-       PLACE_COLUMN_CATEG_ID " INTEGER, "\
-       PLACE_COLUMN_CATEG_CONFIDENCE " REAL, "\
-       PLACE_COLUMN_NAME " TEXT, "\
-       PLACE_COLUMN_LOCATION_VALID " INTEGER, "\
-       PLACE_COLUMN_LOCATION_LATITUDE " REAL, "\
-       PLACE_COLUMN_LOCATION_LONGITUDE " REAL, "\
-       PLACE_COLUMN_LOCATION_ACCURACY " REAL, "\
-       PLACE_COLUMN_WIFI_APS " STRING, "\
-       PLACE_COLUMN_CREATE_DATE " timestamp"
-
-void ctx::PlacesDetector::detectPlaces()
-{
-       _D("");
-       __dbCreateTable();
-       __dbDeletePlaces();
-       __dbDeleteOldEntries();
-       std::vector<Json> records = __dbGetVisits();
-       Visits visits = __visitsFromJsons(records);
-       __processVisits(visits);
-}
-
-std::vector<ctx::Json> ctx::PlacesDetector::__dbGetVisits()
-{
-       std::vector<Json> records;
-       DatabaseManager dbManager;
-       bool ret = dbManager.executeSync(__GET_VISITS_QUERY, &records);
-       _D("load visits execute query result: %s", ret ? "SUCCESS" : "FAIL");
-       return records;
-}
-
-double ctx::PlacesDetector::__doubleValueFromJson(Json &row, const char* key)
-{
-       double value;
-       row.get(NULL, key, &value);
-       _D("key: %s, value: %lf", key, value);
-       return value;
-}
-
-ctx::Categs ctx::PlacesDetector::__visitCategsFromJson(Json &row)
-{
-       Categs categs;
-       categs[PLACE_CATEG_ID_HOME] = __doubleValueFromJson(row, VISIT_COLUMN_CATEG_HOME);
-       categs[PLACE_CATEG_ID_WORK] = __doubleValueFromJson(row, VISIT_COLUMN_CATEG_WORK);
-       categs[PLACE_CATEG_ID_OTHER] = __doubleValueFromJson(row, VISIT_COLUMN_CATEG_OTHER);
-       return categs;
-}
-
-void ctx::PlacesDetector::__visitLocationFromJson(Json &row, ctx::Visit &visit)
-{
-       int locationValidInt;
-       row.get(NULL, VISIT_COLUMN_LOCATION_VALID, &locationValidInt);
-       visit.locationValid = (bool) locationValidInt;
-       row.get(NULL, VISIT_COLUMN_LOCATION_LATITUDE, &(visit.location.latitude));
-       row.get(NULL, VISIT_COLUMN_LOCATION_LONGITUDE, &(visit.location.longitude));
-       row.get(NULL, VISIT_COLUMN_LOCATION_ACCURACY, &(visit.location.accuracy));
-}
-
-ctx::Visit ctx::PlacesDetector::__visitFromJson(Json &row)
-{
-       int startTime;
-       int endTime;
-       std::string str;
-       row.get(NULL, VISIT_COLUMN_START_TIME, &startTime);
-       row.get(NULL, VISIT_COLUMN_END_TIME, &endTime);
-       row.get(NULL, VISIT_COLUMN_WIFI_APS, &str);
-
-       std::stringstream ss;
-       ss << str;
-       std::shared_ptr<MacSet> macSet = std::make_shared<MacSet>();
-       ss >> *macSet;
-
-       Interval interval(startTime, endTime);
-       Categs categs = __visitCategsFromJson(row);
-
-       Visit visit(interval, macSet, categs);
-
-       __visitLocationFromJson(row, visit);
-
-       return visit;
-}
-
-ctx::Visits ctx::PlacesDetector::__visitsFromJsons(std::vector<Json>& records)
-{
-       Visits visits;
-       _D("db_result: number of all visits: %d", records.size());
-
-       for (Json &row : records) {
-               Visit visit = __visitFromJson(row);
-               visits.push_back(visit);
-       }
-       _D("number of all visits in vector: %d", visits.size());
-       return visits;
-}
-
-
-void ctx::PlacesDetector::__reduceOutliers(ctx::Visits &visits)
-{
-       int size = visits.size();
-       visits.erase(std::remove_if(
-                                       visits.begin(),
-                                       visits.end(),
-                                       [](Visit v)->bool {
-                                               int minutes = (v.interval.end - v.interval.start) / 60;
-                                               return (minutes < PLACES_DETECTOR_MIN_VISIT_DURATION_MINUTES)
-                                                               || (minutes > PLACES_DETECTOR_MAX_VISIT_DURATION_MINUTES);
-                                       }),
-                               visits.end());
-       int newSize = visits.size();
-       if (size != newSize)
-               _D("Visits number from %d to %d (to short and to long reduction)", size, newSize);
-}
-
-std::vector<std::shared_ptr<ctx::Place>> ctx::PlacesDetector::__processVisits(ctx::Visits &visits, bool testMode)
-{
-#ifdef DEBUG_MODE
-       std::vector<Visits> placesVisits;
-#endif /* DEBUG_MODE */
-
-       std::vector<std::shared_ptr<Place>> newDetectedPlaces;
-
-       __reduceOutliers(visits);
-       auto components = __mergeVisits(visits);
-
-       for (std::shared_ptr<graph::Component> component : *components) {
-               // Small places outliers reduction
-               if (!testMode && component->size() < PLACES_DETECTOR_MIN_VISITS_PER_BIG_PLACE)
-                       continue;
-               std::shared_ptr<Visits> merged = std::make_shared<Visits>();
-               for (graph::Node i : *component) {
-                       merged->push_back(visits[i]);
-               }
-               std::shared_ptr<Place> place = __placeFromMergedVisits(*merged);
-               if (place->categId == PLACE_CATEG_ID_NONE)
-                       continue;
-               newDetectedPlaces.push_back(place);
-               if (!testMode)
-                       __dbInsertPlace(*place);
-
-#ifdef DEBUG_MODE
-               {
-                       Visits placeVisits;
-                       for (graph::Node i : *component) {
-                               placeVisits.push_back(visits[i]);
-                       }
-                       placesVisits.push_back(placeVisits);
-               }
-#endif /* DEBUG_MODE */
-       }
-
-#ifdef DEBUG_MODE
-       {
-               std::ofstream out(__USER_PLACES_FILE);
-               for (size_t i = 0; i < newDetectedPlaces.size(); i++) {
-                       DebugUtils::printPlace2Stream(*newDetectedPlaces[i], out);
-                       Visits placeVisits = placesVisits[i];
-                       for (Visit visit : placeVisits) {
-                               visit.printShort2Stream(out);
-                       }
-               }
-               out.close();
-               Gmap::writeMap(newDetectedPlaces);
-       }
-#endif /* DEBUG_MODE */
-
-return newDetectedPlaces;
-}
-
-void ctx::PlacesDetector::__mergeLocation(const Visits &visits, Place &place)
-{
-       std::vector<double> latitudes;
-       std::vector<double> longitudes;
-       std::vector<double> accuracy;
-       place.locationValid = false;
-       for (const Visit& visit : visits) {
-               if (visit.locationValid) {
-                       latitudes.push_back(visit.location.latitude);
-                       longitudes.push_back(visit.location.longitude);
-                       accuracy.push_back(visit.location.accuracy);
-                       place.locationValid = true;
-               }
-       }
-       if (place.locationValid) {
-               place.location = medianLocation(latitudes, longitudes, accuracy);
-               _D("place location set: lat=%.8f, lon=%.8f, acc=%.8f",
-                               place.location.latitude,
-                               place.location.longitude,
-                               place.location.accuracy);
-       } else {
-               _D("place location not set");
-       }
-}
-
-std::shared_ptr<ctx::Place> ctx::PlacesDetector::__placeFromMergedVisits(Visits &mergedVisits)
-{
-       std::shared_ptr<Place> place = std::make_shared<Place>();
-       place->createDate = std::time(nullptr);
-       std::vector<std::shared_ptr<MacSet>> macSets;
-       for (const Visit &visit : mergedVisits) {
-               macSets.push_back(visit.macSet);
-       }
-       std::shared_ptr<MacSet> allMacs = macSetsUnion(macSets);
-       __mergeLocation(mergedVisits, *place);
-       PlaceCateger::categorize(mergedVisits, *place);
-
-       /*
-        * At this stage getting network names associated with Wifi AP MAC addresses is not needed (by looking
-        * to Wifi APs MAC addresses to network names map in database). This additional information for place
-        * is needed only when place is returned for external clients (getting straight from the database).
-        */
-       for (ctx::Mac mac : *allMacs) {
-               place->wifiAps.insert(std::pair<std::string, std::string>(mac, ""));
-       }
-
-       return place;
-}
-
-void ctx::PlacesDetector::__reduceOutliers(std::shared_ptr<ctx::graph::Components> &cc)
-{
-       int size = cc->size();
-       cc->erase(std::remove_if(cc->begin(),
-                                                        cc->end(),
-                                                        [](std::shared_ptr<graph::Component> &c)->bool {
-                                                                return c->size() < PLACES_DETECTOR_MIN_VISITS_PER_PLACE;
-                                                        }),
-                         cc->end());
-       int newSize = cc->size();
-       if (size != newSize)
-               _D("Connected components from %d to %d (min visit per place)", size, newSize);
-}
-
-std::shared_ptr<ctx::graph::Components> ctx::PlacesDetector::__mergeVisits(const std::vector<Visit> &visits)
-{
-       auto graph = __graphFromVisits(visits);
-       auto cc = graph::connectedComponents(*graph);
-       __reduceOutliers(cc);
-       return cc;
-}
-
-std::shared_ptr<ctx::graph::Graph> ctx::PlacesDetector::__graphFromVisits(const std::vector<Visit> &visits)
-{
-       std::shared_ptr<graph::Graph> graph = std::make_shared<graph::Graph>();
-       graph->resize(visits.size());
-       for (size_t i = 0; i < visits.size(); i++) {
-               (*graph)[i] = std::make_shared<graph::NeighbourNodes>();
-               for (size_t j = 0; j < i; j++) {
-                       if (similarity::isJoint(*visits[i].macSet, *visits[j].macSet)) {
-                               (*graph)[i]->insert(j);
-                               (*graph)[j]->insert(i);
-                       }
-               }
-       }
-       return graph;
-}
-
-void ctx::PlacesDetector::__dbDeletePlaces()
-{
-       std::vector<Json> records;
-       DatabaseManager dbManager;
-       bool ret = dbManager.executeSync(__DELETE_PLACES_QUERY, &records);
-       _D("delete places execute query result: %s", ret ? "SUCCESS" : "FAIL");
-}
-
-void ctx::PlacesDetector::__dbDeleteOldEntries()
-{
-       time_t currentTime;
-       time(&currentTime);
-       time_t thresholdTime = currentTime - PLACES_DETECTOR_RETENTION_SECONDS;
-       __dbDeleteOlderVisitsThan(thresholdTime);
-       __dbDeleteOlderWifiAPsThan(thresholdTime);
-}
-
-void ctx::PlacesDetector::__dbDeleteOlderVisitsThan(time_t threshold)
-{
-       std::stringstream query;
-       query << "DELETE FROM " << VISIT_TABLE;
-       query << " WHERE " << VISIT_COLUMN_END_TIME << " < " << threshold;
-       std::vector<Json> records;
-       DatabaseManager dbManager;
-       bool ret = dbManager.executeSync(query.str().c_str(), &records);
-       _D("deleting visits older than: %d, result: %s", threshold, ret ? "SUCCESS" : "FAIL");
-}
-
-void ctx::PlacesDetector::__dbDeleteOlderWifiAPsThan(time_t threshold)
-{
-       std::stringstream query;
-       query << "DELETE FROM " << WIFI_APS_MAP_TABLE;
-       query << " WHERE " << WIFI_APS_MAP_COLUMN_INSERT_TIME << " < " << threshold;
-       std::vector<Json> records;
-       DatabaseManager dbManager;
-       bool ret = dbManager.executeSync(query.str().c_str(), &records);
-       _D("deleting Wifi APs older than: %d, result: %s", threshold, ret ? "SUCCESS" : "FAIL");
-}
-
-void ctx::PlacesDetector::__dbCreateTable()
-{
-       DatabaseManager dbManager;
-       bool ret = dbManager.createTableSync(PLACE_TABLE, __PLACE_TABLE_COLUMNS);
-       _D("db: place Table Creation Result: %s", ret ? "SUCCESS" : "FAIL");
-}
-
-void ctx::PlacesDetector::__dbInsertPlace(const Place &place)
-{
-       Json data;
-       data.set(NULL, PLACE_COLUMN_CATEG_ID, place.categId);
-       data.set(NULL, PLACE_COLUMN_CATEG_CONFIDENCE, place.categConfidence);
-       data.set(NULL, PLACE_COLUMN_NAME, place.name);
-
-       data.set(NULL, PLACE_COLUMN_LOCATION_VALID, place.locationValid);
-       data.set(NULL, PLACE_COLUMN_LOCATION_LATITUDE, place.location.latitude);
-       data.set(NULL, PLACE_COLUMN_LOCATION_LONGITUDE, place.location.longitude);
-       data.set(NULL, PLACE_COLUMN_LOCATION_ACCURACY, place.location.accuracy);
-       std::string wifiAps;
-       for (std::pair<std::string, std::string> ap : place.wifiAps) {
-               wifiAps.append(ap.first);
-               wifiAps.append(",");
-       }
-       wifiAps = wifiAps.substr(0, wifiAps.size()-1);
-       data.set(NULL, PLACE_COLUMN_WIFI_APS, wifiAps);
-       data.set(NULL, PLACE_COLUMN_CREATE_DATE, static_cast<int>(place.createDate));
-
-       int64_t rowId;
-       DatabaseManager dbManager;
-       bool ret = dbManager.insertSync(PLACE_TABLE, data, &rowId);
-       _D("insert place execute query result: %s", ret ? "SUCCESS" : "FAIL");
-}
-
-extern "C" SO_EXPORT void detectPlaces()
-{
-       ctx::PlacesDetector::detectPlaces();
-}
diff --git a/src/my-place/place/PlacesDetector.h b/src/my-place/place/PlacesDetector.h
deleted file mode 100644 (file)
index ad07355..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef _CONTEXT_PLACE_RECOGNITION_PLACES_DETECTOR_
-#define _CONTEXT_PLACE_RECOGNITION_PLACES_DETECTOR_
-
-#include <vector>
-#include <cstdint>
-#include <UserPlacesTypes.h>
-#include <MyPlaceTypes.h>
-#include "Graph.h"
-
-namespace ctx {
-
-       class PlacesDetector {
-
-       private:
-               static double __doubleValueFromJson(Json &row, const char* key);
-               static Categs __visitCategsFromJson(Json &row);
-               static void __visitLocationFromJson(Json &row, ctx::Visit &visit);
-               static Visit __visitFromJson(Json &row);
-               static Visits __visitsFromJsons(std::vector<Json>& records);
-
-               static std::shared_ptr<graph::Graph> __graphFromVisits(const std::vector<Visit> &visits);
-
-               static void __dbCreateTable();
-               static void __dbDeletePlaces();
-               static void __dbDeleteOldEntries();
-               static void __dbDeleteOlderVisitsThan(time_t threshold);
-               static void __dbDeleteOlderWifiAPsThan(time_t threshold);
-               static std::vector<Json> __dbGetVisits();
-               static void __dbInsertPlace(const Place &place);
-
-               static std::shared_ptr<Place> __placeFromMergedVisits(Visits &mergedVisits);
-               static std::vector<std::shared_ptr<ctx::Place>> __processVisits(Visits &visits, bool testMode = false);
-               static void __mergeLocation(const Visits &mergedVisits, Place &place);
-               static std::shared_ptr<graph::Components> __mergeVisits(const std::vector<Visit> &visits);
-               static void __reduceOutliers(Visits &visits);
-               static void __reduceOutliers(std::shared_ptr<graph::Components> &cc);
-
-               PlacesDetector();
-
-       public:
-               static void detectPlaces();
-
-       };  /* class PlacesDetector */
-
-}      /* namespace ctx */
-
-#endif /* End of _CONTEXT_PLACE_RECOGNITION_PLACES_DETECTOR_ */
diff --git a/src/my-place/utils/CMakeLists.txt b/src/my-place/utils/CMakeLists.txt
deleted file mode 100644 (file)
index 2ecc5e4..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-SET(target ${target_myplace_utils_static})
-
-FILE(GLOB SRCS *.cpp)
-
-ADD_LIBRARY(${target} STATIC ${SRCS})
\ No newline at end of file
diff --git a/src/my-place/utils/DebugUtils.cpp b/src/my-place/utils/DebugUtils.cpp
deleted file mode 100644 (file)
index 7cd292f..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include "DebugUtils.h"
-#include <Types.h>
-#include <iomanip>
-
-/*
- * Number of digits after decimal point used in geo coordinates.
- */
-#define GEO_LOCATION_PRECISION 7
-
-std::string ctx::DebugUtils::humanReadableDateTime(time_t timestamp, std::string format, size_t size, bool utc)
-{
-       struct tm timeinfo;
-       struct tm *result;
-       tzset();
-       if (utc) {
-               format += " UTC";
-               size += 4;
-               result = gmtime_r(&timestamp, &timeinfo);
-       } else {
-               result = localtime_r(&timestamp, &timeinfo);
-       }
-       char buffer[size];
-       if (result) {
-               strftime(buffer, size, format.c_str(), &timeinfo);
-       } else {
-               snprintf(buffer, size, "NULL");
-       }
-       return std::string(buffer);
-}
-
-void ctx::DebugUtils::printPlace2Stream(const Place &place, std::ostream &out)
-{
-       out << "PLACE:" << std::endl;
-       out << "__CATEGORY: " << place.name << std::endl;
-       if (place.locationValid) {
-               out << "__LOCATION: lat=" << std::setprecision(GEO_LOCATION_PRECISION + 2) << place.location.latitude;
-               out << ", lon=" << place.location.longitude << std::setprecision(5) << std::endl;
-       }
-       out << "__WIFI:" << std::endl;
-       for (std::pair<std::string, std::string> ap : place.wifiAps) {
-               out << "____ " << ap.first << " : " << ap.second << std::endl;
-       }
-       out << "__CREATE_DATE: " << humanReadableDateTime(place.createDate, "%F %T", 80) << std::endl;
-}
diff --git a/src/my-place/utils/DebugUtils.h b/src/my-place/utils/DebugUtils.h
deleted file mode 100644 (file)
index 5505e82..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef _CONTEXT_PLACE_RECOGNITION_DEBUG_UTILS_H_
-#define _CONTEXT_PLACE_RECOGNITION_DEBUG_UTILS_H_
-
-#include <string>
-#include <ctime>
-#include <iostream>
-#include <MyPlaceTypes.h>
-
-namespace ctx {
-
-       class DebugUtils {
-
-       public:
-               static std::string humanReadableDateTime(time_t timestamp, std::string format, size_t size, bool utc = false);
-               static void printPlace2Stream(const Place &place, std::ostream &out);
-
-       };      /* class DebugUtils */
-
-}      /* namespace ctx */
-
-#endif /* End of _CONTEXT_PLACE_RECOGNITION_DEBUG_UTILS_H_ */
diff --git a/src/my-place/utils/Gmap.cpp b/src/my-place/utils/Gmap.cpp
deleted file mode 100644 (file)
index 28c3d34..0000000
+++ /dev/null
@@ -1,93 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include "Gmap.h"
-#include <iostream>
-#include <fstream>
-
-const std::string ctx::Gmap::__HTML_HEADER = R"(
-<!DOCTYPE html>
-<html>
-  <head>
-    <meta name="viewport" content="initial-scale=1.0, user-scalable=no">
-    <meta charset="utf-8">
-    <title>Simple markers</title>
-    <style>
-      html, body, #map-canvas {
-        height: 100%;
-        margin: 0px;
-        padding: 0px
-      }
-    </style>
-    <script src="https://maps.googleapis.com/maps/api/js?v=3.exp&signed_in=true"></script>
-    <script>
-function initialize() {
-  var mapOptions = {
-    zoom: 2,
-    center: new google.maps.LatLng(20,60)
-  }
-  var map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);
-)";
-
-const std::string ctx::Gmap::__HTML_FOOTER = R"(
-}
-
-google.maps.event.addDomListener(window, 'load', initialize);
-
-    </script>
-  </head>
-  <body>
-    <div id="map-canvas"></div>
-  </body>
-</html>
-)";
-
-std::string ctx::Gmap::__iconForCategId(PlaceCategId categId)
-{
-       switch (categId) {
-       case PLACE_CATEG_ID_HOME:  return "markerH.png";
-       case PLACE_CATEG_ID_WORK:  return "markerW.png";
-       case PLACE_CATEG_ID_OTHER: return "markerO.png";
-       case PLACE_CATEG_ID_NONE:  return "markerN.png";
-       default: return "markerD.png";
-       }
-}
-
-void ctx::Gmap::__placeMarker2Stream(const ctx::Place& place, std::ostream& out)
-{
-       if (place.locationValid) {
-               out << "new google.maps.Marker({" << std::endl;
-               out << "    position: new google.maps.LatLng(" << place.location.latitude << "," << place.location.longitude << ")," << std::endl;
-               out << "    map: map," << std::endl;
-               out << "    icon: \"http://maps.google.com/mapfiles/" << __iconForCategId(place.categId)<< "\"" << std::endl;
-               out << "});" << std::endl;
-       }
-}
-
-void ctx::Gmap::__html2Stream(const std::vector<std::shared_ptr<ctx::Place>>& places, std::ostream& out)
-{
-       out << __HTML_HEADER;
-       for (std::shared_ptr<ctx::Place> place : places) {
-               __placeMarker2Stream(*place, out);
-       }
-       out << __HTML_FOOTER;
-}
-
-void ctx::Gmap::writeMap(const std::vector<std::shared_ptr<ctx::Place>>& places)
-{
-       std::ofstream out(GMAP_FILE);
-       __html2Stream(places, out);
-}
diff --git a/src/my-place/utils/Gmap.h b/src/my-place/utils/Gmap.h
deleted file mode 100644 (file)
index 9e5c930..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef _CONTEXT_PLACE_RECOGNITION_GMAP_H_
-#define _CONTEXT_PLACE_RECOGNITION_GMAP_H_
-
-#include "UserPlacesTypes.h"
-
-#define GMAP_FILE "/tmp/user_places_map.html"
-
-namespace ctx {
-
-       /*
-        * Class for generating a HTML page with GoogleMaps with all user places.
-        * This class is for test/demo purposes only.
-        */
-       class Gmap {
-
-       private:
-               static const std::string __HTML_HEADER;
-               static const std::string __HTML_FOOTER;
-               static std::string __iconForCategId(PlaceCategId categId);
-               static void __placeMarker2Stream(const Place& place, std::ostream& out);
-               static void __html2Stream(const std::vector<std::shared_ptr<Place>>& places, std::ostream& out);
-
-       public:
-               static void writeMap(const std::vector<std::shared_ptr<Place>>& places);
-
-       };      /* class Gmap */
-
-}      /* namespace ctx */
-
-#endif /* End of _CONTEXT_PLACE_RECOGNITION_GMAP_H_ */
diff --git a/src/my-place/utils/Median.cpp b/src/my-place/utils/Median.cpp
deleted file mode 100644 (file)
index 0ccd3ed..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <algorithm>
-#include <Types.h>
-#include "Median.h"
-
-static bool compareFun(std::pair<double, int> &i, std::pair<double, int> &j) {
-       return (i.first < j.first);
-}
-
-double ctx::median(std::vector<double> &values, int &elemIdx, int &evenCaseElemIdx)
-{
-       if (values.empty()) {
-               _E("Median of empty set");
-               return -1;
-       }
-       std::vector<std::pair<double, int>> valuesTemp;
-       for (size_t i = 0; i < values.size(); i++) {
-               valuesTemp.push_back(std::pair<double, int>(values[i], i));
-       }
-       int n = valuesTemp.size() / 2;
-       std::nth_element(valuesTemp.begin(), valuesTemp.begin() + n, valuesTemp.end(), compareFun);
-       std::pair<double, int> valuesTempN = valuesTemp[n];
-       elemIdx = valuesTempN.second;
-       if (valuesTemp.size() % 2 == 1) { //odd size
-               evenCaseElemIdx = -1;
-               return valuesTempN.first;
-       } else { // even size
-               std::nth_element(valuesTemp.begin(), valuesTemp.begin() + n - 1, valuesTemp.end());
-               evenCaseElemIdx = valuesTemp[n - 1].second;
-               return 0.5 * (valuesTempN.first + valuesTemp[n - 1].first);
-       }
-}
-
-ctx::Location ctx::medianLocation(std::vector<double> &latitudes, std::vector<double> &longitudes, std::vector<double> &accuracy)
-{
-       ctx::Location location;
-       if (latitudes.empty() || latitudes.size() != longitudes.size() || latitudes.size() != accuracy.size()) {
-               _E("Incorrect input vectors size");
-               return location;
-       }
-       int idx;
-       int additionalIdx;
-       location.latitude = median(latitudes, idx, additionalIdx);
-       double latitudeAccuracy = accuracy[idx];
-       if (additionalIdx >= 0) {
-               latitudeAccuracy = 0.5 * (latitudeAccuracy + accuracy[additionalIdx]);
-       }
-       location.longitude = median(longitudes, idx, additionalIdx);
-       double longitudeAccuracy = accuracy[idx];
-       if (additionalIdx >= 0) {
-               longitudeAccuracy = 0.5 * (longitudeAccuracy + accuracy[additionalIdx]);
-       }
-       location.accuracy = 0.5 * (latitudeAccuracy + longitudeAccuracy);
-       return location;
-}
diff --git a/src/my-place/utils/Median.h b/src/my-place/utils/Median.h
deleted file mode 100644 (file)
index 275fa13..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef _CONTEXT_PLACE_RECOGNITION_MEDIAN_
-#define _CONTEXT_PLACE_RECOGNITION_MEDIAN_
-
-#include "UserPlacesTypes.h"
-#include <vector>
-
-namespace ctx {
-
-       double median(std::vector<double> &values, int &elemIdx, int &evenCaseElemIdx);
-       ctx::Location medianLocation(std::vector<double> &latitudes, std::vector<double> &longitudes, std::vector<double> &accuracy);
-
-} /* namespace ctx */
-
-#endif /* End of _CONTEXT_PLACE_RECOGNITION_MEDIAN_ */
diff --git a/src/my-place/utils/Similarity.h b/src/my-place/utils/Similarity.h
deleted file mode 100644 (file)
index f78b675..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef _CONTEXT_PLACE_RECOGNITION_SIMILAR_H_
-#define _CONTEXT_PLACE_RECOGNITION_SIMILAR_H_
-
-#include "UserPlacesTypes.h"
-
-namespace ctx {
-
-namespace similarity {
-
-       template <class T> ctx::share_t overlap1stOver2nd(const T &s1, const T &s2)
-       {
-               if (s2.empty())
-                       return 0;
-               int count = 0;
-               for (auto e : s2) {
-                       if (s1.find(e) != s1.end())
-                               count++;
-               }
-               return (ctx::share_t) count / s2.size();
-       }
-
-       template <class T> ctx::share_t overlapBiggerOverSmaller(const T &s1, const T &s2)
-       {
-               if (s1.size() > s2.size()) {
-                       return similarity::overlap1stOver2nd(s1, s2);
-               } else {
-                       return similarity::overlap1stOver2nd(s2, s1);
-               }
-       }
-
-       template <class T> bool isJoint(const T &s1, const T &s2)
-       {
-               for (auto e : s2) {
-                       if (s1.find(e) != s1.end())
-                               return true;
-               }
-               return false;
-       }
-
-}      /* namespace similarity */
-
-}      /* namespace ctx */
-
-#endif /* End of _CONTEXT_PLACE_RECOGNITION_SIMILAR_H_ */
diff --git a/src/my-place/utils/UserPlacesParams.h b/src/my-place/utils/UserPlacesParams.h
deleted file mode 100644 (file)
index ccb136b..0000000
+++ /dev/null
@@ -1,111 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef _CONTEXT_PLACE_RECOGNITION_USER_PLACES_PARAMS_H_
-#define _CONTEXT_PLACE_RECOGNITION_USER_PLACES_PARAMS_H_
-
-/*
- * WiFi scanning frequency (in minutes) in PLACE_RECOG_HIGH_ACCURACY_MODE.
- */
-#define WIFI_LOGGER_INTERVAL_MINUTES_HIGH_ACCURACY 3
-
-/*
- * WiFi scanning frequency (in minutes) in PLACE_RECOG_LOW_POWER_MODE.
- */
-#define WIFI_LOGGER_INTERVAL_MINUTES_LOW_POWER 60
-
-/*
- * Time window taken into consideration (in seconds) in PLACE_RECOG_HIGH_ACCURACY_MODE.
- */
-#define VISIT_DETECTOR_PERIOD_SECONDS_HIGH_ACCURACY 360
-
-/*
- * Time window taken into consideration (in seconds) in PLACE_RECOG_LOW_POWER_MODE.
- */
-#define VISIT_DETECTOR_PERIOD_SECONDS_LOW_POWER 3600
-
-/*
- * Overlap threshold between two sets of mac addresses (overlap
- * coefficient for two sets should be higher than this threshold
- * in order to detect stable radio environment); =< 1.0
- * New parameter in algorithm compared to original version of PlaceSense!
- */
-#define VISIT_DETECTOR_OVERLAP 0.8f
-
-/*
- * Specifies how many stable intervals must be seen to
- * indicate an entrance to a place; >= 1
- */
-#define VISIT_DETECTOR_STABLE_DEPTH 1
-
-/*
- * Representatives threshold (representatnive beacon
- * response rate should be higher than this threshold); =< 1.0
- */
-#define VISIT_DETECTOR_REP_THRESHOLD 0.9f
-
-/*
- * Specifies how long scans must be unstable to indicate a leave form a place; >= 1
- */
-#define VISIT_DETECTOR_TOLERANCE_DEPTH 3
-
-#define PLACES_DETECTOR_TASK_START_HOUR 3
-#define PLACES_DETECTOR_TASK_START_MINUTE 11
-#define PLACES_DETECTOR_RETENTION_DAYS 30
-#define PLACES_DETECTOR_RETENTION_SECONDS 24 * 60 * 60 * PLACES_DETECTOR_RETENTION_DAYS
-
-/*
- * Minimal duration of visit (in minutes) taking into account for place detection
- */
-#define PLACES_DETECTOR_MIN_VISIT_DURATION_MINUTES 15
-
-/*
- * Maximum duration of visit (in minutes) taking into account for place detection
- */
-#define PLACES_DETECTOR_MAX_VISIT_DURATION_MINUTES 5 * 24 * 60
-
-/*
- * Minimum visits number per place
- */
-#define PLACES_DETECTOR_MIN_VISITS_PER_PLACE 1
-
-/*
- * Minimum visits number per big place
- */
-#define PLACES_DETECTOR_MIN_VISITS_PER_BIG_PLACE 4
-
-/*
- * Minimal visit category score for taking this visit into consideration during
- * place categorization
- */
-#define PLACES_CATEGER_MIN_VISITS_SCORE 0.1
-
-/*
- * Minimum visits number per home
- */
-#define PLACES_CATEGER_MIN_VISITS_PER_HOME 3
-
-/*
- * Minimum visits number per work
- */
-#define PLACES_CATEGER_MIN_VISITS_PER_WORK 2
-
-/*
- * Default user consent value for place detection
- */
-#define MYPLACE_SETTING_USER_CONSENT_DEFAULT false
-
-#endif /* End of _CONTEXT_PLACE_RECOGNITION_USER_PLACES_PARAMS_H_ */
diff --git a/src/my-place/utils/UserPlacesTypes.cpp b/src/my-place/utils/UserPlacesTypes.cpp
deleted file mode 100644 (file)
index 1b8857f..0000000
+++ /dev/null
@@ -1,233 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <set>
-#include <iostream>
-#include <iomanip>
-#include <sstream>
-#include <algorithm>
-#include <Types.h>
-#include "UserPlacesTypes.h"
-#include "UserPlacesParams.h"
-#include "DebugUtils.h"
-
-#define __MAC_STRING_COMPONENTS_SEPARATOR ':'
-#define __MAC_SET_STRING_DELIMITER ','
-
-ctx::Mac::Mac(const std::string& str)
-{
-       std::stringstream ss(str);
-       try {
-               ss >> *this;
-       } catch (std::runtime_error &e) {
-               _E("%s", e.what());
-       }
-}
-
-ctx::Mac::Mac(const char *str)
-{
-       std::stringstream ss(str);
-       try {
-               ss >> *this;
-       } catch (std::runtime_error &e) {
-               _E("%s", e.what());
-       }
-}
-
-std::istream& ctx::operator>>(std::istream &input, ctx::Mac &mac)
-{
-       int h;
-       char colon;
-       for (size_t i = 0; i < ctx::Mac::MAC_SIZE; i++) {
-               input >> std::hex;
-               input >> h;
-               mac.c[i] = h;
-               if (i + 1 >= ctx::Mac::MAC_SIZE)
-                       break;
-               input >> colon;
-               if (colon != __MAC_STRING_COMPONENTS_SEPARATOR)
-                       throw std::runtime_error("Invalid MAC format");
-       }
-       input >> std::dec;
-       return input;
-}
-
-std::ostream& ctx::operator<<(std::ostream &output, const ctx::Mac &mac)
-{
-       size_t i = 0;
-       while (true) {
-               output << std::hex << std::setfill('0') << std::setw(2);
-               output << static_cast<int>(mac.c[i]);
-               i++;
-               if (i >= Mac::MAC_SIZE)
-                       break;
-               output << __MAC_STRING_COMPONENTS_SEPARATOR;
-       }
-       output << std::dec;
-       return output;
-}
-
-ctx::Mac::operator std::string() const
-{
-       std::stringstream ss;
-       ss << *this;
-       return ss.str();
-}
-
-bool ctx::operator==(const Mac &m1, const Mac &m2)
-{
-       for (size_t i = 0; i < Mac::MAC_SIZE; i++) {
-               if (m1.c[i] != m2.c[i])
-                       return false;
-       }
-       return true;
-}
-
-bool ctx::operator!=(const Mac &m1, const Mac &m2)
-{
-       return !(m1 == m2);
-}
-
-bool ctx::operator<(const Mac &m1, const Mac &m2)
-{
-       unsigned char c1, c2;
-       for (size_t i = 0; i < Mac::MAC_SIZE; i++) {
-               c1 = m1.c[i];
-               c2 = m2.c[i];
-               if (c1 < c2)
-                       return true;
-               if (c1 > c2)
-                       return false;
-       }
-       return false; // they are equal
-}
-
-std::istream& ctx::operator>>(std::istream &input, ctx::MacSet &macSet)
-{
-       Mac mac;
-       char delimeter;
-       while (!input.eof()) {
-               try {
-                       input >> mac;
-               } catch (std::runtime_error &e) {
-                       _E("Cannot read macSet. Exception: %s", e.what());
-                       break;
-               }
-               macSet.insert(mac);
-               if (input.eof())
-                       break;
-               delimeter = input.get();
-               if (delimeter != __MAC_SET_STRING_DELIMITER) {
-                       input.unget();
-                       break;
-               }
-       }
-       return input;
-}
-
-std::ostream& ctx::operator<<(std::ostream &output, const ctx::MacSet &macSet)
-{
-       std::vector<Mac> macVec(macSet.size());
-       std::copy(macSet.begin(), macSet.end(), macVec.begin());
-       std::sort(macVec.begin(), macVec.end());
-
-       bool first = true;
-       for (auto &mac: macVec) {
-               if (first) {
-                       first = false;
-               } else {
-                       output << __MAC_SET_STRING_DELIMITER;
-               }
-               output << mac;
-       }
-       return output;
-}
-
-void ctx::LocationEvent::log()
-{
-       std::string time_str = DebugUtils::humanReadableDateTime(timestamp, "%T", 9);
-       _D("location lat=%.8f, lon=%.8f, acc=%.2f[m], time=%s",
-                       coordinates.latitude,
-                       coordinates.longitude,
-                       coordinates.accuracy,
-                       time_str.c_str());
-}
-
-void ctx::Visit::setLocation(Location location_)
-{
-       locationValid = true;
-       location = location_;
-}
-
-void ctx::Visit::printShort2Stream(std::ostream &out) const
-{
-       // print only valid visits
-       if (interval.end != 0) {
-               float duration = ((float) (interval.end - interval.start)) / 3600; // [h]
-               out << "__VISIT " << duration << "h: ";
-                       out << DebugUtils::humanReadableDateTime(interval.start, "%m/%d %H:%M", 15) << " Ã· ";
-                       out << DebugUtils::humanReadableDateTime(interval.end, "%m/%d %H:%M", 15) << std::endl;
-       }
-}
-
-bool ctx::operator==(const ctx::Visit &v1, const ctx::Visit &v2)
-{
-       return v1.interval.start == v2.interval.start
-                       && v1.interval.end == v2.interval.end
-                       && v1.categs == v2.categs
-                       && v1.location.latitude == v2.location.latitude
-                       && v1.location.longitude == v2.location.longitude
-                       && v1.location.accuracy == v2.location.accuracy
-                       && v1.locationValid == v2.locationValid
-                       && v1.macSet == v2.macSet;
-}
-
-ctx::MacSet ctx::macSetFromString(const std::string &str)
-{
-       MacSet macSet;
-       std::stringstream ss;
-       ss << str;
-       ss >> macSet;
-       return macSet;
-}
-
-bool ctx::operator>(const Mac &m1, const Mac &m2)
-{
-       return m2 < m1;
-}
-
-std::shared_ptr<ctx::MacSet> ctx::macSetFromMacs2Counts(const Macs2Counts &macs2Counts)
-{
-       std::shared_ptr<MacSet> macSet(std::make_shared<MacSet>());
-       for (auto &macCount: macs2Counts) {
-               macSet->insert(macCount.first);
-       }
-       return macSet;
-}
-
-std::shared_ptr<ctx::MacSet> ctx::macSetsUnion(const std::vector<std::shared_ptr<MacSet>> &macSets)
-{
-       std::shared_ptr<MacSet> unionSet = std::make_shared<MacSet>();
-       for (std::shared_ptr<MacSet> macSet : macSets) {
-               unionSet->insert(macSet->begin(), macSet->end());
-       }
-       return unionSet;
-}
-
-ctx::Interval::Interval(time_t start_, time_t end_) : start(start_), end(end_) {
-       if (end_ < start_)
-               _E("Negative interval, start=%d, end=%d", start_, end_);
-}
diff --git a/src/my-place/utils/UserPlacesTypes.h b/src/my-place/utils/UserPlacesTypes.h
deleted file mode 100644 (file)
index 7955080..0000000
+++ /dev/null
@@ -1,230 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef _CONTEXT_PLACE_RECOGNITION_USER_PLACES_TYPES_H_
-#define _CONTEXT_PLACE_RECOGNITION_USER_PLACES_TYPES_H_
-
-#include <memory>
-#include <vector>
-#include <map>
-#include <unordered_map>
-#include <unordered_set>
-#include <string>
-#include <ctime>
-#include <MyPlaceTypes.h>
-
-// Database
-#define VISIT_TABLE                            "Log_Myplace_Visit"
-#define VISIT_COLUMN_START_TIME                "start_time"
-#define VISIT_COLUMN_END_TIME                  "end_time"
-#define VISIT_COLUMN_WIFI_APS                  "wifi_aps"
-#define VISIT_COLUMN_CATEGORY                  "category"
-#define VISIT_COLUMN_LOCATION_VALID            "location_valid"
-#define VISIT_COLUMN_LOCATION_LATITUDE         "location_latitude"
-#define VISIT_COLUMN_LOCATION_LONGITUDE        "location_longitude"
-#define VISIT_COLUMN_LOCATION_ACCURACY         "location_accuracy"
-#define VISIT_COLUMN_CATEG_HOME                "categ_home"
-#define VISIT_COLUMN_CATEG_WORK                "categ_work"
-#define VISIT_COLUMN_CATEG_OTHER               "categ_other"
-
-#define WIFI_APS_MAP_TABLE                     "Log_Myplace_WifiAPsMap"
-#define WIFI_APS_MAP_COLUMN_MAC                "mac"
-#define WIFI_APS_MAP_COLUMN_NETWORK_NAME       "network_name"
-#define WIFI_APS_MAP_COLUMN_INSERT_TIME        "insert_time"
-
-#define PLACE_TABLE                            "Log_Myplace_Place"
-#define PLACE_COLUMN_CATEG_ID                  "categ_id"
-#define PLACE_COLUMN_CATEG_CONFIDENCE          "categ_confidence"
-#define PLACE_COLUMN_NAME                      "name"
-#define PLACE_COLUMN_LOCATION_VALID            "location_valid"
-#define PLACE_COLUMN_LOCATION_LATITUDE         "location_latitude"
-#define PLACE_COLUMN_LOCATION_LONGITUDE        "location_longitude"
-#define PLACE_COLUMN_LOCATION_ACCURACY         "location_accuracy"
-#define PLACE_COLUMN_WIFI_APS                  "wifi_aps"
-#define PLACE_COLUMN_CREATE_DATE               "create_date"
-
-#define WIFI_TABLE                             "Log_Myplace_Wifi"
-#define WIFI_COLUMN_TIMESTAMP                  "timestamp"
-#define WIFI_COLUMN_BSSID                      "bssid"
-#define WIFI_COLUMN_ESSID                      "essid"
-
-#define LOCATION_TABLE                         "Log_Myplace_Location"
-#define LOCATION_COLUMN_LATITUDE               "latitude"
-#define LOCATION_COLUMN_LONGITUDE              "longitude"
-#define LOCATION_COLUMN_ACCURACY               "accuracy"
-#define LOCATION_COLUMN_TIMESTAMP              "timestamp"
-
-#define MYPLACE_SETTINGS_TABLE                 "Myplace_Settings"
-#define MYPLACE_SETTINGS_COLUMN_KEY            "key"
-#define MYPLACE_SETTINGS_COLUMN_VALUE          "value"
-#define MYPLACE_SETTING_KEY_USER_CONSENT       PLACE_DETECTION_REQUEST_CONSENT
-
-enum PlaceRecogMode {
-       PLACE_RECOG_HIGH_ACCURACY_MODE = 0,
-       PLACE_RECOG_LOW_POWER_MODE = 1
-};
-
-namespace ctx {
-
-       /*
-        * type for numerical computations
-        */
-       typedef double num_t;
-
-       /*
-        * mac address
-        */
-       class Mac {
-
-       public:
-               const static size_t MAC_SIZE = 6;  // number of bytes for mac address.
-               unsigned char c[MAC_SIZE];
-
-               Mac() {};
-               Mac(const std::string &str);
-               Mac(const char *str);
-               operator std::string() const;
-
-       };      /* class Mac */
-
-       std::istream &operator>>(std::istream &input, ctx::Mac &mac);
-       std::ostream &operator<<(std::ostream &output, const ctx::Mac &mac);
-       bool operator==(const ctx::Mac &m1, const ctx::Mac &m2);
-       bool operator!=(const ctx::Mac &m1, const ctx::Mac &m2);
-       bool operator<(const ctx::Mac &m1, const ctx::Mac &m2);
-       bool operator>(const ctx::Mac &m1, const ctx::Mac &m2);
-
-}      /* namespace ctx */
-
-namespace std {
-
-       template <> struct hash<ctx::Mac> {
-               size_t operator()(const ctx::Mac & m) const {
-                       size_t h = 1;
-                       for (size_t i = 0; i < ctx::Mac::MAC_SIZE; i++) {
-                               h = h * 37 + m.c[i];
-                       }
-                       return h;
-               }
-       };
-
-}      /* namespace std */
-
-namespace ctx {
-
-       typedef float share_t;
-       typedef int count_t;
-
-       typedef std::unordered_map<ctx::Mac, ctx::count_t> Macs2Counts;
-       typedef std::unordered_map<ctx::Mac, ctx::share_t> Macs2Shares;
-
-       typedef std::unordered_set<ctx::Mac> MacSet;
-
-       std::istream &operator>>(std::istream &input, ctx::MacSet &macSet);
-       std::ostream &operator<<(std::ostream &output, const ctx::MacSet &macSet);
-       ctx::MacSet macSetFromString(const std::string &str);
-
-       std::shared_ptr<MacSet> macSetsUnion(const std::vector<std::shared_ptr<MacSet>> &macSets);
-
-       struct Interval {
-               time_t start;
-               time_t end;
-
-               Interval(time_t start, time_t end);
-       };
-
-}      /* namespace ctx */
-
-namespace std {
-
-       template <> struct hash<ctx::Interval> {
-               size_t operator()(const ctx::Interval & interval) const {
-                       return interval.end * interval.start;
-               }
-       };
-
-}      /* namespace std */
-
-namespace ctx {
-
-       /*
-        * fully describes interval data after the interval is finished
-        */
-       struct Frame {
-               Interval interval;
-               count_t numberOfTimestamps;
-               Macs2Counts macs2Counts;
-
-               Frame(Interval interval_) : interval(interval_), numberOfTimestamps(0) {};
-       };
-
-       /*
-        * mac address + its timestamp
-        */
-       struct MacEvent {
-               time_t timestamp;
-               Mac mac;
-               std::string networkName;
-
-               MacEvent(time_t timestamp_, Mac mac_, std::string networkName_ = "")
-                       : timestamp(timestamp_)
-                       , mac(mac_)
-                       , networkName(networkName_) {}
-       };
-
-       typedef std::map<int, num_t> Categs; // scores of categories
-
-       /*
-        * location + timestamp + method
-        */
-       struct LocationEvent {
-               Location coordinates;
-               time_t timestamp;
-
-               LocationEvent(double latitude_, double longitude_, double accuracy_, time_t timestamp_) :
-                       coordinates(latitude_, longitude_, accuracy_),
-                       timestamp(timestamp_) {}
-
-               void log();
-
-       };      /* struct LocationEvent */
-
-       struct Visit {
-               Interval interval;
-               std::shared_ptr<MacSet> macSet;
-               Categs categs;
-               bool locationValid;
-               Location location; // makes sense if locationValid == true;
-
-               Visit(Interval interval_, std::shared_ptr<MacSet> macSet_ = std::make_shared<MacSet>(), Categs categs_ = Categs()) :
-                       interval(interval_),
-                       macSet(macSet_),
-                       categs(categs_),
-                       locationValid(false) {}
-               void setLocation(Location location);
-               void printShort2Stream(std::ostream &out) const;
-
-       };      /* struct Visit */
-
-       bool operator==(const Visit &v1, const Visit &v2);
-       typedef std::vector<Visit> Visits;
-       typedef std::vector<MacEvent> MacEvents; // used to store current interval logs
-
-       std::shared_ptr<MacSet> macSetFromMacs2Counts(const Macs2Counts &macs2Counts);
-
-}      /* namespace ctx */
-
-#endif /* End of _CONTEXT_PLACE_RECOGNITION_USER_PLACES_TYPES_H_ */
diff --git a/src/my-place/visit-categer/CMakeLists.txt b/src/my-place/visit-categer/CMakeLists.txt
deleted file mode 100644 (file)
index f127d61..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-SET(target "${target_prefix}-my-place-visit-categer")
-
-INCLUDE_DIRECTORIES(../utils)
-
-FILE(GLOB SRCS *.cpp)
-
-ADD_LIBRARY(${target} SHARED ${SRCS})
-TARGET_LINK_LIBRARIES(${target} ${target_myplace_utils_static})
-
-INSTALL(TARGETS ${target} DESTINATION ${CMAKE_INSTALL_LIBDIR}/${target_dir})
\ No newline at end of file
diff --git a/src/my-place/visit-categer/Mahal.cpp b/src/my-place/visit-categer/Mahal.cpp
deleted file mode 100644 (file)
index 4e2a364..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include "Mahal.h"
-#include <math.h>
-#include <Types.h>
-
-ctx::num_t ctx::MahalModel::__distance(const std::vector<num_t> &v1, const std::vector<num_t> &v2, const std::vector<num_t> &m)
-{
-       size_t n = v1.size();
-       if (m.size() != n * n) {
-               _E("m.size() != n * n");
-               return 0.0; // this value does not make any sense
-       }
-
-       std::vector<num_t> diff(n);
-       for (size_t i = 0; i < n; i++) {
-               diff[i] = v2[i] - v1[i];
-       }
-
-       num_t dist2 = 0; // squared distance
-       for (size_t j = 0; j < n; j++) {
-               for (size_t i = 0; i < n; i++) {
-                       dist2 += m[i * n + j] * diff[i] * diff[j];
-               }
-       }
-       return sqrt(dist2);
-}
-
-ctx::num_t ctx::MahalModel::distance(const std::vector<ctx::num_t> &v)
-{
-       return __distance(v, __mean, __sigma);
-}
diff --git a/src/my-place/visit-categer/Mahal.h b/src/my-place/visit-categer/Mahal.h
deleted file mode 100644 (file)
index 26e6235..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef _CONTEXT_PLACE_RECOGNITION_MAHAL_H_
-#define _CONTEXT_PLACE_RECOGNITION_MAHAL_H_
-
-#include <vector>
-#include <UserPlacesTypes.h>
-
-namespace ctx {
-
-       /*
-        * Class for Mahalanobis distance computation.
-        */
-       class MahalModel {
-
-       private:
-               std::vector<num_t> __mean;
-               std::vector<num_t> __sigma; // represents square matrix row-wise
-               static num_t __distance(const std::vector<num_t> &v1, const std::vector<num_t> &v2, const std::vector<num_t> &m);
-
-       public:
-               MahalModel(std::vector<num_t> mean, std::vector<num_t> sigma) :
-                       __mean(mean),
-                       __sigma(sigma) { }
-               num_t distance(const std::vector<num_t> &v);
-
-       };      /* class MahalModel */
-
-}      /* namespace ctx */
-
-#endif /* End of _CONTEXT_PLACE_RECOGNITION_MAHAL_H_ */
diff --git a/src/my-place/visit-categer/PiecewiseLin.cpp b/src/my-place/visit-categer/PiecewiseLin.cpp
deleted file mode 100644 (file)
index fab52c0..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include "PiecewiseLin.h"
-#include <Types.h>
-
-ctx::PiecewiseLin::PiecewiseLin(std::vector<num_t> xs, std::vector<num_t> vs) :
-       __xs(xs),
-       __vs(vs),
-       __n(xs.size())
-{
-       if (xs.size() != vs.size()) {
-               _E("Input arguments have different sizes");
-               return;
-       }
-}
-
-ctx::num_t ctx::PiecewiseLin::value(num_t x)
-{
-       if (x <= __xs[0]) {
-               return __vs[0];
-       } else if (x >= __xs[__n-1]) {
-               return __vs[__n - 1];
-       } else {
-               num_t xp = __xs[0];
-               for (size_t i = 1; i < __n; i++) {
-                       num_t xn = __xs[i];
-                       if (x <= xn) {
-                               num_t d = xn - xp;
-                               num_t dxp = x - xp;
-                               num_t dxn = xn - x;
-                               return (dxn * __vs[i-1] + dxp * __vs[i]) / d;
-                       }
-                       xp = xn;
-               }
-       }
-       _E("Function should return result earlier");
-       return 0.0; // this value does not make any sense
-}
diff --git a/src/my-place/visit-categer/PiecewiseLin.h b/src/my-place/visit-categer/PiecewiseLin.h
deleted file mode 100644 (file)
index 4ff497b..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef _CONTEXT_PLACE_RECOGNITION_PIECEWISE_LIN_
-#define _CONTEXT_PLACE_RECOGNITION_PIECEWISE_LIN_
-
-#include <UserPlacesTypes.h>
-
-namespace ctx {
-
-       /*
-        * Piecewise linear function. Used for approximation.
-        */
-       class PiecewiseLin {
-
-       private:
-               std::vector<num_t> __xs; // nodes
-               std::vector<num_t> __vs; // values in nodes
-               size_t __n;
-
-       public:
-               PiecewiseLin(std::vector<num_t> xs, std::vector<num_t> vs);
-               num_t value(num_t x);
-
-       };      /* PiecewiseLin */
-
-}      /* namespace ctx */
-
-#endif /* End of _CONTEXT_PLACE_RECOGNITION_PIECEWISE_LIN_ */
diff --git a/src/my-place/visit-categer/ProbFeaturesModel.h b/src/my-place/visit-categer/ProbFeaturesModel.h
deleted file mode 100644 (file)
index 141125c..0000000
+++ /dev/null
@@ -1,30291 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef _CONTEXT_PLACE_RECOGNITION_FEATURES_MODEL_H_
-#define _CONTEXT_PLACE_RECOGNITION_FEATURES_MODEL_H_
-
-namespace ctx {
-
-namespace prob_features {
-
-       /*
-        * Probabilities for whole week <monday Ã· sunday> with minutes resolution
-        * from beginning of the week (sunday -> monday midnight) <0, 10080).
-        * Key is PlaceCategId:
-        *     PLACE_CATEG_ID_HOME
-        *     PLACE_CATEG_ID_WORK
-        *     PLACE_CATEG_ID_OTHER
-        */
-       std::map<PlaceCategId, std::vector<num_t>> weekModel {
-               { PLACE_CATEG_ID_HOME,
-                       {
-                               0.9824561403508770,
-                               0.9824561403508770,
-                               0.9824561403508770,
-                               0.9824561403508770,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9833333333333330,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9830508474576270,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9827586206896550,
-                               0.9824561403508770,
-                               0.9824561403508770,
-                               0.9824561403508770,
-                               0.9824561403508770,
-                               0.9824561403508770,
-                               0.9824561403508770,
-                               0.9824561403508770,
-                               0.9824561403508770,
-                               0.9824561403508770,
-                               0.9824561403508770,
-                               0.9824561403508770,
-                               0.9824561403508770,
-                               0.9824561403508770,
-                               0.9824561403508770,
-                               0.9824561403508770,
-                               0.9824561403508770,
-                               0.9824561403508770,
-                               0.9824561403508770,
-                               0.9824561403508770,
-                               0.9824561403508770,
-                               0.9824561403508770,
-                               0.9821428571428570,
-                               0.9821428571428570,
-                               0.9821428571428570,
-                               0.9824561403508770,
-                               0.9824561403508770,
-                               0.9824561403508770,
-                               0.9824561403508770,
-                               0.9824561403508770,
-                               0.9824561403508770,
-                               0.9824561403508770,
-                               0.9821428571428570,
-                               0.9821428571428570,
-                               0.9821428571428570,
-                               0.9821428571428570,
-                               0.9821428571428570,
-                               0.9649122807017540,
-                               0.9649122807017540,
-                               0.9649122807017540,
-                               0.9649122807017540,
-                               0.9649122807017540,
-                               0.9649122807017540,
-                               0.9649122807017540,
-                               0.9636363636363640,
-                               0.9636363636363640,
-                               0.9642857142857140,
-                               0.9642857142857140,
-                               0.9642857142857140,
-                               0.9642857142857140,
-                               0.9629629629629630,
-                               0.9629629629629630,
-                               0.9629629629629630,
-                               0.9629629629629630,
-                               0.9629629629629630,
-                               0.9629629629629630,
-                               0.9454545454545450,
-                               0.9454545454545450,
-                               0.9285714285714290,
-                               0.9285714285714290,
-                               0.9285714285714290,
-                               0.9122807017543860,
-                               0.9122807017543860,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9074074074074070,
-                               0.9074074074074070,
-                               0.9074074074074070,
-                               0.9074074074074070,
-                               0.9074074074074070,
-                               0.9074074074074070,
-                               0.9074074074074070,
-                               0.9074074074074070,
-                               0.9245283018867930,
-                               0.9074074074074070,
-                               0.9074074074074070,
-                               0.9074074074074070,
-                               0.9038461538461540,
-                               0.9038461538461540,
-                               0.9038461538461540,
-                               0.9038461538461540,
-                               0.9215686274509800,
-                               0.9215686274509800,
-                               0.9038461538461540,
-                               0.9038461538461540,
-                               0.9038461538461540,
-                               0.8823529411764710,
-                               0.8823529411764710,
-                               0.8823529411764710,
-                               0.8653846153846150,
-                               0.8653846153846150,
-                               0.8653846153846150,
-                               0.8653846153846150,
-                               0.8653846153846150,
-                               0.8653846153846150,
-                               0.8653846153846150,
-                               0.8653846153846150,
-                               0.8653846153846150,
-                               0.8490566037735850,
-                               0.8490566037735850,
-                               0.8490566037735850,
-                               0.8490566037735850,
-                               0.8461538461538460,
-                               0.8461538461538460,
-                               0.8461538461538460,
-                               0.8461538461538460,
-                               0.8461538461538460,
-                               0.8461538461538460,
-                               0.8461538461538460,
-                               0.8148148148148150,
-                               0.8148148148148150,
-                               0.8148148148148150,
-                               0.8148148148148150,
-                               0.8148148148148150,
-                               0.8113207547169810,
-                               0.7962962962962960,
-                               0.7962962962962960,
-                               0.7962962962962960,
-                               0.7924528301886790,
-                               0.7924528301886790,
-                               0.7924528301886790,
-                               0.7735849056603770,
-                               0.7735849056603770,
-                               0.7735849056603770,
-                               0.7735849056603770,
-                               0.7735849056603770,
-                               0.7735849056603770,
-                               0.7735849056603770,
-                               0.7735849056603770,
-                               0.7735849056603770,
-                               0.7735849056603770,
-                               0.7735849056603770,
-                               0.7692307692307690,
-                               0.7547169811320760,
-                               0.7547169811320760,
-                               0.7547169811320760,
-                               0.7547169811320760,
-                               0.7547169811320760,
-                               0.7272727272727270,
-                               0.7272727272727270,
-                               0.7272727272727270,
-                               0.7272727272727270,
-                               0.7272727272727270,
-                               0.7272727272727270,
-                               0.7169811320754720,
-                               0.7169811320754720,
-                               0.7169811320754720,
-                               0.7115384615384620,
-                               0.7000000000000000,
-                               0.7000000000000000,
-                               0.6875000000000000,
-                               0.6808510638297870,
-                               0.6808510638297870,
-                               0.6808510638297870,
-                               0.6808510638297870,
-                               0.6666666666666670,
-                               0.6400000000000000,
-                               0.6274509803921570,
-                               0.6153846153846150,
-                               0.6153846153846150,
-                               0.6153846153846150,
-                               0.6153846153846150,
-                               0.6078431372549020,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.5882352941176470,
-                               0.5882352941176470,
-                               0.5882352941176470,
-                               0.5882352941176470,
-                               0.5882352941176470,
-                               0.5769230769230770,
-                               0.5769230769230770,
-                               0.5600000000000000,
-                               0.5490196078431370,
-                               0.5208333333333330,
-                               0.5208333333333330,
-                               0.5208333333333330,
-                               0.5208333333333330,
-                               0.5208333333333330,
-                               0.5102040816326530,
-                               0.4893617021276600,
-                               0.4893617021276600,
-                               0.4893617021276600,
-                               0.4893617021276600,
-                               0.4444444444444440,
-                               0.4347826086956520,
-                               0.4347826086956520,
-                               0.4347826086956520,
-                               0.4347826086956520,
-                               0.4347826086956520,
-                               0.4347826086956520,
-                               0.4255319148936170,
-                               0.4130434782608700,
-                               0.4130434782608700,
-                               0.3913043478260870,
-                               0.3913043478260870,
-                               0.3913043478260870,
-                               0.3913043478260870,
-                               0.3777777777777780,
-                               0.3777777777777780,
-                               0.3777777777777780,
-                               0.3478260869565220,
-                               0.3478260869565220,
-                               0.3478260869565220,
-                               0.3478260869565220,
-                               0.3478260869565220,
-                               0.3181818181818180,
-                               0.3181818181818180,
-                               0.3181818181818180,
-                               0.3181818181818180,
-                               0.3111111111111110,
-                               0.3111111111111110,
-                               0.2790697674418600,
-                               0.2727272727272730,
-                               0.2727272727272730,
-                               0.2727272727272730,
-                               0.2666666666666670,
-                               0.2666666666666670,
-                               0.2666666666666670,
-                               0.2500000000000000,
-                               0.2500000000000000,
-                               0.2500000000000000,
-                               0.2244897959183670,
-                               0.2244897959183670,
-                               0.2200000000000000,
-                               0.2156862745098040,
-                               0.2156862745098040,
-                               0.2156862745098040,
-                               0.2075471698113210,
-                               0.2075471698113210,
-                               0.1923076923076920,
-                               0.1923076923076920,
-                               0.1886792452830190,
-                               0.1886792452830190,
-                               0.1886792452830190,
-                               0.1886792452830190,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1481481481481480,
-                               0.1481481481481480,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1379310344827590,
-                               0.1379310344827590,
-                               0.1186440677966100,
-                               0.1186440677966100,
-                               0.1186440677966100,
-                               0.1186440677966100,
-                               0.1186440677966100,
-                               0.1186440677966100,
-                               0.1186440677966100,
-                               0.1186440677966100,
-                               0.1034482758620690,
-                               0.1034482758620690,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0666666666666667,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0666666666666667,
-                               0.0677966101694915,
-                               0.0666666666666667,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0819672131147541,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0847457627118644,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0847457627118644,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0819672131147541,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0689655172413793,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.1034482758620690,
-                               0.1034482758620690,
-                               0.1034482758620690,
-                               0.1052631578947370,
-                               0.1052631578947370,
-                               0.1052631578947370,
-                               0.1071428571428570,
-                               0.1071428571428570,
-                               0.1071428571428570,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1090909090909090,
-                               0.1111111111111110,
-                               0.1090909090909090,
-                               0.1111111111111110,
-                               0.1132075471698110,
-                               0.1153846153846150,
-                               0.1153846153846150,
-                               0.1153846153846150,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1346153846153850,
-                               0.1509433962264150,
-                               0.1509433962264150,
-                               0.1509433962264150,
-                               0.1481481481481480,
-                               0.1636363636363640,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1578947368421050,
-                               0.1724137931034480,
-                               0.1724137931034480,
-                               0.1754385964912280,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1818181818181820,
-                               0.1851851851851850,
-                               0.1851851851851850,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.1785714285714290,
-                               0.1851851851851850,
-                               0.1851851851851850,
-                               0.1818181818181820,
-                               0.1964285714285710,
-                               0.1818181818181820,
-                               0.1818181818181820,
-                               0.1964285714285710,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.2105263157894740,
-                               0.2142857142857140,
-                               0.2321428571428570,
-                               0.2280701754385960,
-                               0.2280701754385960,
-                               0.2321428571428570,
-                               0.2321428571428570,
-                               0.2500000000000000,
-                               0.2545454545454540,
-                               0.2545454545454540,
-                               0.2545454545454540,
-                               0.2545454545454540,
-                               0.2500000000000000,
-                               0.2500000000000000,
-                               0.2545454545454540,
-                               0.2545454545454540,
-                               0.2545454545454540,
-                               0.2545454545454540,
-                               0.2545454545454540,
-                               0.2592592592592590,
-                               0.2545454545454540,
-                               0.2545454545454540,
-                               0.2592592592592590,
-                               0.2592592592592590,
-                               0.2592592592592590,
-                               0.2777777777777780,
-                               0.2777777777777780,
-                               0.2641509433962260,
-                               0.2692307692307690,
-                               0.2692307692307690,
-                               0.2745098039215690,
-                               0.2830188679245280,
-                               0.2884615384615380,
-                               0.2941176470588230,
-                               0.2941176470588230,
-                               0.2941176470588230,
-                               0.2884615384615380,
-                               0.2941176470588230,
-                               0.2884615384615380,
-                               0.2884615384615380,
-                               0.3000000000000000,
-                               0.3061224489795920,
-                               0.3061224489795920,
-                               0.3061224489795920,
-                               0.3061224489795920,
-                               0.3000000000000000,
-                               0.3061224489795920,
-                               0.3061224489795920,
-                               0.3061224489795920,
-                               0.3265306122448980,
-                               0.3265306122448980,
-                               0.3200000000000000,
-                               0.3404255319148940,
-                               0.3404255319148940,
-                               0.3404255319148940,
-                               0.3404255319148940,
-                               0.3404255319148940,
-                               0.3404255319148940,
-                               0.3478260869565220,
-                               0.3695652173913040,
-                               0.3695652173913040,
-                               0.3695652173913040,
-                               0.4130434782608700,
-                               0.4130434782608700,
-                               0.4255319148936170,
-                               0.4255319148936170,
-                               0.4255319148936170,
-                               0.4489795918367350,
-                               0.4888888888888890,
-                               0.5000000000000000,
-                               0.5000000000000000,
-                               0.5000000000000000,
-                               0.5000000000000000,
-                               0.5116279069767440,
-                               0.5116279069767440,
-                               0.5116279069767440,
-                               0.5238095238095240,
-                               0.5238095238095240,
-                               0.5365853658536590,
-                               0.5365853658536590,
-                               0.5348837209302320,
-                               0.5348837209302320,
-                               0.5227272727272730,
-                               0.5348837209302320,
-                               0.5348837209302320,
-                               0.5348837209302320,
-                               0.5227272727272730,
-                               0.5227272727272730,
-                               0.5000000000000000,
-                               0.5000000000000000,
-                               0.5111111111111110,
-                               0.5111111111111110,
-                               0.5227272727272730,
-                               0.5227272727272730,
-                               0.4893617021276600,
-                               0.5000000000000000,
-                               0.5102040816326530,
-                               0.5102040816326530,
-                               0.5200000000000000,
-                               0.5306122448979590,
-                               0.5200000000000000,
-                               0.5294117647058820,
-                               0.5294117647058820,
-                               0.5294117647058820,
-                               0.5192307692307690,
-                               0.5094339622641510,
-                               0.5094339622641510,
-                               0.5094339622641510,
-                               0.5294117647058820,
-                               0.5384615384615380,
-                               0.5471698113207550,
-                               0.5471698113207550,
-                               0.5471698113207550,
-                               0.5555555555555560,
-                               0.5555555555555560,
-                               0.5555555555555560,
-                               0.5636363636363640,
-                               0.5535714285714290,
-                               0.5535714285714290,
-                               0.5535714285714290,
-                               0.5636363636363640,
-                               0.5714285714285710,
-                               0.5892857142857140,
-                               0.5892857142857140,
-                               0.5892857142857140,
-                               0.5892857142857140,
-                               0.5892857142857140,
-                               0.5892857142857140,
-                               0.5892857142857140,
-                               0.5892857142857140,
-                               0.5925925925925930,
-                               0.5925925925925930,
-                               0.5925925925925930,
-                               0.5925925925925930,
-                               0.5818181818181820,
-                               0.5925925925925930,
-                               0.6808510638297870,
-                               0.6808510638297870,
-                               0.6808510638297870,
-                               0.6808510638297870,
-                               0.6956521739130430,
-                               0.7111111111111110,
-                               0.7111111111111110,
-                               0.7111111111111110,
-                               0.7272727272727270,
-                               0.7272727272727270,
-                               0.7333333333333330,
-                               0.7333333333333330,
-                               0.7333333333333330,
-                               0.7333333333333330,
-                               0.7608695652173910,
-                               0.7608695652173910,
-                               0.7608695652173910,
-                               0.7826086956521740,
-                               0.7826086956521740,
-                               0.7826086956521740,
-                               0.7872340425531920,
-                               0.7872340425531920,
-                               0.7872340425531920,
-                               0.7708333333333330,
-                               0.7400000000000000,
-                               0.7400000000000000,
-                               0.7551020408163260,
-                               0.7500000000000000,
-                               0.7500000000000000,
-                               0.7500000000000000,
-                               0.7200000000000000,
-                               0.7200000000000000,
-                               0.7200000000000000,
-                               0.7058823529411760,
-                               0.7058823529411760,
-                               0.7115384615384620,
-                               0.7115384615384620,
-                               0.7115384615384620,
-                               0.7169811320754720,
-                               0.7169811320754720,
-                               0.7307692307692310,
-                               0.7307692307692310,
-                               0.7450980392156860,
-                               0.7450980392156860,
-                               0.7450980392156860,
-                               0.7450980392156860,
-                               0.7600000000000000,
-                               0.7600000000000000,
-                               0.7647058823529410,
-                               0.7647058823529410,
-                               0.7500000000000000,
-                               0.7500000000000000,
-                               0.7800000000000000,
-                               0.7800000000000000,
-                               0.7692307692307690,
-                               0.7647058823529410,
-                               0.7647058823529410,
-                               0.7800000000000000,
-                               0.8125000000000000,
-                               0.8125000000000000,
-                               0.8200000000000000,
-                               0.8200000000000000,
-                               0.8039215686274510,
-                               0.8039215686274510,
-                               0.8039215686274510,
-                               0.8039215686274510,
-                               0.8235294117647060,
-                               0.8076923076923080,
-                               0.7924528301886790,
-                               0.7924528301886790,
-                               0.7924528301886790,
-                               0.7884615384615380,
-                               0.8076923076923080,
-                               0.8076923076923080,
-                               0.8076923076923080,
-                               0.8113207547169810,
-                               0.8113207547169810,
-                               0.8148148148148150,
-                               0.8181818181818180,
-                               0.8181818181818180,
-                               0.8181818181818180,
-                               0.8148148148148150,
-                               0.8181818181818180,
-                               0.8181818181818180,
-                               0.8181818181818180,
-                               0.8181818181818180,
-                               0.8333333333333330,
-                               0.8518518518518520,
-                               0.8545454545454550,
-                               0.8545454545454550,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8596491228070170,
-                               0.8596491228070170,
-                               0.8524590163934430,
-                               0.8524590163934430,
-                               0.8524590163934430,
-                               0.8500000000000000,
-                               0.8500000000000000,
-                               0.8500000000000000,
-                               0.8500000000000000,
-                               0.8500000000000000,
-                               0.8644067796610170,
-                               0.8644067796610170,
-                               0.8644067796610170,
-                               0.8644067796610170,
-                               0.8644067796610170,
-                               0.8644067796610170,
-                               0.8644067796610170,
-                               0.8500000000000000,
-                               0.8500000000000000,
-                               0.8644067796610170,
-                               0.8644067796610170,
-                               0.8644067796610170,
-                               0.8644067796610170,
-                               0.8793103448275860,
-                               0.8771929824561400,
-                               0.8771929824561400,
-                               0.8771929824561400,
-                               0.8771929824561400,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8771929824561400,
-                               0.8793103448275860,
-                               0.8813559322033900,
-                               0.8813559322033900,
-                               0.8965517241379310,
-                               0.8965517241379310,
-                               0.8965517241379310,
-                               0.8965517241379310,
-                               0.8965517241379310,
-                               0.8965517241379310,
-                               0.8983050847457630,
-                               0.8983050847457630,
-                               0.8983050847457630,
-                               0.8833333333333330,
-                               0.8833333333333330,
-                               0.8833333333333330,
-                               0.8833333333333330,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8709677419354840,
-                               0.8709677419354840,
-                               0.8709677419354840,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8793103448275860,
-                               0.8813559322033900,
-                               0.8813559322033900,
-                               0.8813559322033900,
-                               0.8813559322033900,
-                               0.8813559322033900,
-                               0.8813559322033900,
-                               0.8813559322033900,
-                               0.8813559322033900,
-                               0.8983050847457630,
-                               0.8983050847457630,
-                               0.8983050847457630,
-                               0.9000000000000000,
-                               0.9152542372881350,
-                               0.9152542372881350,
-                               0.9152542372881350,
-                               0.9152542372881350,
-                               0.9152542372881350,
-                               0.9137931034482760,
-                               0.9137931034482760,
-                               0.9137931034482760,
-                               0.9137931034482760,
-                               0.9137931034482760,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9016393442622950,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9062500000000000,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9062500000000000,
-                               0.9062500000000000,
-                               0.9062500000000000,
-                               0.9062500000000000,
-                               0.9062500000000000,
-                               0.9062500000000000,
-                               0.9062500000000000,
-                               0.9062500000000000,
-                               0.9062500000000000,
-                               0.9062500000000000,
-                               0.9062500000000000,
-                               0.9062500000000000,
-                               0.9062500000000000,
-                               0.9062500000000000,
-                               0.9206349206349210,
-                               0.9206349206349210,
-                               0.9206349206349210,
-                               0.9206349206349210,
-                               0.9206349206349210,
-                               0.9354838709677420,
-                               0.9354838709677420,
-                               0.9354838709677420,
-                               0.9508196721311470,
-                               0.9508196721311470,
-                               0.9508196721311470,
-                               0.9508196721311470,
-                               0.9516129032258060,
-                               0.9516129032258060,
-                               0.9523809523809520,
-                               0.9523809523809520,
-                               0.9531250000000000,
-                               0.9531250000000000,
-                               0.9531250000000000,
-                               0.9531250000000000,
-                               0.9531250000000000,
-                               0.9531250000000000,
-                               0.9531250000000000,
-                               0.9531250000000000,
-                               0.9531250000000000,
-                               0.9531250000000000,
-                               0.9531250000000000,
-                               0.9523809523809520,
-                               0.9523809523809520,
-                               0.9523809523809520,
-                               0.9523809523809520,
-                               0.9523809523809520,
-                               0.9523809523809520,
-                               0.9523809523809520,
-                               0.9677419354838710,
-                               0.9677419354838710,
-                               0.9677419354838710,
-                               0.9677419354838710,
-                               0.9677419354838710,
-                               0.9677419354838710,
-                               0.9677419354838710,
-                               0.9677419354838710,
-                               0.9677419354838710,
-                               0.9677419354838710,
-                               0.9677419354838710,
-                               0.9677419354838710,
-                               0.9677419354838710,
-                               0.9677419354838710,
-                               0.9677419354838710,
-                               0.9677419354838710,
-                               0.9677419354838710,
-                               0.9677419354838710,
-                               0.9682539682539680,
-                               0.9682539682539680,
-                               0.9682539682539680,
-                               0.9838709677419350,
-                               0.9838709677419350,
-                               0.9838709677419350,
-                               0.9838709677419350,
-                               0.9838709677419350,
-                               0.9838709677419350,
-                               0.9838709677419350,
-                               0.9838709677419350,
-                               0.9836065573770490,
-                               0.9836065573770490,
-                               0.9836065573770490,
-                               0.9836065573770490,
-                               0.9838709677419350,
-                               0.9838709677419350,
-                               0.9838709677419350,
-                               0.9838709677419350,
-                               0.9838709677419350,
-                               0.9838709677419350,
-                               0.9838709677419350,
-                               0.9838709677419350,
-                               0.9838709677419350,
-                               0.9838709677419350,
-                               0.9838709677419350,
-                               0.9838709677419350,
-                               0.9838709677419350,
-                               0.9838709677419350,
-                               0.9841269841269840,
-                               0.9841269841269840,
-                               0.9841269841269840,
-                               0.9841269841269840,
-                               0.9841269841269840,
-                               0.9841269841269840,
-                               0.9843750000000000,
-                               0.9843750000000000,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9848484848484850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9846153846153850,
-                               0.9843750000000000,
-                               0.9843750000000000,
-                               0.9843750000000000,
-                               0.9843750000000000,
-                               0.9843750000000000,
-                               0.9843750000000000,
-                               0.9843750000000000,
-                               0.9843750000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                                       1.0000000000000000,
-                               0.9661016949152540,
-                               0.9642857142857140,
-                               0.9642857142857140,
-                               0.9642857142857140,
-                               0.9642857142857140,
-                               0.9642857142857140,
-                               0.9642857142857140,
-                               0.9473684210526320,
-                               0.9473684210526320,
-                               0.9473684210526320,
-                               0.9473684210526320,
-                               0.9473684210526320,
-                               0.9473684210526320,
-                               0.9473684210526320,
-                               0.9473684210526320,
-                               0.9473684210526320,
-                               0.9473684210526320,
-                               0.9298245614035090,
-                               0.9298245614035090,
-                               0.9298245614035090,
-                               0.9298245614035090,
-                               0.9298245614035090,
-                               0.9298245614035090,
-                               0.9298245614035090,
-                               0.9137931034482760,
-                               0.9122807017543860,
-                               0.9122807017543860,
-                               0.9122807017543860,
-                               0.9122807017543860,
-                               0.9107142857142860,
-                               0.9272727272727270,
-                               0.9107142857142860,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.8947368421052630,
-                               0.9107142857142860,
-                               0.9107142857142860,
-                               0.9107142857142860,
-                               0.9107142857142860,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8727272727272730,
-                               0.8888888888888890,
-                               0.8679245283018870,
-                               0.8679245283018870,
-                               0.8679245283018870,
-                               0.8490566037735850,
-                               0.8490566037735850,
-                               0.8333333333333330,
-                               0.8333333333333330,
-                               0.8333333333333330,
-                               0.8333333333333330,
-                               0.8301886792452830,
-                               0.8301886792452830,
-                               0.8301886792452830,
-                               0.8301886792452830,
-                               0.8301886792452830,
-                               0.8301886792452830,
-                               0.8000000000000000,
-                               0.7962962962962960,
-                               0.7962962962962960,
-                               0.7962962962962960,
-                               0.7962962962962960,
-                               0.7962962962962960,
-                               0.7818181818181820,
-                               0.7777777777777780,
-                               0.7454545454545450,
-                               0.7454545454545450,
-                               0.7407407407407410,
-                               0.7407407407407410,
-                               0.7358490566037730,
-                               0.7358490566037730,
-                               0.7358490566037730,
-                               0.7307692307692310,
-                               0.7254901960784310,
-                               0.7254901960784310,
-                               0.7254901960784310,
-                               0.7254901960784310,
-                               0.7058823529411760,
-                               0.7000000000000000,
-                               0.7000000000000000,
-                               0.7000000000000000,
-                               0.6800000000000000,
-                               0.6800000000000000,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6600000000000000,
-                               0.6600000000000000,
-                               0.6600000000000000,
-                               0.6470588235294120,
-                               0.6346153846153850,
-                               0.6037735849056600,
-                               0.6037735849056600,
-                               0.5961538461538460,
-                               0.5769230769230770,
-                               0.5576923076923080,
-                               0.5576923076923080,
-                               0.5576923076923080,
-                               0.5471698113207550,
-                               0.5471698113207550,
-                               0.5471698113207550,
-                               0.5471698113207550,
-                               0.5471698113207550,
-                               0.5471698113207550,
-                               0.5294117647058820,
-                               0.5294117647058820,
-                               0.5294117647058820,
-                               0.5294117647058820,
-                               0.5200000000000000,
-                               0.5098039215686270,
-                               0.5098039215686270,
-                               0.5098039215686270,
-                               0.5098039215686270,
-                               0.5098039215686270,
-                               0.5098039215686270,
-                               0.5098039215686270,
-                               0.5200000000000000,
-                               0.5200000000000000,
-                               0.5200000000000000,
-                               0.5200000000000000,
-                               0.5200000000000000,
-                               0.5200000000000000,
-                               0.5098039215686270,
-                               0.5098039215686270,
-                               0.5098039215686270,
-                               0.5098039215686270,
-                               0.5098039215686270,
-                               0.5000000000000000,
-                               0.4814814814814810,
-                               0.4814814814814810,
-                               0.4814814814814810,
-                               0.4814814814814810,
-                               0.4509803921568630,
-                               0.4600000000000000,
-                               0.4285714285714290,
-                               0.4285714285714290,
-                               0.4285714285714290,
-                               0.4285714285714290,
-                               0.3958333333333330,
-                               0.3958333333333330,
-                               0.3617021276595740,
-                               0.3617021276595740,
-                               0.3617021276595740,
-                               0.3617021276595740,
-                               0.3617021276595740,
-                               0.3541666666666670,
-                               0.3333333333333330,
-                               0.3265306122448980,
-                               0.3265306122448980,
-                               0.3061224489795920,
-                               0.3000000000000000,
-                               0.2941176470588230,
-                               0.2941176470588230,
-                               0.2800000000000000,
-                               0.2800000000000000,
-                               0.2800000000000000,
-                               0.2340425531914890,
-                               0.2340425531914890,
-                               0.2391304347826090,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2045454545454550,
-                               0.1956521739130430,
-                               0.1914893617021280,
-                               0.1875000000000000,
-                               0.1632653061224490,
-                               0.1632653061224490,
-                               0.1600000000000000,
-                               0.1568627450980390,
-                               0.1568627450980390,
-                               0.1568627450980390,
-                               0.1568627450980390,
-                               0.1568627450980390,
-                               0.1481481481481480,
-                               0.1481481481481480,
-                               0.1481481481481480,
-                               0.1481481481481480,
-                               0.1403508771929820,
-                               0.1403508771929820,
-                               0.1379310344827590,
-                               0.1379310344827590,
-                               0.1379310344827590,
-                               0.1379310344827590,
-                               0.1166666666666670,
-                               0.1166666666666670,
-                               0.1166666666666670,
-                               0.1166666666666670,
-                               0.1166666666666670,
-                               0.1166666666666670,
-                               0.1147540983606560,
-                               0.1147540983606560,
-                               0.1129032258064520,
-                               0.1129032258064520,
-                               0.1129032258064520,
-                               0.1129032258064520,
-                               0.1129032258064520,
-                               0.1129032258064520,
-                               0.1129032258064520,
-                               0.1129032258064520,
-                               0.1129032258064520,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.1093750000000000,
-                               0.0952380952380952,
-                               0.0952380952380952,
-                               0.0952380952380952,
-                               0.0937500000000000,
-                               0.0937500000000000,
-                               0.0937500000000000,
-                               0.0923076923076923,
-                               0.0923076923076923,
-                               0.0923076923076923,
-                               0.0923076923076923,
-                               0.0923076923076923,
-                               0.0923076923076923,
-                               0.0923076923076923,
-                               0.0923076923076923,
-                               0.0923076923076923,
-                               0.0923076923076923,
-                               0.0923076923076923,
-                               0.0923076923076923,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0781250000000000,
-                               0.0781250000000000,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0666666666666667,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0500000000000000,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0483870967741936,
-                               0.0476190476190476,
-                               0.0468750000000000,
-                               0.0468750000000000,
-                               0.0468750000000000,
-                               0.0468750000000000,
-                               0.0468750000000000,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0468750000000000,
-                               0.0476190476190476,
-                               0.0468750000000000,
-                               0.0468750000000000,
-                               0.0468750000000000,
-                               0.0468750000000000,
-                               0.0468750000000000,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0476190476190476,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0333333333333333,
-                               0.0344827586206897,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0357142857142857,
-                               0.0363636363636364,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0363636363636364,
-                               0.0370370370370370,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0333333333333333,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0350877192982456,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0350877192982456,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0344827586206897,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0327868852459016,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0327868852459016,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0338983050847458,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0303030303030303,
-                               0.0303030303030303,
-                               0.0303030303030303,
-                               0.0303030303030303,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0322580645161290,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0322580645161290,
-                               0.0317460317460317,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0937500000000000,
-                               0.0952380952380952,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.1000000000000000,
-                               0.1147540983606560,
-                               0.1147540983606560,
-                               0.1290322580645160,
-                               0.1290322580645160,
-                               0.1290322580645160,
-                               0.1290322580645160,
-                               0.1311475409836070,
-                               0.1333333333333330,
-                               0.1355932203389830,
-                               0.1355932203389830,
-                               0.1333333333333330,
-                               0.1333333333333330,
-                               0.1290322580645160,
-                               0.1269841269841270,
-                               0.1406250000000000,
-                               0.1538461538461540,
-                               0.1538461538461540,
-                               0.1538461538461540,
-                               0.1538461538461540,
-                               0.1562500000000000,
-                               0.1538461538461540,
-                               0.1538461538461540,
-                               0.1538461538461540,
-                               0.1538461538461540,
-                               0.1562500000000000,
-                               0.1562500000000000,
-                               0.1587301587301590,
-                               0.1587301587301590,
-                               0.1587301587301590,
-                               0.1587301587301590,
-                               0.1587301587301590,
-                               0.1562500000000000,
-                               0.1562500000000000,
-                               0.1562500000000000,
-                               0.1562500000000000,
-                               0.1562500000000000,
-                               0.1718750000000000,
-                               0.1718750000000000,
-                               0.1718750000000000,
-                               0.1718750000000000,
-                               0.1718750000000000,
-                               0.1718750000000000,
-                               0.1718750000000000,
-                               0.1846153846153850,
-                               0.1875000000000000,
-                               0.1875000000000000,
-                               0.1875000000000000,
-                               0.1846153846153850,
-                               0.1846153846153850,
-                               0.1846153846153850,
-                               0.1904761904761900,
-                               0.1774193548387100,
-                               0.1803278688524590,
-                               0.1803278688524590,
-                               0.1803278688524590,
-                               0.1864406779661020,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1929824561403510,
-                               0.2000000000000000,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.2000000000000000,
-                               0.2037037037037040,
-                               0.2037037037037040,
-                               0.2037037037037040,
-                               0.2115384615384620,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2181818181818180,
-                               0.2181818181818180,
-                               0.2142857142857140,
-                               0.2142857142857140,
-                               0.2142857142857140,
-                               0.2241379310344830,
-                               0.2241379310344830,
-                               0.2280701754385960,
-                               0.2321428571428570,
-                               0.2363636363636360,
-                               0.2321428571428570,
-                               0.2321428571428570,
-                               0.2321428571428570,
-                               0.2321428571428570,
-                               0.2407407407407410,
-                               0.2592592592592590,
-                               0.2745098039215690,
-                               0.2745098039215690,
-                               0.2884615384615380,
-                               0.3000000000000000,
-                               0.3265306122448980,
-                               0.3265306122448980,
-                               0.3400000000000000,
-                               0.3400000000000000,
-                               0.3400000000000000,
-                               0.3400000000000000,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3469387755102040,
-                               0.3469387755102040,
-                               0.3469387755102040,
-                               0.3541666666666670,
-                               0.3541666666666670,
-                               0.3400000000000000,
-                               0.3469387755102040,
-                               0.3469387755102040,
-                               0.3469387755102040,
-                               0.3469387755102040,
-                               0.3653846153846150,
-                               0.3888888888888890,
-                               0.4107142857142860,
-                               0.4107142857142860,
-                               0.4107142857142860,
-                               0.4181818181818180,
-                               0.4181818181818180,
-                               0.4181818181818180,
-                               0.4385964912280700,
-                               0.4285714285714290,
-                               0.4285714285714290,
-                               0.4285714285714290,
-                               0.4285714285714290,
-                               0.4285714285714290,
-                               0.4464285714285710,
-                               0.4545454545454550,
-                               0.4444444444444440,
-                               0.4444444444444440,
-                               0.4444444444444440,
-                               0.4705882352941180,
-                               0.5000000000000000,
-                               0.5098039215686270,
-                               0.5098039215686270,
-                               0.5192307692307690,
-                               0.5098039215686270,
-                               0.5098039215686270,
-                               0.5098039215686270,
-                               0.5000000000000000,
-                               0.5000000000000000,
-                               0.4905660377358490,
-                               0.4814814814814810,
-                               0.4814814814814810,
-                               0.4814814814814810,
-                               0.4727272727272730,
-                               0.4727272727272730,
-                               0.4727272727272730,
-                               0.4727272727272730,
-                               0.4727272727272730,
-                               0.4807692307692310,
-                               0.4807692307692310,
-                               0.4807692307692310,
-                               0.4905660377358490,
-                               0.5000000000000000,
-                               0.5000000000000000,
-                               0.4909090909090910,
-                               0.4909090909090910,
-                               0.5192307692307690,
-                               0.5370370370370370,
-                               0.5370370370370370,
-                               0.5370370370370370,
-                               0.5576923076923080,
-                               0.5576923076923080,
-                               0.5918367346938780,
-                               0.5918367346938780,
-                               0.5918367346938780,
-                               0.5918367346938780,
-                               0.5918367346938780,
-                               0.6170212765957450,
-                               0.6304347826086960,
-                               0.6304347826086960,
-                               0.6666666666666670,
-                               0.6739130434782610,
-                               0.6808510638297870,
-                               0.6458333333333330,
-                               0.6595744680851060,
-                               0.6595744680851060,
-                               0.6595744680851060,
-                               0.6595744680851060,
-                               0.6458333333333330,
-                               0.6458333333333330,
-                               0.6530612244897960,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6875000000000000,
-                               0.6938775510204080,
-                               0.7083333333333330,
-                               0.7234042553191490,
-                               0.7083333333333330,
-                               0.7083333333333330,
-                               0.7083333333333330,
-                               0.7083333333333330,
-                               0.7083333333333330,
-                               0.6938775510204080,
-                               0.6938775510204080,
-                               0.7000000000000000,
-                               0.7000000000000000,
-                               0.7058823529411760,
-                               0.7058823529411760,
-                               0.6923076923076920,
-                               0.6923076923076920,
-                               0.6981132075471700,
-                               0.7169811320754720,
-                               0.7500000000000000,
-                               0.7500000000000000,
-                               0.7090909090909090,
-                               0.7090909090909090,
-                               0.7090909090909090,
-                               0.7090909090909090,
-                               0.7090909090909090,
-                               0.7090909090909090,
-                               0.7222222222222220,
-                               0.7222222222222220,
-                               0.7222222222222220,
-                               0.7358490566037730,
-                               0.7407407407407410,
-                               0.7547169811320760,
-                               0.7142857142857140,
-                               0.7142857142857140,
-                               0.7142857142857140,
-                               0.7272727272727270,
-                               0.7454545454545450,
-                               0.7321428571428570,
-                               0.7321428571428570,
-                               0.7321428571428570,
-                               0.7321428571428570,
-                               0.7368421052631580,
-                               0.7368421052631580,
-                               0.7241379310344830,
-                               0.7241379310344830,
-                               0.7241379310344830,
-                               0.7241379310344830,
-                               0.7288135593220340,
-                               0.7377049180327870,
-                               0.7377049180327870,
-                               0.7377049180327870,
-                               0.7377049180327870,
-                               0.7377049180327870,
-                               0.7377049180327870,
-                               0.7377049180327870,
-                               0.7377049180327870,
-                               0.7377049180327870,
-                               0.7333333333333330,
-                               0.7333333333333330,
-                               0.7333333333333330,
-                               0.7213114754098360,
-                               0.7258064516129030,
-                               0.7377049180327870,
-                               0.7377049180327870,
-                               0.7377049180327870,
-                               0.7419354838709680,
-                               0.7419354838709680,
-                               0.7419354838709680,
-                               0.7666666666666670,
-                               0.7666666666666670,
-                               0.7666666666666670,
-                               0.7666666666666670,
-                               0.7666666666666670,
-                               0.7796610169491530,
-                               0.8214285714285710,
-                               0.8070175438596490,
-                               0.8070175438596490,
-                               0.8070175438596490,
-                               0.8070175438596490,
-                               0.8070175438596490,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8070175438596490,
-                               0.8070175438596490,
-                               0.8070175438596490,
-                               0.8070175438596490,
-                               0.8035714285714290,
-                               0.8035714285714290,
-                               0.8035714285714290,
-                               0.7758620689655170,
-                               0.7758620689655170,
-                               0.7796610169491530,
-                               0.7833333333333330,
-                               0.7868852459016390,
-                               0.8000000000000000,
-                               0.7868852459016390,
-                               0.7868852459016390,
-                               0.7868852459016390,
-                               0.7903225806451610,
-                               0.7903225806451610,
-                               0.7903225806451610,
-                               0.7903225806451610,
-                               0.8032786885245900,
-                               0.8032786885245900,
-                               0.7903225806451610,
-                               0.7903225806451610,
-                               0.7936507936507940,
-                               0.7846153846153850,
-                               0.7846153846153850,
-                               0.7846153846153850,
-                               0.7846153846153850,
-                               0.7968750000000000,
-                               0.7968750000000000,
-                               0.7968750000000000,
-                               0.7846153846153850,
-                               0.7846153846153850,
-                               0.7846153846153850,
-                               0.7846153846153850,
-                               0.8000000000000000,
-                               0.8000000000000000,
-                               0.8000000000000000,
-                               0.8000000000000000,
-                               0.8125000000000000,
-                               0.8225806451612900,
-                               0.8225806451612900,
-                               0.8644067796610170,
-                               0.8644067796610170,
-                               0.8644067796610170,
-                               0.8644067796610170,
-                               0.8793103448275860,
-                               0.8793103448275860,
-                               0.8833333333333330,
-                               0.8833333333333330,
-                               0.8833333333333330,
-                               0.8833333333333330,
-                               0.8833333333333330,
-                               0.8833333333333330,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8906250000000000,
-                               0.8906250000000000,
-                               0.8769230769230770,
-                               0.8769230769230770,
-                               0.8769230769230770,
-                               0.8769230769230770,
-                               0.8769230769230770,
-                               0.8769230769230770,
-                               0.8769230769230770,
-                               0.8769230769230770,
-                               0.8769230769230770,
-                               0.8769230769230770,
-                               0.8730158730158730,
-                               0.8888888888888890,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9193548387096770,
-                               0.9193548387096770,
-                               0.9193548387096770,
-                               0.9193548387096770,
-                               0.9206349206349210,
-                               0.9206349206349210,
-                               0.9206349206349210,
-                               0.9206349206349210,
-                               0.9206349206349210,
-                               0.9206349206349210,
-                               0.9206349206349210,
-                               0.9354838709677420,
-                               0.9354838709677420,
-                               0.9354838709677420,
-                               0.9354838709677420,
-                               0.9365079365079360,
-                               0.9365079365079360,
-                               0.9365079365079360,
-                               0.9365079365079360,
-                               0.9365079365079360,
-                               0.9354838709677420,
-                               0.9354838709677420,
-                               0.9354838709677420,
-                               0.9354838709677420,
-                               0.9365079365079360,
-                               0.9365079365079360,
-                               0.9365079365079360,
-                               0.9365079365079360,
-                               0.9365079365079360,
-                               0.9365079365079360,
-                               0.9218750000000000,
-                               0.9218750000000000,
-                               0.9218750000000000,
-                               0.9218750000000000,
-                               0.9230769230769230,
-                               0.9230769230769230,
-                               0.9230769230769230,
-                               0.9230769230769230,
-                               0.9230769230769230,
-                               0.9230769230769230,
-                               0.9242424242424240,
-                               0.9242424242424240,
-                               0.9242424242424240,
-                               0.9242424242424240,
-                               0.9242424242424240,
-                               0.9242424242424240,
-                               0.9242424242424240,
-                               0.9242424242424240,
-                               0.9242424242424240,
-                               0.9242424242424240,
-                               0.9253731343283580,
-                               0.9264705882352940,
-                               0.9264705882352940,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9285714285714290,
-                               0.9285714285714290,
-                               0.9285714285714290,
-                               0.9285714285714290,
-                               0.9285714285714290,
-                               0.9285714285714290,
-                               0.9285714285714290,
-                               0.9285714285714290,
-                               0.9420289855072460,
-                               0.9420289855072460,
-                               0.9420289855072460,
-                               0.9420289855072460,
-                               0.9420289855072460,
-                               0.9420289855072460,
-                               0.9420289855072460,
-                               0.9420289855072460,
-                               0.9420289855072460,
-                               0.9420289855072460,
-                               0.9420289855072460,
-                               0.9420289855072460,
-                               0.9420289855072460,
-                               0.9420289855072460,
-                               0.9420289855072460,
-                               0.9420289855072460,
-                               0.9420289855072460,
-                               0.9420289855072460,
-                               0.9428571428571430,
-                               0.9428571428571430,
-                               0.9428571428571430,
-                               0.9428571428571430,
-                               0.9428571428571430,
-                               0.9428571428571430,
-                               0.9428571428571430,
-                               0.9428571428571430,
-                               0.9428571428571430,
-                               0.9428571428571430,
-                               0.9428571428571430,
-                               0.9428571428571430,
-                               0.9428571428571430,
-                               0.9428571428571430,
-                               0.9428571428571430,
-                               0.9428571428571430,
-                               0.9428571428571430,
-                               0.9428571428571430,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9565217391304350,
-                               0.9705882352941180,
-                               0.9705882352941180,
-                               0.9705882352941180,
-                               0.9705882352941180,
-                               0.9705882352941180,
-                               0.9705882352941180,
-                               0.9705882352941180,
-                               0.9705882352941180,
-                               0.9705882352941180,
-                               0.9705882352941180,
-                               0.9705882352941180,
-                               0.9705882352941180,
-                               0.9705882352941180,
-                               0.9701492537313430,
-                               0.9701492537313430,
-                               0.9701492537313430,
-                               0.9701492537313430,
-                               0.9701492537313430,
-                               0.9701492537313430,
-                               0.9701492537313430,
-                               0.9701492537313430,
-                               0.9701492537313430,
-                               0.9701492537313430,
-                               0.9701492537313430,
-                               0.9701492537313430,
-                               0.9701492537313430,
-                               0.9701492537313430,
-                               0.9701492537313430,
-                               0.9701492537313430,
-                               0.9701492537313430,
-                               0.9701492537313430,
-                               0.9701492537313430,
-                               0.9701492537313430,
-                               0.9701492537313430,
-                               0.9701492537313430,
-                               0.9701492537313430,
-                               0.9696969696969700,
-                               0.9696969696969700,
-                               0.9696969696969700,
-                               0.9696969696969700,
-                               0.9696969696969700,
-                               0.9696969696969700,
-                               0.9696969696969700,
-                               0.9696969696969700,
-                               0.9696969696969700,
-                               0.9696969696969700,
-                               0.9696969696969700,
-                               0.9696969696969700,
-                               0.9696969696969700,
-                               0.9696969696969700,
-                               0.9696969696969700,
-                               0.9696969696969700,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9687500000000000,
-                               0.9687500000000000,
-                               0.9687500000000000,
-                               0.9687500000000000,
-                               0.9687500000000000,
-                               0.9687500000000000,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9696969696969700,
-                               0.9696969696969700,
-                               0.9696969696969700,
-                               0.9696969696969700,
-                               0.9696969696969700,
-                               0.9696969696969700,
-                               0.9696969696969700,
-                               0.9696969696969700,
-                               0.9696969696969700,
-                               0.9696969696969700,
-                               0.9696969696969700,
-                               0.9696969696969700,
-                               0.9696969696969700,
-                               0.9696969696969700,
-                               0.9696969696969700,
-                               0.9696969696969700,
-                               0.9696969696969700,
-                               0.9696969696969700,
-                               0.9696969696969700,
-                               0.9696969696969700,
-                               0.9696969696969700,
-                               0.9696969696969700,
-                               0.9696969696969700,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9692307692307690,
-                               0.9687500000000000,
-                               0.9687500000000000,
-                               0.9687500000000000,
-                               0.9687500000000000,
-                               0.9687500000000000,
-                               0.9692307692307690,
-                               0.9687500000000000,
-                               0.9687500000000000,
-                               0.9687500000000000,
-                               0.9687500000000000,
-                               0.9687500000000000,
-                               0.9538461538461540,
-                               0.9538461538461540,
-                               0.9538461538461540,
-                               0.9538461538461540,
-                               0.9538461538461540,
-                               0.9538461538461540,
-                               0.9538461538461540,
-                               0.9538461538461540,
-                               0.9538461538461540,
-                               0.9538461538461540,
-                               0.9538461538461540,
-                               0.9538461538461540,
-                               0.9538461538461540,
-                               0.9365079365079360,
-                               0.9365079365079360,
-                               0.9365079365079360,
-                               0.9365079365079360,
-                               0.9365079365079360,
-                               0.9365079365079360,
-                               0.9218750000000000,
-                               0.9218750000000000,
-                               0.9218750000000000,
-                               0.9218750000000000,
-                               0.9218750000000000,
-                               0.9218750000000000,
-                               0.9218750000000000,
-                               0.9206349206349210,
-                               0.9206349206349210,
-                               0.9206349206349210,
-                               0.9206349206349210,
-                               0.9193548387096770,
-                               0.9193548387096770,
-                               0.9180327868852460,
-                               0.9180327868852460,
-                               0.9180327868852460,
-                               0.9180327868852460,
-                               0.9180327868852460,
-                               0.9333333333333330,
-                               0.9322033898305080,
-                               0.9322033898305080,
-                               0.9322033898305080,
-                               0.9322033898305080,
-                               0.9166666666666670,
-                               0.9322033898305080,
-                               0.8870967741935480,
-                               0.8870967741935480,
-                               0.8870967741935480,
-                               0.8870967741935480,
-                               0.8870967741935480,
-                               0.8870967741935480,
-                               0.8870967741935480,
-                               0.8870967741935480,
-                               0.8852459016393440,
-                               0.8833333333333330,
-                               0.8833333333333330,
-                               0.8833333333333330,
-                               0.8813559322033900,
-                               0.8813559322033900,
-                               0.8813559322033900,
-                               0.8813559322033900,
-                               0.8793103448275860,
-                               0.8793103448275860,
-                               0.8793103448275860,
-                               0.8793103448275860,
-                               0.8793103448275860,
-                               0.8644067796610170,
-                               0.8666666666666670,
-                               0.8524590163934430,
-                               0.8500000000000000,
-                               0.8500000000000000,
-                               0.8500000000000000,
-                               0.8500000000000000,
-                               0.8474576271186440,
-                               0.8196721311475410,
-                               0.8196721311475410,
-                               0.8196721311475410,
-                               0.8196721311475410,
-                               0.8166666666666670,
-                               0.8103448275862070,
-                               0.8103448275862070,
-                               0.8103448275862070,
-                               0.8035714285714290,
-                               0.8035714285714290,
-                               0.8035714285714290,
-                               0.8000000000000000,
-                               0.7857142857142860,
-                               0.7857142857142860,
-                               0.7857142857142860,
-                               0.7857142857142860,
-                               0.7636363636363640,
-                               0.7592592592592590,
-                               0.7547169811320760,
-                               0.7547169811320760,
-                               0.7547169811320760,
-                               0.7500000000000000,
-                               0.7450980392156860,
-                               0.7346938775510200,
-                               0.7200000000000000,
-                               0.7200000000000000,
-                               0.7058823529411760,
-                               0.7000000000000000,
-                               0.6862745098039220,
-                               0.6730769230769230,
-                               0.6730769230769230,
-                               0.6730769230769230,
-                               0.6730769230769230,
-                               0.6730769230769230,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6538461538461540,
-                               0.6470588235294120,
-                               0.6346153846153850,
-                               0.6346153846153850,
-                               0.6346153846153850,
-                               0.6346153846153850,
-                               0.6346153846153850,
-                               0.6346153846153850,
-                               0.6346153846153850,
-                               0.6226415094339620,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.5818181818181820,
-                               0.5818181818181820,
-                               0.5818181818181820,
-                               0.5714285714285710,
-                               0.5714285714285710,
-                               0.5614035087719300,
-                               0.5517241379310340,
-                               0.5272727272727270,
-                               0.5272727272727270,
-                               0.5272727272727270,
-                               0.5272727272727270,
-                               0.5178571428571430,
-                               0.5178571428571430,
-                               0.4909090909090910,
-                               0.4821428571428570,
-                               0.4821428571428570,
-                               0.4736842105263160,
-                               0.4482758620689660,
-                               0.4482758620689660,
-                               0.4385964912280700,
-                               0.4385964912280700,
-                               0.4385964912280700,
-                               0.4385964912280700,
-                               0.4385964912280700,
-                               0.4385964912280700,
-                               0.3962264150943400,
-                               0.3962264150943400,
-                               0.3962264150943400,
-                               0.3962264150943400,
-                               0.3962264150943400,
-                               0.3888888888888890,
-                               0.3818181818181820,
-                               0.3818181818181820,
-                               0.3703703703703700,
-                               0.3636363636363640,
-                               0.3636363636363640,
-                               0.3636363636363640,
-                               0.3636363636363640,
-                               0.3636363636363640,
-                               0.3518518518518520,
-                               0.3137254901960780,
-                               0.2941176470588230,
-                               0.2800000000000000,
-                               0.2653061224489800,
-                               0.2653061224489800,
-                               0.2500000000000000,
-                               0.2500000000000000,
-                               0.2500000000000000,
-                               0.2500000000000000,
-                               0.2400000000000000,
-                               0.2400000000000000,
-                               0.2200000000000000,
-                               0.2156862745098040,
-                               0.2156862745098040,
-                               0.2156862745098040,
-                               0.2115384615384620,
-                               0.2115384615384620,
-                               0.2075471698113210,
-                               0.2075471698113210,
-                               0.2075471698113210,
-                               0.2075471698113210,
-                               0.1886792452830190,
-                               0.1886792452830190,
-                               0.1886792452830190,
-                               0.1886792452830190,
-                               0.1851851851851850,
-                               0.1851851851851850,
-                               0.1754385964912280,
-                               0.1754385964912280,
-                               0.1754385964912280,
-                               0.1724137931034480,
-                               0.1724137931034480,
-                               0.1724137931034480,
-                               0.1694915254237290,
-                               0.1694915254237290,
-                               0.1639344262295080,
-                               0.1639344262295080,
-                               0.1639344262295080,
-                               0.1612903225806450,
-                               0.1406250000000000,
-                               0.1406250000000000,
-                               0.1384615384615380,
-                               0.1384615384615380,
-                               0.1406250000000000,
-                               0.1406250000000000,
-                               0.1384615384615380,
-                               0.1384615384615380,
-                               0.1363636363636360,
-                               0.1363636363636360,
-                               0.1363636363636360,
-                               0.1343283582089550,
-                               0.1343283582089550,
-                               0.1343283582089550,
-                               0.1323529411764710,
-                               0.1304347826086960,
-                               0.1304347826086960,
-                               0.1323529411764710,
-                               0.1323529411764710,
-                               0.1323529411764710,
-                               0.1323529411764710,
-                               0.1323529411764710,
-                               0.1285714285714290,
-                               0.1267605633802820,
-                               0.1142857142857140,
-                               0.1142857142857140,
-                               0.1159420289855070,
-                               0.1159420289855070,
-                               0.1159420289855070,
-                               0.1029411764705880,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0869565217391304,
-                               0.0869565217391304,
-                               0.0869565217391304,
-                               0.0869565217391304,
-                               0.0869565217391304,
-                               0.0869565217391304,
-                               0.0869565217391304,
-                               0.0869565217391304,
-                               0.0869565217391304,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0869565217391304,
-                               0.0857142857142857,
-                               0.0857142857142857,
-                               0.0857142857142857,
-                               0.0857142857142857,
-                               0.0857142857142857,
-                               0.0857142857142857,
-                               0.0857142857142857,
-                               0.0857142857142857,
-                               0.0857142857142857,
-                               0.0857142857142857,
-                               0.0857142857142857,
-                               0.0857142857142857,
-                               0.0857142857142857,
-                               0.0857142857142857,
-                               0.0857142857142857,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0724637681159420,
-                               0.0724637681159420,
-                               0.0724637681159420,
-                               0.0724637681159420,
-                               0.0724637681159420,
-                               0.0724637681159420,
-                               0.0724637681159420,
-                               0.0724637681159420,
-                               0.0724637681159420,
-                               0.0724637681159420,
-                               0.0724637681159420,
-                               0.0724637681159420,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0724637681159420,
-                               0.0724637681159420,
-                               0.0724637681159420,
-                               0.0724637681159420,
-                               0.0724637681159420,
-                               0.0724637681159420,
-                               0.0724637681159420,
-                               0.0724637681159420,
-                               0.0724637681159420,
-                               0.0724637681159420,
-                               0.0724637681159420,
-                               0.0724637681159420,
-                               0.0724637681159420,
-                               0.0724637681159420,
-                               0.0724637681159420,
-                               0.0724637681159420,
-                               0.0735294117647059,
-                               0.0724637681159420,
-                               0.0735294117647059,
-                               0.0746268656716418,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0781250000000000,
-                               0.0769230769230769,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0769230769230769,
-                               0.0781250000000000,
-                               0.0634920634920635,
-                               0.0634920634920635,
-                               0.0634920634920635,
-                               0.0634920634920635,
-                               0.0634920634920635,
-                               0.0634920634920635,
-                               0.0625000000000000,
-                               0.0625000000000000,
-                               0.0615384615384615,
-                               0.0615384615384615,
-                               0.0634920634920635,
-                               0.0634920634920635,
-                               0.0634920634920635,
-                               0.0634920634920635,
-                               0.0634920634920635,
-                               0.0634920634920635,
-                               0.0634920634920635,
-                               0.0645161290322581,
-                               0.0634920634920635,
-                               0.0634920634920635,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0634920634920635,
-                               0.0634920634920635,
-                               0.0634920634920635,
-                               0.0634920634920635,
-                               0.0625000000000000,
-                               0.0625000000000000,
-                               0.0625000000000000,
-                               0.0625000000000000,
-                               0.0625000000000000,
-                               0.0625000000000000,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0666666666666667,
-                               0.0645161290322581,
-                               0.0625000000000000,
-                               0.0625000000000000,
-                               0.0625000000000000,
-                               0.0625000000000000,
-                               0.0597014925373134,
-                               0.0597014925373134,
-                               0.0597014925373134,
-                               0.0597014925373134,
-                               0.0597014925373134,
-                               0.0606060606060606,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0571428571428571,
-                               0.0571428571428571,
-                               0.0571428571428571,
-                               0.0571428571428571,
-                               0.0571428571428571,
-                               0.0571428571428571,
-                               0.0571428571428571,
-                               0.0571428571428571,
-                               0.0563380281690141,
-                               0.0563380281690141,
-                               0.0571428571428571,
-                               0.0579710144927536,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0597014925373134,
-                               0.0606060606060606,
-                               0.0597014925373134,
-                               0.0588235294117647,
-                               0.0579710144927536,
-                               0.0571428571428571,
-                               0.0571428571428571,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0597014925373134,
-                               0.0597014925373134,
-                               0.0597014925373134,
-                               0.0735294117647059,
-                               0.0735294117647059,
-                               0.0746268656716418,
-                               0.0735294117647059,
-                               0.0735294117647059,
-                               0.0735294117647059,
-                               0.0724637681159420,
-                               0.0724637681159420,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0704225352112676,
-                               0.0694444444444444,
-                               0.0694444444444444,
-                               0.0694444444444444,
-                               0.0684931506849315,
-                               0.0684931506849315,
-                               0.0684931506849315,
-                               0.0684931506849315,
-                               0.0684931506849315,
-                               0.0684931506849315,
-                               0.0684931506849315,
-                               0.0684931506849315,
-                               0.0684931506849315,
-                               0.0684931506849315,
-                               0.0684931506849315,
-                               0.0684931506849315,
-                               0.0694444444444444,
-                               0.0694444444444444,
-                               0.0694444444444444,
-                               0.0694444444444444,
-                               0.0694444444444444,
-                               0.0694444444444444,
-                               0.0704225352112676,
-                               0.0704225352112676,
-                               0.0704225352112676,
-                               0.0704225352112676,
-                               0.0704225352112676,
-                               0.0704225352112676,
-                               0.0704225352112676,
-                               0.0694444444444444,
-                               0.0694444444444444,
-                               0.0563380281690141,
-                               0.0563380281690141,
-                               0.0563380281690141,
-                               0.0563380281690141,
-                               0.0563380281690141,
-                               0.0563380281690141,
-                               0.0563380281690141,
-                               0.0563380281690141,
-                               0.0563380281690141,
-                               0.0555555555555556,
-                               0.0555555555555556,
-                               0.0563380281690141,
-                               0.0571428571428571,
-                               0.0571428571428571,
-                               0.0571428571428571,
-                               0.0571428571428571,
-                               0.0571428571428571,
-                               0.0571428571428571,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0422535211267606,
-                               0.0428571428571429,
-                               0.0434782608695652,
-                               0.0434782608695652,
-                               0.0434782608695652,
-                               0.0434782608695652,
-                               0.0434782608695652,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0422535211267606,
-                               0.0422535211267606,
-                               0.0422535211267606,
-                               0.0422535211267606,
-                               0.0422535211267606,
-                               0.0422535211267606,
-                               0.0422535211267606,
-                               0.0428571428571429,
-                               0.0434782608695652,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0447761194029851,
-                               0.0447761194029851,
-                               0.0447761194029851,
-                               0.0447761194029851,
-                               0.0447761194029851,
-                               0.0447761194029851,
-                               0.0447761194029851,
-                               0.0447761194029851,
-                               0.0447761194029851,
-                               0.0597014925373134,
-                               0.0597014925373134,
-                               0.0597014925373134,
-                               0.0597014925373134,
-                               0.0597014925373134,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0735294117647059,
-                               0.0735294117647059,
-                               0.0724637681159420,
-                               0.0735294117647059,
-                               0.0724637681159420,
-                               0.0857142857142857,
-                               0.0857142857142857,
-                               0.0985915492957746,
-                               0.0985915492957746,
-                               0.1000000000000000,
-                               0.1014492753623190,
-                               0.1029411764705880,
-                               0.1029411764705880,
-                               0.1029411764705880,
-                               0.1029411764705880,
-                               0.1029411764705880,
-                               0.1029411764705880,
-                               0.1029411764705880,
-                               0.1044776119402990,
-                               0.1044776119402990,
-                               0.1044776119402990,
-                               0.1044776119402990,
-                               0.1194029850746270,
-                               0.1194029850746270,
-                               0.1194029850746270,
-                               0.1194029850746270,
-                               0.1194029850746270,
-                               0.1194029850746270,
-                               0.1323529411764710,
-                               0.1323529411764710,
-                               0.1323529411764710,
-                               0.1323529411764710,
-                               0.1323529411764710,
-                               0.1323529411764710,
-                               0.1323529411764710,
-                               0.1470588235294120,
-                               0.1449275362318840,
-                               0.1449275362318840,
-                               0.1449275362318840,
-                               0.1470588235294120,
-                               0.1470588235294120,
-                               0.1449275362318840,
-                               0.1323529411764710,
-                               0.1323529411764710,
-                               0.1323529411764710,
-                               0.1323529411764710,
-                               0.1343283582089550,
-                               0.1212121212121210,
-                               0.1194029850746270,
-                               0.1194029850746270,
-                               0.1212121212121210,
-                               0.1194029850746270,
-                               0.1194029850746270,
-                               0.1343283582089550,
-                               0.1343283582089550,
-                               0.1343283582089550,
-                               0.1343283582089550,
-                               0.1343283582089550,
-                               0.1470588235294120,
-                               0.1492537313432840,
-                               0.1515151515151520,
-                               0.1515151515151520,
-                               0.1515151515151520,
-                               0.1515151515151520,
-                               0.1515151515151520,
-                               0.1538461538461540,
-                               0.1538461538461540,
-                               0.1666666666666670,
-                               0.1666666666666670,
-                               0.1791044776119400,
-                               0.1791044776119400,
-                               0.1818181818181820,
-                               0.1875000000000000,
-                               0.1746031746031750,
-                               0.1746031746031750,
-                               0.1746031746031750,
-                               0.1746031746031750,
-                               0.1746031746031750,
-                               0.1774193548387100,
-                               0.1639344262295080,
-                               0.1639344262295080,
-                               0.1639344262295080,
-                               0.1639344262295080,
-                               0.1666666666666670,
-                               0.1803278688524590,
-                               0.1803278688524590,
-                               0.1803278688524590,
-                               0.1833333333333330,
-                               0.1833333333333330,
-                               0.2131147540983610,
-                               0.2166666666666670,
-                               0.2166666666666670,
-                               0.2131147540983610,
-                               0.2258064516129030,
-                               0.2258064516129030,
-                               0.2258064516129030,
-                               0.2258064516129030,
-                               0.2258064516129030,
-                               0.2295081967213110,
-                               0.2295081967213110,
-                               0.2333333333333330,
-                               0.2333333333333330,
-                               0.2333333333333330,
-                               0.2333333333333330,
-                               0.2333333333333330,
-                               0.2333333333333330,
-                               0.2333333333333330,
-                               0.2333333333333330,
-                               0.2333333333333330,
-                               0.2333333333333330,
-                               0.2372881355932200,
-                               0.2456140350877190,
-                               0.2363636363636360,
-                               0.2631578947368420,
-                               0.2631578947368420,
-                               0.2586206896551720,
-                               0.2631578947368420,
-                               0.2631578947368420,
-                               0.2678571428571430,
-                               0.2727272727272730,
-                               0.2857142857142860,
-                               0.2857142857142860,
-                               0.2857142857142860,
-                               0.2909090909090910,
-                               0.2962962962962960,
-                               0.2830188679245280,
-                               0.3076923076923080,
-                               0.3076923076923080,
-                               0.3076923076923080,
-                               0.3207547169811320,
-                               0.3207547169811320,
-                               0.3207547169811320,
-                               0.3750000000000000,
-                               0.3750000000000000,
-                               0.3750000000000000,
-                               0.3958333333333330,
-                               0.3958333333333330,
-                               0.3958333333333330,
-                               0.3877551020408160,
-                               0.3958333333333330,
-                               0.3958333333333330,
-                               0.4081632653061220,
-                               0.4038461538461540,
-                               0.4074074074074070,
-                               0.4035087719298250,
-                               0.3965517241379310,
-                               0.3965517241379310,
-                               0.4067796610169490,
-                               0.4166666666666670,
-                               0.4166666666666670,
-                               0.4166666666666670,
-                               0.4237288135593220,
-                               0.4237288135593220,
-                               0.4237288135593220,
-                               0.4310344827586210,
-                               0.4310344827586210,
-                               0.4237288135593220,
-                               0.4237288135593220,
-                               0.4237288135593220,
-                               0.4333333333333330,
-                               0.4426229508196720,
-                               0.4426229508196720,
-                               0.4516129032258060,
-                               0.4516129032258060,
-                               0.4375000000000000,
-                               0.4375000000000000,
-                               0.4375000000000000,
-                               0.4375000000000000,
-                               0.4531250000000000,
-                               0.4461538461538460,
-                               0.4461538461538460,
-                               0.4285714285714290,
-                               0.4354838709677420,
-                               0.4262295081967210,
-                               0.4482758620689660,
-                               0.4482758620689660,
-                               0.4406779661016950,
-                               0.4406779661016950,
-                               0.4406779661016950,
-                               0.4576271186440680,
-                               0.4590163934426230,
-                               0.4677419354838710,
-                               0.4915254237288140,
-                               0.4915254237288140,
-                               0.4915254237288140,
-                               0.5000000000000000,
-                               0.5081967213114750,
-                               0.5081967213114750,
-                               0.5081967213114750,
-                               0.5081967213114750,
-                               0.5166666666666670,
-                               0.5166666666666670,
-                               0.5166666666666670,
-                               0.5166666666666670,
-                               0.5081967213114750,
-                               0.5081967213114750,
-                               0.5081967213114750,
-                               0.5000000000000000,
-                               0.5084745762711860,
-                               0.5084745762711860,
-                               0.5000000000000000,
-                               0.5000000000000000,
-                               0.5081967213114750,
-                               0.5161290322580650,
-                               0.5076923076923080,
-                               0.5156250000000000,
-                               0.5238095238095240,
-                               0.5238095238095240,
-                               0.5238095238095240,
-                               0.5245901639344260,
-                               0.5333333333333330,
-                               0.5245901639344260,
-                               0.5500000000000000,
-                               0.5500000000000000,
-                               0.5573770491803280,
-                               0.5645161290322580,
-                               0.5645161290322580,
-                               0.5645161290322580,
-                               0.5645161290322580,
-                               0.5645161290322580,
-                               0.5645161290322580,
-                               0.5645161290322580,
-                               0.5645161290322580,
-                               0.5645161290322580,
-                               0.5625000000000000,
-                               0.5538461538461540,
-                               0.5454545454545450,
-                               0.5454545454545450,
-                               0.5454545454545450,
-                               0.5454545454545450,
-                               0.5384615384615380,
-                               0.5384615384615380,
-                               0.5384615384615380,
-                               0.5454545454545450,
-                               0.5588235294117650,
-                               0.5588235294117650,
-                               0.5671641791044780,
-                               0.5588235294117650,
-                               0.5588235294117650,
-                               0.5588235294117650,
-                               0.5757575757575760,
-                               0.5757575757575760,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6290322580645160,
-                               0.6290322580645160,
-                               0.6290322580645160,
-                               0.6393442622950820,
-                               0.6393442622950820,
-                               0.6393442622950820,
-                               0.6271186440677970,
-                               0.6271186440677970,
-                               0.6271186440677970,
-                               0.6206896551724140,
-                               0.6206896551724140,
-                               0.6206896551724140,
-                               0.6428571428571430,
-                               0.6428571428571430,
-                               0.6315789473684210,
-                               0.6428571428571430,
-                               0.6428571428571430,
-                               0.6363636363636360,
-                               0.6363636363636360,
-                               0.6363636363636360,
-                               0.6363636363636360,
-                               0.6363636363636360,
-                               0.6481481481481480,
-                               0.6481481481481480,
-                               0.6296296296296300,
-                               0.6296296296296300,
-                               0.6415094339622640,
-                               0.6296296296296300,
-                               0.6415094339622640,
-                               0.6226415094339620,
-                               0.6181818181818180,
-                               0.6296296296296300,
-                               0.6181818181818180,
-                               0.6181818181818180,
-                               0.6181818181818180,
-                               0.6181818181818180,
-                               0.6315789473684210,
-                               0.6428571428571430,
-                               0.6545454545454550,
-                               0.6607142857142860,
-                               0.6607142857142860,
-                               0.6607142857142860,
-                               0.6724137931034480,
-                               0.6724137931034480,
-                               0.6779661016949150,
-                               0.6779661016949150,
-                               0.6833333333333330,
-                               0.6833333333333330,
-                               0.7000000000000000,
-                               0.7000000000000000,
-                               0.7166666666666670,
-                               0.7166666666666670,
-                               0.7118644067796610,
-                               0.7118644067796610,
-                               0.7241379310344830,
-                               0.7241379310344830,
-                               0.7368421052631580,
-                               0.7368421052631580,
-                               0.7368421052631580,
-                               0.7118644067796610,
-                               0.7118644067796610,
-                               0.7118644067796610,
-                               0.7118644067796610,
-                               0.7118644067796610,
-                               0.7118644067796610,
-                               0.7118644067796610,
-                               0.7166666666666670,
-                               0.7049180327868850,
-                               0.7049180327868850,
-                               0.7049180327868850,
-                               0.7049180327868850,
-                               0.6935483870967740,
-                               0.6935483870967740,
-                               0.6935483870967740,
-                               0.7096774193548390,
-                               0.7096774193548390,
-                               0.7096774193548390,
-                               0.7096774193548390,
-                               0.7096774193548390,
-                               0.7096774193548390,
-                               0.6923076923076920,
-                               0.6923076923076920,
-                               0.6969696969696970,
-                               0.6969696969696970,
-                               0.7076923076923080,
-                               0.7076923076923080,
-                               0.6969696969696970,
-                               0.6969696969696970,
-                               0.6865671641791040,
-                               0.6865671641791040,
-                               0.6865671641791040,
-                               0.6911764705882350,
-                               0.6911764705882350,
-                               0.6911764705882350,
-                               0.6911764705882350,
-                               0.7014925373134330,
-                               0.7058823529411760,
-                               0.7058823529411760,
-                               0.7164179104477610,
-                               0.7164179104477610,
-                               0.7164179104477610,
-                               0.7164179104477610,
-                               0.7164179104477610,
-                               0.7164179104477610,
-                               0.7246376811594200,
-                               0.7246376811594200,
-                               0.7352941176470590,
-                               0.7352941176470590,
-                               0.7352941176470590,
-                               0.7352941176470590,
-                               0.7352941176470590,
-                               0.7352941176470590,
-                               0.7352941176470590,
-                               0.7462686567164180,
-                               0.7462686567164180,
-                               0.7575757575757580,
-                               0.7611940298507460,
-                               0.7611940298507460,
-                               0.7647058823529410,
-                               0.7681159420289850,
-                               0.7681159420289850,
-                               0.7681159420289850,
-                               0.7681159420289850,
-                               0.7681159420289850,
-                               0.7681159420289850,
-                               0.7826086956521740,
-                               0.7941176470588230,
-                               0.8059701492537310,
-                               0.8059701492537310,
-                               0.8059701492537310,
-                               0.8059701492537310,
-                               0.8059701492537310,
-                               0.8059701492537310,
-                               0.8059701492537310,
-                               0.8059701492537310,
-                               0.8059701492537310,
-                               0.8059701492537310,
-                               0.8181818181818180,
-                               0.8307692307692310,
-                               0.8307692307692310,
-                               0.8437500000000000,
-                               0.8437500000000000,
-                               0.8437500000000000,
-                               0.8461538461538460,
-                               0.8461538461538460,
-                               0.8484848484848480,
-                               0.8484848484848480,
-                               0.8484848484848480,
-                               0.8484848484848480,
-                               0.8507462686567160,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8695652173913040,
-                               0.8695652173913040,
-                               0.8695652173913040,
-                               0.8695652173913040,
-                               0.8695652173913040,
-                               0.8695652173913040,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8656716417910450,
-                               0.8636363636363640,
-                               0.8636363636363640,
-                               0.8636363636363640,
-                               0.8636363636363640,
-                               0.8636363636363640,
-                               0.8636363636363640,
-                               0.8656716417910450,
-                               0.8656716417910450,
-                               0.8695652173913040,
-                               0.8695652173913040,
-                               0.8695652173913040,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8636363636363640,
-                               0.8636363636363640,
-                               0.8769230769230770,
-                               0.8769230769230770,
-                               0.8769230769230770,
-                               0.8769230769230770,
-                               0.8769230769230770,
-                               0.8769230769230770,
-                               0.8906250000000000,
-                               0.8906250000000000,
-                               0.8906250000000000,
-                               0.8923076923076920,
-                               0.8923076923076920,
-                               0.8923076923076920,
-                               0.8923076923076920,
-                               0.8939393939393940,
-                               0.8939393939393940,
-                               0.8939393939393940,
-                               0.8939393939393940,
-                               0.8939393939393940,
-                               0.8939393939393940,
-                               0.8939393939393940,
-                               0.8939393939393940,
-                               0.8939393939393940,
-                               0.8939393939393940,
-                               0.8955223880597010,
-                               0.8955223880597010,
-                               0.8955223880597010,
-                               0.8955223880597010,
-                               0.8955223880597010,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9014084507042250,
-                               0.9014084507042250,
-                               0.9014084507042250,
-                               0.9014084507042250,
-                               0.9014084507042250,
-                               0.9014084507042250,
-                               0.9014084507042250,
-                               0.9142857142857140,
-                               0.9142857142857140,
-                               0.9142857142857140,
-                               0.9142857142857140,
-                               0.9142857142857140,
-                               0.9154929577464790,
-                               0.9154929577464790,
-                               0.9154929577464790,
-                               0.9154929577464790,
-                               0.9154929577464790,
-                               0.9154929577464790,
-                               0.9154929577464790,
-                               0.9166666666666670,
-                               0.9166666666666670,
-                               0.9166666666666670,
-                               0.9166666666666670,
-                               0.9166666666666670,
-                               0.9166666666666670,
-                               0.9166666666666670,
-                               0.9166666666666670,
-                               0.9295774647887320,
-                               0.9295774647887320,
-                               0.9295774647887320,
-                               0.9295774647887320,
-                               0.9295774647887320,
-                               0.9295774647887320,
-                               0.9295774647887320,
-                               0.9295774647887320,
-                               0.9295774647887320,
-                               0.9295774647887320,
-                               0.9295774647887320,
-                               0.9295774647887320,
-                               0.9295774647887320,
-                               0.9305555555555560,
-                               0.9305555555555560,
-                               0.9305555555555560,
-                               0.9305555555555560,
-                               0.9305555555555560,
-                               0.9315068493150680,
-                               0.9315068493150680,
-                               0.9315068493150680,
-                               0.9315068493150680,
-                               0.9315068493150680,
-                               0.9315068493150680,
-                               0.9315068493150680,
-                               0.9315068493150680,
-                               0.9315068493150680,
-                               0.9315068493150680,
-                               0.9315068493150680,
-                               0.9315068493150680,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9324324324324320,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9459459459459460,
-                               0.9459459459459460,
-                               0.9459459459459460,
-                               0.9459459459459460,
-                               0.9459459459459460,
-                               0.9459459459459460,
-                               0.9459459459459460,
-                               0.9459459459459460,
-                               0.9459459459459460,
-                               0.9459459459459460,
-                               0.9459459459459460,
-                               0.9459459459459460,
-                               0.9459459459459460,
-                               0.9459459459459460,
-                               0.9459459459459460,
-                               0.9459459459459460,
-                               0.9459459459459460,
-                               0.9459459459459460,
-                               0.9459459459459460,
-                               0.9459459459459460,
-                               0.9459459459459460,
-                               0.9459459459459460,
-                               0.9459459459459460,
-                               0.9459459459459460,
-                               0.9459459459459460,
-                               0.9459459459459460,
-                               0.9459459459459460,
-                               0.9459459459459460,
-                               0.9459459459459460,
-                               0.9459459459459460,
-                               0.9459459459459460,
-                               0.9459459459459460,
-                               0.9459459459459460,
-                               0.9459459459459460,
-                               0.9459459459459460,
-                               0.9459459459459460,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9452054794520550,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9577464788732390,
-                               0.9577464788732390,
-                               0.9577464788732390,
-                               0.9577464788732390,
-                               0.9577464788732390,
-                               0.9577464788732390,
-                               0.9577464788732390,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9571428571428570,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9558823529411760,
-                               0.9545454545454550,
-                               0.9545454545454550,
-                               0.9545454545454550,
-                               0.9545454545454550,
-                               0.9538461538461540,
-                               0.9538461538461540,
-                               0.9531250000000000,
-                               0.9531250000000000,
-                               0.9531250000000000,
-                               0.9531250000000000,
-                               0.9682539682539680,
-                               0.9682539682539680,
-                               0.9682539682539680,
-                               0.9682539682539680,
-                               0.9682539682539680,
-                               0.9682539682539680,
-                               0.9682539682539680,
-                               0.9682539682539680,
-                               0.9682539682539680,
-                               0.9672131147540980,
-                               0.9672131147540980,
-                               0.9672131147540980,
-                               0.9672131147540980,
-                               0.9672131147540980,
-                               0.9672131147540980,
-                               0.9666666666666670,
-                               0.9661016949152540,
-                               0.9661016949152540,
-                               0.9655172413793100,
-                               0.9655172413793100,
-                               0.9655172413793100,
-                               0.9491525423728810,
-                               0.9491525423728810,
-                               0.9491525423728810,
-                               0.9333333333333330,
-                               0.9333333333333330,
-                               0.9322033898305080,
-                               0.9310344827586210,
-                               0.9310344827586210,
-                               0.9310344827586210,
-                               0.9137931034482760,
-                               0.9137931034482760,
-                               0.9137931034482760,
-                               0.8983050847457630,
-                               0.8983050847457630,
-                               0.8965517241379310,
-                               0.8813559322033900,
-                               0.8813559322033900,
-                               0.8793103448275860,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8474576271186440,
-                               0.8474576271186440,
-                               0.8448275862068960,
-                               0.8448275862068960,
-                               0.8448275862068960,
-                               0.8448275862068960,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.7868852459016390,
-                               0.7868852459016390,
-                               0.7868852459016390,
-                               0.7833333333333330,
-                               0.7833333333333330,
-                               0.7833333333333330,
-                               0.7833333333333330,
-                               0.7704918032786880,
-                               0.7704918032786880,
-                               0.7704918032786880,
-                               0.7704918032786880,
-                               0.7704918032786880,
-                               0.7580645161290320,
-                               0.7540983606557380,
-                               0.7419354838709680,
-                               0.7377049180327870,
-                               0.7377049180327870,
-                               0.7288135593220340,
-                               0.7118644067796610,
-                               0.7118644067796610,
-                               0.7068965517241380,
-                               0.7068965517241380,
-                               0.7017543859649120,
-                               0.6964285714285710,
-                               0.6964285714285710,
-                               0.6842105263157900,
-                               0.6842105263157900,
-                               0.6842105263157900,
-                               0.6842105263157900,
-                               0.6785714285714290,
-                               0.6785714285714290,
-                               0.6785714285714290,
-                               0.6785714285714290,
-                               0.6785714285714290,
-                               0.6666666666666670,
-                               0.6551724137931030,
-                               0.6379310344827590,
-                               0.6271186440677970,
-                               0.6206896551724140,
-                               0.5964912280701750,
-                               0.5964912280701750,
-                               0.5789473684210530,
-                               0.5689655172413790,
-                               0.5689655172413790,
-                               0.5689655172413790,
-                               0.5689655172413790,
-                               0.5689655172413790,
-                               0.5593220338983050,
-                               0.5593220338983050,
-                               0.5593220338983050,
-                               0.5593220338983050,
-                               0.5500000000000000,
-                               0.5423728813559320,
-                               0.5333333333333330,
-                               0.5333333333333330,
-                               0.5333333333333330,
-                               0.5333333333333330,
-                               0.5333333333333330,
-                               0.5333333333333330,
-                               0.5333333333333330,
-                               0.5333333333333330,
-                               0.5423728813559320,
-                               0.5423728813559320,
-                               0.5333333333333330,
-                               0.5166666666666670,
-                               0.5333333333333330,
-                               0.5254237288135590,
-                               0.5254237288135590,
-                               0.5254237288135590,
-                               0.5333333333333330,
-                               0.5245901639344260,
-                               0.5081967213114750,
-                               0.4736842105263160,
-                               0.4655172413793100,
-                               0.4576271186440680,
-                               0.4482758620689660,
-                               0.4406779661016950,
-                               0.4406779661016950,
-                               0.4310344827586210,
-                               0.4310344827586210,
-                               0.4310344827586210,
-                               0.4310344827586210,
-                               0.4137931034482760,
-                               0.4137931034482760,
-                               0.3818181818181820,
-                               0.3818181818181820,
-                               0.3396226415094340,
-                               0.3333333333333330,
-                               0.3272727272727270,
-                               0.3272727272727270,
-                               0.3148148148148150,
-                               0.3148148148148150,
-                               0.3148148148148150,
-                               0.3090909090909090,
-                               0.3090909090909090,
-                               0.3090909090909090,
-                               0.3090909090909090,
-                               0.3090909090909090,
-                               0.3090909090909090,
-                               0.3090909090909090,
-                               0.3090909090909090,
-                               0.3090909090909090,
-                               0.2962962962962960,
-                               0.2962962962962960,
-                               0.2830188679245280,
-                               0.2549019607843140,
-                               0.2600000000000000,
-                               0.2448979591836730,
-                               0.2400000000000000,
-                               0.2400000000000000,
-                               0.2307692307692310,
-                               0.2307692307692310,
-                               0.2307692307692310,
-                               0.2264150943396230,
-                               0.2068965517241380,
-                               0.2068965517241380,
-                               0.2068965517241380,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.1864406779661020,
-                               0.1864406779661020,
-                               0.1774193548387100,
-                               0.1774193548387100,
-                               0.1774193548387100,
-                               0.1639344262295080,
-                               0.1451612903225810,
-                               0.1451612903225810,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1230769230769230,
-                               0.1230769230769230,
-                               0.1230769230769230,
-                               0.1230769230769230,
-                               0.1230769230769230,
-                               0.1212121212121210,
-                               0.1212121212121210,
-                               0.1212121212121210,
-                               0.1176470588235290,
-                               0.1176470588235290,
-                               0.1176470588235290,
-                               0.1176470588235290,
-                               0.1044776119402990,
-                               0.1044776119402990,
-                               0.1044776119402990,
-                               0.1044776119402990,
-                               0.1044776119402990,
-                               0.1044776119402990,
-                               0.1044776119402990,
-                               0.1044776119402990,
-                               0.1044776119402990,
-                               0.1044776119402990,
-                               0.1029411764705880,
-                               0.1044776119402990,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0869565217391304,
-                               0.0869565217391304,
-                               0.0869565217391304,
-                               0.0869565217391304,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0735294117647059,
-                               0.0735294117647059,
-                               0.0735294117647059,
-                               0.0597014925373134,
-                               0.0606060606060606,
-                               0.0615384615384615,
-                               0.0615384615384615,
-                               0.0615384615384615,
-                               0.0606060606060606,
-                               0.0606060606060606,
-                               0.0746268656716418,
-                               0.0735294117647059,
-                               0.0735294117647059,
-                               0.0735294117647059,
-                               0.0735294117647059,
-                               0.0724637681159420,
-                               0.0724637681159420,
-                               0.0724637681159420,
-                               0.0724637681159420,
-                               0.0724637681159420,
-                               0.0735294117647059,
-                               0.0735294117647059,
-                               0.0735294117647059,
-                               0.0735294117647059,
-                               0.0735294117647059,
-                               0.0735294117647059,
-                               0.0735294117647059,
-                               0.0735294117647059,
-                               0.0735294117647059,
-                               0.0735294117647059,
-                               0.0735294117647059,
-                               0.0735294117647059,
-                               0.0746268656716418,
-                               0.0735294117647059,
-                               0.0735294117647059,
-                               0.0735294117647059,
-                               0.0735294117647059,
-                               0.0735294117647059,
-                               0.0869565217391304,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1014492753623190,
-                               0.1014492753623190,
-                               0.1014492753623190,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1029411764705880,
-                               0.0909090909090909,
-                               0.0923076923076923,
-                               0.0923076923076923,
-                               0.0923076923076923,
-                               0.0937500000000000,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.1014492753623190,
-                               0.1014492753623190,
-                               0.1014492753623190,
-                               0.1029411764705880,
-                               0.1029411764705880,
-                               0.0895522388059701,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0923076923076923,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0923076923076923,
-                               0.0952380952380952,
-                               0.0952380952380952,
-                               0.0967741935483871,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1016949152542370,
-                               0.0967741935483871,
-                               0.0833333333333333,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0952380952380952,
-                               0.0952380952380952,
-                               0.1111111111111110,
-                               0.1093750000000000,
-                               0.1093750000000000,
-                               0.1093750000000000,
-                               0.1093750000000000,
-                               0.1093750000000000,
-                               0.1093750000000000,
-                               0.1093750000000000,
-                               0.1076923076923080,
-                               0.1076923076923080,
-                               0.1076923076923080,
-                               0.1076923076923080,
-                               0.1076923076923080,
-                               0.1093750000000000,
-                               0.1093750000000000,
-                               0.1093750000000000,
-                               0.1076923076923080,
-                               0.1093750000000000,
-                               0.1111111111111110,
-                               0.1093750000000000,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.0967741935483871,
-                               0.0952380952380952,
-                               0.0952380952380952,
-                               0.0952380952380952,
-                               0.0952380952380952,
-                               0.0967741935483871,
-                               0.0952380952380952,
-                               0.0952380952380952,
-                               0.0952380952380952,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0983606557377049,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0806451612903226,
-                               0.0819672131147541,
-                               0.0793650793650794,
-                               0.0781250000000000,
-                               0.0781250000000000,
-                               0.0781250000000000,
-                               0.0793650793650794,
-                               0.0781250000000000,
-                               0.0781250000000000,
-                               0.0781250000000000,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0833333333333333,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0833333333333333,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0793650793650794,
-                               0.0781250000000000,
-                               0.0781250000000000,
-                               0.0781250000000000,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0781250000000000,
-                               0.0781250000000000,
-                               0.0781250000000000,
-                               0.0781250000000000,
-                               0.0781250000000000,
-                               0.0781250000000000,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0781250000000000,
-                               0.0781250000000000,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0806451612903226,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0677966101694915,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0655737704918033,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0952380952380952,
-                               0.0967741935483871,
-                               0.0983606557377049,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1016949152542370,
-                               0.1016949152542370,
-                               0.1186440677966100,
-                               0.1147540983606560,
-                               0.1290322580645160,
-                               0.1290322580645160,
-                               0.1290322580645160,
-                               0.1290322580645160,
-                               0.1269841269841270,
-                               0.1269841269841270,
-                               0.1290322580645160,
-                               0.1290322580645160,
-                               0.1269841269841270,
-                               0.1290322580645160,
-                               0.1290322580645160,
-                               0.1311475409836070,
-                               0.1311475409836070,
-                               0.1290322580645160,
-                               0.1311475409836070,
-                               0.1451612903225810,
-                               0.1333333333333330,
-                               0.1311475409836070,
-                               0.1475409836065570,
-                               0.1475409836065570,
-                               0.1500000000000000,
-                               0.1639344262295080,
-                               0.1639344262295080,
-                               0.1639344262295080,
-                               0.1639344262295080,
-                               0.1639344262295080,
-                               0.1639344262295080,
-                               0.1639344262295080,
-                               0.1639344262295080,
-                               0.1639344262295080,
-                               0.1639344262295080,
-                               0.1639344262295080,
-                               0.1639344262295080,
-                               0.1639344262295080,
-                               0.1774193548387100,
-                               0.1904761904761900,
-                               0.1935483870967740,
-                               0.1967213114754100,
-                               0.1967213114754100,
-                               0.1833333333333330,
-                               0.1864406779661020,
-                               0.1864406779661020,
-                               0.1864406779661020,
-                               0.1864406779661020,
-                               0.1864406779661020,
-                               0.1864406779661020,
-                               0.1864406779661020,
-                               0.1896551724137930,
-                               0.2033898305084750,
-                               0.2000000000000000,
-                               0.1967213114754100,
-                               0.1833333333333330,
-                               0.1833333333333330,
-                               0.1864406779661020,
-                               0.1864406779661020,
-                               0.1864406779661020,
-                               0.1864406779661020,
-                               0.1724137931034480,
-                               0.1864406779661020,
-                               0.1896551724137930,
-                               0.1754385964912280,
-                               0.1754385964912280,
-                               0.1754385964912280,
-                               0.1694915254237290,
-                               0.1833333333333330,
-                               0.1864406779661020,
-                               0.1864406779661020,
-                               0.1864406779661020,
-                               0.1864406779661020,
-                               0.1833333333333330,
-                               0.1833333333333330,
-                               0.1864406779661020,
-                               0.1864406779661020,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.2105263157894740,
-                               0.2068965517241380,
-                               0.2068965517241380,
-                               0.2241379310344830,
-                               0.2241379310344830,
-                               0.2241379310344830,
-                               0.2241379310344830,
-                               0.2241379310344830,
-                               0.2280701754385960,
-                               0.2280701754385960,
-                               0.2321428571428570,
-                               0.2321428571428570,
-                               0.2321428571428570,
-                               0.2280701754385960,
-                               0.2241379310344830,
-                               0.2241379310344830,
-                               0.2241379310344830,
-                               0.2241379310344830,
-                               0.2280701754385960,
-                               0.2000000000000000,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1964285714285710,
-                               0.2241379310344830,
-                               0.2280701754385960,
-                               0.2280701754385960,
-                               0.2321428571428570,
-                               0.2407407407407410,
-                               0.2407407407407410,
-                               0.2407407407407410,
-                               0.2363636363636360,
-                               0.2363636363636360,
-                               0.2363636363636360,
-                               0.2363636363636360,
-                               0.2363636363636360,
-                               0.2363636363636360,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2307692307692310,
-                               0.2307692307692310,
-                               0.2352941176470590,
-                               0.2352941176470590,
-                               0.2400000000000000,
-                               0.2600000000000000,
-                               0.2600000000000000,
-                               0.2600000000000000,
-                               0.2600000000000000,
-                               0.2600000000000000,
-                               0.2800000000000000,
-                               0.2800000000000000,
-                               0.2884615384615380,
-                               0.2884615384615380,
-                               0.2884615384615380,
-                               0.2830188679245280,
-                               0.2830188679245280,
-                               0.2830188679245280,
-                               0.2962962962962960,
-                               0.2962962962962960,
-                               0.2962962962962960,
-                               0.2962962962962960,
-                               0.2982456140350880,
-                               0.2982456140350880,
-                               0.3090909090909090,
-                               0.3090909090909090,
-                               0.3090909090909090,
-                               0.3148148148148150,
-                               0.3396226415094340,
-                               0.3396226415094340,
-                               0.3461538461538460,
-                               0.3461538461538460,
-                               0.3461538461538460,
-                               0.3529411764705880,
-                               0.3529411764705880,
-                               0.3584905660377360,
-                               0.3888888888888890,
-                               0.3888888888888890,
-                               0.3962264150943400,
-                               0.3888888888888890,
-                               0.3962264150943400,
-                               0.3962264150943400,
-                               0.3962264150943400,
-                               0.3962264150943400,
-                               0.4038461538461540,
-                               0.4117647058823530,
-                               0.4117647058823530,
-                               0.4117647058823530,
-                               0.4285714285714290,
-                               0.4285714285714290,
-                               0.4200000000000000,
-                               0.4117647058823530,
-                               0.4230769230769230,
-                               0.4117647058823530,
-                               0.4200000000000000,
-                               0.4200000000000000,
-                               0.4200000000000000,
-                               0.4200000000000000,
-                               0.4313725490196080,
-                               0.4230769230769230,
-                               0.4400000000000000,
-                               0.4400000000000000,
-                               0.4400000000000000,
-                               0.4509803921568630,
-                               0.4615384615384620,
-                               0.4615384615384620,
-                               0.4807692307692310,
-                               0.4807692307692310,
-                               0.4901960784313730,
-                               0.4901960784313730,
-                               0.5098039215686270,
-                               0.5098039215686270,
-                               0.5000000000000000,
-                               0.5192307692307690,
-                               0.5294117647058820,
-                               0.5490196078431370,
-                               0.5490196078431370,
-                               0.5600000000000000,
-                               0.5576923076923080,
-                               0.5686274509803920,
-                               0.5800000000000000,
-                               0.5800000000000000,
-                               0.5882352941176470,
-                               0.6000000000000000,
-                               0.6153846153846150,
-                               0.6153846153846150,
-                               0.6153846153846150,
-                               0.6153846153846150,
-                               0.6153846153846150,
-                               0.6226415094339620,
-                               0.6296296296296300,
-                               0.6296296296296300,
-                               0.6415094339622640,
-                               0.6481481481481480,
-                               0.6415094339622640,
-                               0.6415094339622640,
-                               0.6538461538461540,
-                               0.6538461538461540,
-                               0.6603773584905660,
-                               0.6603773584905660,
-                               0.6666666666666670,
-                               0.6800000000000000,
-                               0.6730769230769230,
-                               0.6666666666666670,
-                               0.6923076923076920,
-                               0.6923076923076920,
-                               0.6792452830188680,
-                               0.6923076923076920,
-                               0.6981132075471700,
-                               0.6981132075471700,
-                               0.6981132075471700,
-                               0.6981132075471700,
-                               0.6981132075471700,
-                               0.7115384615384620,
-                               0.7115384615384620,
-                               0.7254901960784310,
-                               0.7450980392156860,
-                               0.7450980392156860,
-                               0.7450980392156860,
-                               0.7450980392156860,
-                               0.7450980392156860,
-                               0.7450980392156860,
-                               0.7450980392156860,
-                               0.7450980392156860,
-                               0.7450980392156860,
-                               0.7450980392156860,
-                               0.7450980392156860,
-                               0.7450980392156860,
-                               0.7222222222222220,
-                               0.7222222222222220,
-                               0.7358490566037730,
-                               0.7358490566037730,
-                               0.7358490566037730,
-                               0.7222222222222220,
-                               0.7222222222222220,
-                               0.7222222222222220,
-                               0.7222222222222220,
-                               0.7090909090909090,
-                               0.7222222222222220,
-                               0.7222222222222220,
-                               0.7017543859649120,
-                               0.7017543859649120,
-                               0.6779661016949150,
-                               0.6885245901639340,
-                               0.6984126984126980,
-                               0.6984126984126980,
-                               0.6984126984126980,
-                               0.6984126984126980,
-                               0.6984126984126980,
-                               0.6984126984126980,
-                               0.6984126984126980,
-                               0.6984126984126980,
-                               0.6984126984126980,
-                               0.6984126984126980,
-                               0.6984126984126980,
-                               0.6984126984126980,
-                               0.6984126984126980,
-                               0.7096774193548390,
-                               0.7096774193548390,
-                               0.7096774193548390,
-                               0.7142857142857140,
-                               0.7142857142857140,
-                               0.7096774193548390,
-                               0.7096774193548390,
-                               0.6984126984126980,
-                               0.6885245901639340,
-                               0.6885245901639340,
-                               0.6885245901639340,
-                               0.7000000000000000,
-                               0.6774193548387100,
-                               0.6774193548387100,
-                               0.6774193548387100,
-                               0.6774193548387100,
-                               0.6721311475409840,
-                               0.6557377049180330,
-                               0.6557377049180330,
-                               0.6666666666666670,
-                               0.6779661016949150,
-                               0.6779661016949150,
-                               0.6779661016949150,
-                               0.6779661016949150,
-                               0.6779661016949150,
-                               0.7272727272727270,
-                               0.7017543859649120,
-                               0.7017543859649120,
-                               0.7068965517241380,
-                               0.7068965517241380,
-                               0.7192982456140350,
-                               0.7192982456140350,
-                               0.7192982456140350,
-                               0.7192982456140350,
-                               0.7272727272727270,
-                               0.7272727272727270,
-                               0.7272727272727270,
-                               0.7321428571428570,
-                               0.7368421052631580,
-                               0.7368421052631580,
-                               0.7368421052631580,
-                               0.7543859649122810,
-                               0.7678571428571430,
-                               0.7678571428571430,
-                               0.7678571428571430,
-                               0.7678571428571430,
-                               0.7678571428571430,
-                               0.7678571428571430,
-                               0.7719298245614030,
-                               0.7719298245614030,
-                               0.7719298245614030,
-                               0.7719298245614030,
-                               0.7719298245614030,
-                               0.7719298245614030,
-                               0.7719298245614030,
-                               0.7857142857142860,
-                               0.7857142857142860,
-                               0.7857142857142860,
-                               0.7894736842105260,
-                               0.7931034482758620,
-                               0.7931034482758620,
-                               0.8103448275862070,
-                               0.8103448275862070,
-                               0.8103448275862070,
-                               0.8103448275862070,
-                               0.8103448275862070,
-                               0.8103448275862070,
-                               0.7833333333333330,
-                               0.7833333333333330,
-                               0.7833333333333330,
-                               0.7833333333333330,
-                               0.7796610169491530,
-                               0.7796610169491530,
-                               0.7796610169491530,
-                               0.7796610169491530,
-                               0.7796610169491530,
-                               0.7796610169491530,
-                               0.7796610169491530,
-                               0.7796610169491530,
-                               0.7868852459016390,
-                               0.7868852459016390,
-                               0.7868852459016390,
-                               0.7741935483870970,
-                               0.7777777777777780,
-                               0.7777777777777780,
-                               0.7777777777777780,
-                               0.7777777777777780,
-                               0.7777777777777780,
-                               0.7777777777777780,
-                               0.7777777777777780,
-                               0.7777777777777780,
-                               0.7777777777777780,
-                               0.7777777777777780,
-                               0.7777777777777780,
-                               0.7777777777777780,
-                               0.7903225806451610,
-                               0.7903225806451610,
-                               0.7903225806451610,
-                               0.7903225806451610,
-                               0.7903225806451610,
-                               0.8000000000000000,
-                               0.8000000000000000,
-                               0.8000000000000000,
-                               0.8032786885245900,
-                               0.8032786885245900,
-                               0.8032786885245900,
-                               0.8095238095238100,
-                               0.8095238095238100,
-                               0.8095238095238100,
-                               0.8095238095238100,
-                               0.8095238095238100,
-                               0.8095238095238100,
-                               0.8032786885245900,
-                               0.8064516129032260,
-                               0.8064516129032260,
-                               0.8064516129032260,
-                               0.8064516129032260,
-                               0.8064516129032260,
-                               0.8064516129032260,
-                               0.8064516129032260,
-                               0.8196721311475410,
-                               0.8196721311475410,
-                               0.8196721311475410,
-                               0.8196721311475410,
-                               0.8196721311475410,
-                               0.8166666666666670,
-                               0.8196721311475410,
-                               0.8196721311475410,
-                               0.8196721311475410,
-                               0.8196721311475410,
-                               0.8196721311475410,
-                               0.8196721311475410,
-                               0.8196721311475410,
-                               0.8196721311475410,
-                               0.8196721311475410,
-                               0.8196721311475410,
-                               0.8196721311475410,
-                               0.8196721311475410,
-                               0.8196721311475410,
-                               0.8196721311475410,
-                               0.8196721311475410,
-                               0.8196721311475410,
-                               0.8196721311475410,
-                               0.8166666666666670,
-                               0.8196721311475410,
-                               0.8196721311475410,
-                               0.8333333333333330,
-                               0.8333333333333330,
-                               0.8333333333333330,
-                               0.8360655737704920,
-                               0.8360655737704920,
-                               0.8360655737704920,
-                               0.8360655737704920,
-                               0.8360655737704920,
-                               0.8387096774193550,
-                               0.8387096774193550,
-                               0.8387096774193550,
-                               0.8387096774193550,
-                               0.8387096774193550,
-                               0.8387096774193550,
-                               0.8387096774193550,
-                               0.8387096774193550,
-                               0.8387096774193550,
-                               0.8387096774193550,
-                               0.8387096774193550,
-                               0.8387096774193550,
-                               0.8387096774193550,
-                               0.8387096774193550,
-                               0.8387096774193550,
-                               0.8387096774193550,
-                               0.8387096774193550,
-                               0.8387096774193550,
-                               0.8387096774193550,
-                               0.8387096774193550,
-                               0.8387096774193550,
-                               0.8524590163934430,
-                               0.8524590163934430,
-                               0.8524590163934430,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8666666666666670,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8709677419354840,
-                               0.8709677419354840,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8833333333333330,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8870967741935480,
-                               0.8870967741935480,
-                               0.8870967741935480,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8906250000000000,
-                               0.8906250000000000,
-                               0.8923076923076920,
-                               0.8939393939393940,
-                               0.8939393939393940,
-                               0.8939393939393940,
-                               0.8939393939393940,
-                               0.8939393939393940,
-                               0.8939393939393940,
-                               0.8939393939393940,
-                               0.8939393939393940,
-                               0.8939393939393940,
-                               0.8939393939393940,
-                               0.8939393939393940,
-                               0.8939393939393940,
-                               0.8939393939393940,
-                               0.8939393939393940,
-                               0.8939393939393940,
-                               0.8939393939393940,
-                               0.8939393939393940,
-                               0.8939393939393940,
-                               0.8939393939393940,
-                               0.8939393939393940,
-                               0.8939393939393940,
-                               0.8939393939393940,
-                               0.8939393939393940,
-                               0.8955223880597010,
-                               0.8955223880597010,
-                               0.8955223880597010,
-                               0.8955223880597010,
-                               0.8955223880597010,
-                               0.8955223880597010,
-                               0.8955223880597010,
-                               0.8955223880597010,
-                               0.8955223880597010,
-                               0.8955223880597010,
-                               0.8955223880597010,
-                               0.8955223880597010,
-                               0.8955223880597010,
-                               0.8955223880597010,
-                               0.8955223880597010,
-                               0.8955223880597010,
-                               0.8955223880597010,
-                               0.8955223880597010,
-                               0.8955223880597010,
-                               0.8955223880597010,
-                               0.8955223880597010,
-                               0.8955223880597010,
-                               0.8955223880597010,
-                               0.8955223880597010,
-                               0.8955223880597010,
-                               0.8955223880597010,
-                               0.8955223880597010,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9016393442622950,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.8852459016393440,
-                               0.8833333333333330,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8644067796610170,
-                               0.8644067796610170,
-                               0.8644067796610170,
-                               0.8644067796610170,
-                               0.8644067796610170,
-                               0.8644067796610170,
-                               0.8644067796610170,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8596491228070170,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8070175438596490,
-                               0.8070175438596490,
-                               0.8000000000000000,
-                               0.8000000000000000,
-                               0.8000000000000000,
-                               0.8000000000000000,
-                               0.8000000000000000,
-                               0.8000000000000000,
-                               0.8000000000000000,
-                               0.8000000000000000,
-                               0.8000000000000000,
-                               0.7962962962962960,
-                               0.7924528301886790,
-                               0.7884615384615380,
-                               0.7843137254901960,
-                               0.7843137254901960,
-                               0.7692307692307690,
-                               0.7692307692307690,
-                               0.7692307692307690,
-                               0.7547169811320760,
-                               0.7547169811320760,
-                               0.7407407407407410,
-                               0.7407407407407410,
-                               0.7272727272727270,
-                               0.7222222222222220,
-                               0.6842105263157900,
-                               0.6724137931034480,
-                               0.6724137931034480,
-                               0.6724137931034480,
-                               0.6724137931034480,
-                               0.6724137931034480,
-                               0.6724137931034480,
-                               0.6724137931034480,
-                               0.6724137931034480,
-                               0.6724137931034480,
-                               0.6724137931034480,
-                               0.6607142857142860,
-                               0.6545454545454550,
-                               0.6481481481481480,
-                               0.6538461538461540,
-                               0.6538461538461540,
-                               0.6538461538461540,
-                               0.6538461538461540,
-                               0.6603773584905660,
-                               0.6481481481481480,
-                               0.6481481481481480,
-                               0.6481481481481480,
-                               0.6481481481481480,
-                               0.6363636363636360,
-                               0.6363636363636360,
-                               0.6363636363636360,
-                               0.6181818181818180,
-                               0.6181818181818180,
-                               0.6111111111111110,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.5925925925925930,
-                               0.5925925925925930,
-                               0.5925925925925930,
-                               0.5849056603773580,
-                               0.5740740740740740,
-                               0.5740740740740740,
-                               0.5660377358490570,
-                               0.5660377358490570,
-                               0.5555555555555560,
-                               0.5471698113207550,
-                               0.5370370370370370,
-                               0.5370370370370370,
-                               0.5370370370370370,
-                               0.5370370370370370,
-                               0.5370370370370370,
-                               0.5272727272727270,
-                               0.5272727272727270,
-                               0.5000000000000000,
-                               0.5000000000000000,
-                               0.5000000000000000,
-                               0.5000000000000000,
-                               0.4905660377358490,
-                               0.4905660377358490,
-                               0.4905660377358490,
-                               0.4905660377358490,
-                               0.4814814814814810,
-                               0.4905660377358490,
-                               0.4807692307692310,
-                               0.4807692307692310,
-                               0.4807692307692310,
-                               0.4807692307692310,
-                               0.4705882352941180,
-                               0.4615384615384620,
-                               0.4509803921568630,
-                               0.4509803921568630,
-                               0.4509803921568630,
-                               0.4509803921568630,
-                               0.4489795918367350,
-                               0.4489795918367350,
-                               0.4375000000000000,
-                               0.4375000000000000,
-                               0.4375000000000000,
-                               0.4255319148936170,
-                               0.4347826086956520,
-                               0.4347826086956520,
-                               0.4222222222222220,
-                               0.4222222222222220,
-                               0.4130434782608700,
-                               0.4130434782608700,
-                               0.4130434782608700,
-                               0.4000000000000000,
-                               0.3720930232558140,
-                               0.3720930232558140,
-                               0.3636363636363640,
-                               0.3555555555555560,
-                               0.3478260869565220,
-                               0.3404255319148940,
-                               0.3111111111111110,
-                               0.3111111111111110,
-                               0.2954545454545450,
-                               0.2888888888888890,
-                               0.2888888888888890,
-                               0.2888888888888890,
-                               0.2708333333333330,
-                               0.2708333333333330,
-                               0.2553191489361700,
-                               0.2553191489361700,
-                               0.2553191489361700,
-                               0.2553191489361700,
-                               0.2553191489361700,
-                               0.2553191489361700,
-                               0.2553191489361700,
-                               0.2391304347826090,
-                               0.2391304347826090,
-                               0.2444444444444440,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2200000000000000,
-                               0.2040816326530610,
-                               0.1960784313725490,
-                               0.1960784313725490,
-                               0.1960784313725490,
-                               0.1923076923076920,
-                               0.1923076923076920,
-                               0.1923076923076920,
-                               0.1851851851851850,
-                               0.1851851851851850,
-                               0.1851851851851850,
-                               0.1851851851851850,
-                               0.1851851851851850,
-                               0.1818181818181820,
-                               0.1666666666666670,
-                               0.1666666666666670,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1578947368421050,
-                               0.1403508771929820,
-                               0.1403508771929820,
-                               0.1379310344827590,
-                               0.1379310344827590,
-                               0.1355932203389830,
-                               0.1355932203389830,
-                               0.1355932203389830,
-                               0.1355932203389830,
-                               0.1355932203389830,
-                               0.1355932203389830,
-                               0.1379310344827590,
-                               0.1379310344827590,
-                               0.1228070175438600,
-                               0.1228070175438600,
-                               0.1228070175438600,
-                               0.1228070175438600,
-                               0.1228070175438600,
-                               0.1228070175438600,
-                               0.1206896551724140,
-                               0.1206896551724140,
-                               0.1206896551724140,
-                               0.1206896551724140,
-                               0.1052631578947370,
-                               0.1071428571428570,
-                               0.1052631578947370,
-                               0.1052631578947370,
-                               0.1052631578947370,
-                               0.1052631578947370,
-                               0.1052631578947370,
-                               0.1052631578947370,
-                               0.0892857142857143,
-                               0.0892857142857143,
-                               0.0892857142857143,
-                               0.0892857142857143,
-                               0.0892857142857143,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0909090909090909,
-                               0.0727272727272727,
-                               0.0714285714285714,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0714285714285714,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0689655172413793,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0689655172413793,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0714285714285714,
-                               0.0740740740740741,
-                               0.0754716981132075,
-                               0.0754716981132075,
-                               0.0754716981132075,
-                               0.0754716981132075,
-                               0.0784313725490196,
-                               0.0784313725490196,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0784313725490196,
-                               0.0784313725490196,
-                               0.0754716981132075,
-                               0.0754716981132075,
-                               0.0740740740740741,
-                               0.0740740740740741,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0892857142857143,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0892857142857143,
-                               0.0892857142857143,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0892857142857143,
-                               0.0892857142857143,
-                               0.0892857142857143,
-                               0.0892857142857143,
-                               0.0892857142857143,
-                               0.0892857142857143,
-                               0.0892857142857143,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0909090909090909,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0677966101694915,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0689655172413793,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0689655172413793,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0535714285714286,
-                               0.0526315789473684,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0714285714285714,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0740740740740741,
-                               0.0754716981132075,
-                               0.0754716981132075,
-                               0.0740740740740741,
-                               0.0740740740740741,
-                               0.0740740740740741,
-                               0.0740740740740741,
-                               0.0740740740740741,
-                               0.0740740740740741,
-                               0.0740740740740741,
-                               0.0740740740740741,
-                               0.0740740740740741,
-                               0.0740740740740741,
-                               0.0740740740740741,
-                               0.0740740740740741,
-                               0.0754716981132075,
-                               0.0754716981132075,
-                               0.0740740740740741,
-                               0.0740740740740741,
-                               0.0740740740740741,
-                               0.0740740740740741,
-                               0.0754716981132075,
-                               0.0754716981132075,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0784313725490196,
-                               0.0800000000000000,
-                               0.0800000000000000,
-                               0.0816326530612245,
-                               0.1020408163265310,
-                               0.1020408163265310,
-                               0.1020408163265310,
-                               0.1020408163265310,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.1000000000000000,
-                               0.1020408163265310,
-                               0.1041666666666670,
-                               0.1224489795918370,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1372549019607840,
-                               0.1372549019607840,
-                               0.1372549019607840,
-                               0.1372549019607840,
-                               0.1372549019607840,
-                               0.1372549019607840,
-                               0.1538461538461540,
-                               0.1698113207547170,
-                               0.1698113207547170,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1509433962264150,
-                               0.1509433962264150,
-                               0.1509433962264150,
-                               0.1509433962264150,
-                               0.1509433962264150,
-                               0.1346153846153850,
-                               0.1509433962264150,
-                               0.1509433962264150,
-                               0.1481481481481480,
-                               0.1481481481481480,
-                               0.1481481481481480,
-                               0.1481481481481480,
-                               0.1481481481481480,
-                               0.1481481481481480,
-                               0.1481481481481480,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1481481481481480,
-                               0.1481481481481480,
-                               0.1636363636363640,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1754385964912280,
-                               0.1754385964912280,
-                               0.1754385964912280,
-                               0.1754385964912280,
-                               0.1896551724137930,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.2037037037037040,
-                               0.2037037037037040,
-                               0.2037037037037040,
-                               0.2037037037037040,
-                               0.2037037037037040,
-                               0.2037037037037040,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.2037037037037040,
-                               0.2037037037037040,
-                               0.2037037037037040,
-                               0.2037037037037040,
-                               0.2075471698113210,
-                               0.2075471698113210,
-                               0.2075471698113210,
-                               0.2115384615384620,
-                               0.2115384615384620,
-                               0.2115384615384620,
-                               0.2115384615384620,
-                               0.2115384615384620,
-                               0.2264150943396230,
-                               0.2264150943396230,
-                               0.2264150943396230,
-                               0.2264150943396230,
-                               0.2307692307692310,
-                               0.2307692307692310,
-                               0.2352941176470590,
-                               0.2307692307692310,
-                               0.2307692307692310,
-                               0.2307692307692310,
-                               0.2307692307692310,
-                               0.2307692307692310,
-                               0.2307692307692310,
-                               0.2307692307692310,
-                               0.2352941176470590,
-                               0.2352941176470590,
-                               0.2352941176470590,
-                               0.2500000000000000,
-                               0.2549019607843140,
-                               0.2692307692307690,
-                               0.2692307692307690,
-                               0.2692307692307690,
-                               0.2692307692307690,
-                               0.2692307692307690,
-                               0.2692307692307690,
-                               0.2800000000000000,
-                               0.2857142857142860,
-                               0.2857142857142860,
-                               0.2857142857142860,
-                               0.2857142857142860,
-                               0.2857142857142860,
-                               0.2916666666666670,
-                               0.2857142857142860,
-                               0.2857142857142860,
-                               0.2857142857142860,
-                               0.2916666666666670,
-                               0.3000000000000000,
-                               0.3000000000000000,
-                               0.3137254901960780,
-                               0.3137254901960780,
-                               0.3200000000000000,
-                               0.3200000000000000,
-                               0.3061224489795920,
-                               0.3061224489795920,
-                               0.3061224489795920,
-                               0.3125000000000000,
-                               0.3125000000000000,
-                               0.3125000000000000,
-                               0.3061224489795920,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3269230769230770,
-                               0.3269230769230770,
-                               0.3269230769230770,
-                               0.3269230769230770,
-                               0.3541666666666670,
-                               0.3541666666666670,
-                               0.3617021276595740,
-                               0.3750000000000000,
-                               0.3829787234042550,
-                               0.3913043478260870,
-                               0.4000000000000000,
-                               0.4000000000000000,
-                               0.4000000000000000,
-                               0.4000000000000000,
-                               0.3913043478260870,
-                               0.3913043478260870,
-                               0.4042553191489360,
-                               0.4130434782608700,
-                               0.4318181818181820,
-                               0.4444444444444440,
-                               0.4545454545454550,
-                               0.4545454545454550,
-                               0.4761904761904760,
-                               0.4651162790697670,
-                               0.4545454545454550,
-                               0.4545454545454550,
-                               0.4651162790697670,
-                               0.4545454545454550,
-                               0.4444444444444440,
-                               0.4444444444444440,
-                               0.4444444444444440,
-                               0.4444444444444440,
-                               0.4444444444444440,
-                               0.4444444444444440,
-                               0.4545454545454550,
-                               0.4418604651162790,
-                               0.4523809523809520,
-                               0.4523809523809520,
-                               0.4878048780487810,
-                               0.4878048780487810,
-                               0.5000000000000000,
-                               0.5000000000000000,
-                               0.5116279069767440,
-                               0.5116279069767440,
-                               0.5227272727272730,
-                               0.5227272727272730,
-                               0.5348837209302320,
-                               0.5348837209302320,
-                               0.5348837209302320,
-                               0.5348837209302320,
-                               0.5348837209302320,
-                               0.5476190476190480,
-                               0.5348837209302320,
-                               0.5348837209302320,
-                               0.5476190476190480,
-                               0.5476190476190480,
-                               0.5454545454545450,
-                               0.5714285714285710,
-                               0.5909090909090910,
-                               0.5777777777777780,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6170212765957450,
-                               0.6304347826086960,
-                               0.6250000000000000,
-                               0.6250000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.5882352941176470,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6078431372549020,
-                               0.5961538461538460,
-                               0.5961538461538460,
-                               0.5961538461538460,
-                               0.5849056603773580,
-                               0.5849056603773580,
-                               0.5849056603773580,
-                               0.6037735849056600,
-                               0.6153846153846150,
-                               0.6274509803921570,
-                               0.6274509803921570,
-                               0.6274509803921570,
-                               0.6274509803921570,
-                               0.6530612244897960,
-                               0.6530612244897960,
-                               0.6530612244897960,
-                               0.6530612244897960,
-                               0.6530612244897960,
-                               0.6400000000000000,
-                               0.6400000000000000,
-                               0.6400000000000000,
-                               0.6400000000000000,
-                               0.6400000000000000,
-                               0.6400000000000000,
-                               0.6400000000000000,
-                               0.6326530612244900,
-                               0.6400000000000000,
-                               0.6400000000000000,
-                               0.6400000000000000,
-                               0.6400000000000000,
-                               0.6400000000000000,
-                               0.6400000000000000,
-                               0.6400000000000000,
-                               0.6400000000000000,
-                               0.6530612244897960,
-                               0.6530612244897960,
-                               0.6600000000000000,
-                               0.6734693877551020,
-                               0.6734693877551020,
-                               0.6734693877551020,
-                               0.6734693877551020,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6734693877551020,
-                               0.6875000000000000,
-                               0.6875000000000000,
-                               0.6875000000000000,
-                               0.6875000000000000,
-                               0.7021276595744680,
-                               0.7021276595744680,
-                               0.7021276595744680,
-                               0.7083333333333330,
-                               0.7083333333333330,
-                               0.7083333333333330,
-                               0.7021276595744680,
-                               0.7021276595744680,
-                               0.7021276595744680,
-                               0.6875000000000000,
-                               0.6875000000000000,
-                               0.6875000000000000,
-                               0.6875000000000000,
-                               0.6600000000000000,
-                               0.6470588235294120,
-                               0.6538461538461540,
-                               0.6538461538461540,
-                               0.6538461538461540,
-                               0.6603773584905660,
-                               0.6415094339622640,
-                               0.6415094339622640,
-                               0.6415094339622640,
-                               0.6415094339622640,
-                               0.6415094339622640,
-                               0.6415094339622640,
-                               0.6603773584905660,
-                               0.6603773584905660,
-                               0.6730769230769230,
-                               0.6730769230769230,
-                               0.6730769230769230,
-                               0.6730769230769230,
-                               0.6862745098039220,
-                               0.6862745098039220,
-                               0.6862745098039220,
-                               0.6862745098039220,
-                               0.6862745098039220,
-                               0.6862745098039220,
-                               0.6862745098039220,
-                               0.6862745098039220,
-                               0.6862745098039220,
-                               0.6862745098039220,
-                               0.6862745098039220,
-                               0.6862745098039220,
-                               0.7000000000000000,
-                               0.7000000000000000,
-                               0.7000000000000000,
-                               0.7000000000000000,
-                               0.7000000000000000,
-                               0.7000000000000000,
-                               0.7000000000000000,
-                               0.7000000000000000,
-                               0.7000000000000000,
-                               0.7000000000000000,
-                               0.7058823529411760,
-                               0.7058823529411760,
-                               0.7200000000000000,
-                               0.7200000000000000,
-                               0.7200000000000000,
-                               0.7254901960784310,
-                               0.7254901960784310,
-                               0.7254901960784310,
-                               0.7254901960784310,
-                               0.7254901960784310,
-                               0.7307692307692310,
-                               0.7307692307692310,
-                               0.7307692307692310,
-                               0.7307692307692310,
-                               0.7358490566037730,
-                               0.7358490566037730,
-                               0.7358490566037730,
-                               0.7358490566037730,
-                               0.7358490566037730,
-                               0.7222222222222220,
-                               0.7222222222222220,
-                               0.7222222222222220,
-                               0.7222222222222220,
-                               0.7222222222222220,
-                               0.7222222222222220,
-                               0.7222222222222220,
-                               0.7272727272727270,
-                               0.7142857142857140,
-                               0.7272727272727270,
-                               0.7272727272727270,
-                               0.7272727272727270,
-                               0.7272727272727270,
-                               0.7142857142857140,
-                               0.7142857142857140,
-                               0.7142857142857140,
-                               0.7142857142857140,
-                               0.7090909090909090,
-                               0.6964285714285710,
-                               0.6964285714285710,
-                               0.7090909090909090,
-                               0.7090909090909090,
-                               0.7090909090909090,
-                               0.7090909090909090,
-                               0.7222222222222220,
-                               0.7222222222222220,
-                               0.7358490566037730,
-                               0.7358490566037730,
-                               0.7358490566037730,
-                               0.7358490566037730,
-                               0.7307692307692310,
-                               0.7450980392156860,
-                               0.7450980392156860,
-                               0.7600000000000000,
-                               0.7600000000000000,
-                               0.7647058823529410,
-                               0.7647058823529410,
-                               0.7358490566037730,
-                               0.7407407407407410,
-                               0.7407407407407410,
-                               0.7407407407407410,
-                               0.7407407407407410,
-                               0.7547169811320760,
-                               0.7647058823529410,
-                               0.7647058823529410,
-                               0.7647058823529410,
-                               0.7647058823529410,
-                               0.7647058823529410,
-                               0.7647058823529410,
-                               0.7547169811320760,
-                               0.7547169811320760,
-                               0.7592592592592590,
-                               0.7592592592592590,
-                               0.7592592592592590,
-                               0.7592592592592590,
-                               0.7592592592592590,
-                               0.7592592592592590,
-                               0.7592592592592590,
-                               0.7592592592592590,
-                               0.7592592592592590,
-                               0.7592592592592590,
-                               0.7735849056603770,
-                               0.7735849056603770,
-                               0.7735849056603770,
-                               0.7735849056603770,
-                               0.7735849056603770,
-                               0.7735849056603770,
-                               0.7735849056603770,
-                               0.7777777777777780,
-                               0.7818181818181820,
-                               0.7818181818181820,
-                               0.7818181818181820,
-                               0.7818181818181820,
-                               0.7818181818181820,
-                               0.7818181818181820,
-                               0.7818181818181820,
-                               0.7818181818181820,
-                               0.7818181818181820,
-                               0.7894736842105260,
-                               0.7894736842105260,
-                               0.7894736842105260,
-                               0.7894736842105260,
-                               0.7894736842105260,
-                               0.7894736842105260,
-                               0.7894736842105260,
-                               0.7931034482758620,
-                               0.7931034482758620,
-                               0.7931034482758620,
-                               0.7931034482758620,
-                               0.7931034482758620,
-                               0.7931034482758620,
-                               0.7931034482758620,
-                               0.7931034482758620,
-                               0.7931034482758620,
-                               0.7931034482758620,
-                               0.7931034482758620,
-                               0.7931034482758620,
-                               0.7931034482758620,
-                               0.7931034482758620,
-                               0.7931034482758620,
-                               0.7931034482758620,
-                               0.7931034482758620,
-                               0.7931034482758620,
-                               0.7931034482758620,
-                               0.7931034482758620,
-                               0.7931034482758620,
-                               0.7931034482758620,
-                               0.7931034482758620,
-                               0.7931034482758620,
-                               0.8070175438596490,
-                               0.8070175438596490,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8518518518518520,
-                               0.8518518518518520,
-                               0.8679245283018870,
-                               0.8679245283018870,
-                               0.8679245283018870,
-                               0.8679245283018870,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8545454545454550,
-                               0.8545454545454550,
-                               0.8545454545454550,
-                               0.8545454545454550,
-                               0.8545454545454550,
-                               0.8545454545454550,
-                               0.8545454545454550,
-                               0.8545454545454550,
-                               0.8545454545454550,
-                               0.8545454545454550,
-                               0.8545454545454550,
-                               0.8545454545454550,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8679245283018870,
-                               0.8679245283018870,
-                               0.8679245283018870,
-                               0.8679245283018870,
-                               0.8679245283018870,
-                               0.8679245283018870,
-                               0.8679245283018870,
-                               0.8679245283018870,
-                               0.8679245283018870,
-                               0.8679245283018870,
-                               0.8679245283018870,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8909090909090910,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.9038461538461540,
-                               0.9038461538461540,
-                               0.9038461538461540,
-                               0.9038461538461540,
-                               0.9038461538461540,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8679245283018870,
-                               0.8679245283018870,
-                               0.8679245283018870,
-                               0.8679245283018870,
-                               0.8679245283018870,
-                               0.8679245283018870,
-                               0.8679245283018870,
-                               0.8679245283018870,
-                               0.8679245283018870,
-                               0.8679245283018870,
-                               0.8653846153846150,
-                               0.8653846153846150,
-                               0.8653846153846150,
-                               0.8653846153846150,
-                               0.8653846153846150,
-                               0.8653846153846150,
-                               0.8653846153846150,
-                               0.8653846153846150,
-                               0.8653846153846150,
-                               0.8653846153846150,
-                               0.8653846153846150,
-                               0.8653846153846150,
-                               0.8653846153846150,
-                               0.8653846153846150,
-                               0.8653846153846150,
-                               0.8653846153846150,
-                               0.8653846153846150,
-                               0.8653846153846150,
-                               0.8653846153846150,
-                               0.8653846153846150,
-                               0.8653846153846150,
-                               0.8627450980392160,
-                               0.8627450980392160,
-                               0.8627450980392160,
-                               0.8627450980392160,
-                               0.8627450980392160,
-                               0.8627450980392160,
-                               0.8823529411764710,
-                               0.8823529411764710,
-                               0.8823529411764710,
-                               0.8823529411764710,
-                               0.8823529411764710,
-                               0.8823529411764710,
-                               0.8653846153846150,
-                               0.8653846153846150,
-                               0.8653846153846150,
-                               0.8653846153846150,
-                               0.8653846153846150,
-                               0.8653846153846150,
-                               0.8653846153846150,
-                               0.8627450980392160,
-                               0.8627450980392160,
-                               0.8627450980392160,
-                               0.8627450980392160,
-                               0.8627450980392160,
-                               0.8627450980392160,
-                               0.8627450980392160,
-                               0.8627450980392160,
-                               0.8627450980392160,
-                               0.8627450980392160,
-                               0.8627450980392160,
-                               0.8800000000000000,
-                               0.8800000000000000,
-                               0.8775510204081630,
-                               0.8775510204081630,
-                               0.8775510204081630,
-                               0.8775510204081630,
-                               0.8775510204081630,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8775510204081630,
-                               0.8958333333333330,
-                               0.8958333333333330,
-                               0.8958333333333330,
-                               0.8958333333333330,
-                               0.8775510204081630,
-                               0.8775510204081630,
-                               0.8775510204081630,
-                               0.8775510204081630,
-                               0.8775510204081630,
-                               0.8775510204081630,
-                               0.8775510204081630,
-                               0.8775510204081630,
-                               0.8800000000000000,
-                               0.8800000000000000,
-                               0.8800000000000000,
-                               0.8800000000000000,
-                               0.8800000000000000,
-                               0.8800000000000000,
-                               0.8800000000000000,
-                               0.8800000000000000,
-                               0.8800000000000000,
-                               0.8800000000000000,
-                               0.8979591836734690,
-                               0.8979591836734690,
-                               0.8979591836734690,
-                               0.8979591836734690,
-                               0.8979591836734690,
-                               0.8979591836734690,
-                               0.8979591836734690,
-                               0.8979591836734690,
-                               0.8979591836734690,
-                               0.8979591836734690,
-                               0.8979591836734690,
-                               0.8979591836734690,
-                               0.8800000000000000,
-                               0.8627450980392160,
-                               0.8571428571428570,
-                               0.8541666666666670,
-                               0.8541666666666670,
-                               0.8510638297872340,
-                               0.8478260869565220,
-                               0.8478260869565220,
-                               0.8478260869565220,
-                               0.8297872340425530,
-                               0.8125000000000000,
-                               0.7959183673469390,
-                               0.7916666666666670,
-                               0.7916666666666670,
-                               0.7916666666666670,
-                               0.7916666666666670,
-                               0.7916666666666670,
-                               0.7872340425531920,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7659574468085110,
-                               0.7659574468085110,
-                               0.7608695652173910,
-                               0.7608695652173910,
-                               0.7608695652173910,
-                               0.7608695652173910,
-                               0.7446808510638300,
-                               0.7446808510638300,
-                               0.7391304347826090,
-                               0.7391304347826090,
-                               0.7555555555555560,
-                               0.7727272727272730,
-                               0.7906976744186050,
-                               0.7954545454545450,
-                               0.7954545454545450,
-                               0.7954545454545450,
-                               0.7954545454545450,
-                               0.7954545454545450,
-                               0.7777777777777780,
-                               0.7777777777777780,
-                               0.7777777777777780,
-                               0.7777777777777780,
-                               0.7608695652173910,
-                               0.7608695652173910,
-                               0.7777777777777780,
-                               0.7777777777777780,
-                               0.7777777777777780,
-                               0.7777777777777780,
-                               0.7777777777777780,
-                               0.7777777777777780,
-                               0.7777777777777780,
-                               0.7777777777777780,
-                               0.7777777777777780,
-                               0.7777777777777780,
-                               0.7777777777777780,
-                               0.7777777777777780,
-                               0.7608695652173910,
-                               0.7608695652173910,
-                               0.7608695652173910,
-                               0.7608695652173910,
-                               0.7608695652173910,
-                               0.7608695652173910,
-                               0.7446808510638300,
-                               0.7291666666666670,
-                               0.7291666666666670,
-                               0.7291666666666670,
-                               0.7291666666666670,
-                               0.7291666666666670,
-                               0.7446808510638300,
-                               0.7446808510638300,
-                               0.7608695652173910,
-                               0.7608695652173910,
-                               0.7608695652173910,
-                               0.7608695652173910,
-                               0.7608695652173910,
-                               0.7608695652173910,
-                               0.7608695652173910,
-                               0.7446808510638300,
-                               0.7446808510638300,
-                               0.7446808510638300,
-                               0.7555555555555560,
-                               0.7608695652173910,
-                               0.7659574468085110,
-                               0.7659574468085110,
-                               0.7500000000000000,
-                               0.7500000000000000,
-                               0.7346938775510200,
-                               0.7291666666666670,
-                               0.7234042553191490,
-                               0.7291666666666670,
-                               0.7142857142857140,
-                               0.7142857142857140,
-                               0.7446808510638300,
-                               0.7446808510638300,
-                               0.7391304347826090,
-                               0.7391304347826090,
-                               0.7391304347826090,
-                               0.7391304347826090,
-                               0.6938775510204080,
-                               0.7021276595744680,
-                               0.7021276595744680,
-                               0.7021276595744680,
-                               0.7021276595744680,
-                               0.6875000000000000,
-                               0.6875000000000000,
-                               0.6875000000000000,
-                               0.6875000000000000,
-                               0.6808510638297870,
-                               0.6808510638297870,
-                               0.6808510638297870,
-                               0.6808510638297870,
-                               0.7111111111111110,
-                               0.7173913043478260,
-                               0.7111111111111110,
-                               0.7272727272727270,
-                               0.7272727272727270,
-                               0.7209302325581400,
-                               0.6888888888888890,
-                               0.6888888888888890,
-                               0.6888888888888890,
-                               0.6888888888888890,
-                               0.6888888888888890,
-                               0.6739130434782610,
-                               0.6739130434782610,
-                               0.6739130434782610,
-                               0.6808510638297870,
-                               0.6956521739130430,
-                               0.6956521739130430,
-                               0.6956521739130430,
-                               0.6808510638297870,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6734693877551020,
-                               0.6666666666666670,
-                               0.6530612244897960,
-                               0.6400000000000000,
-                               0.6400000000000000,
-                               0.6530612244897960,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6734693877551020,
-                               0.6938775510204080,
-                               0.7000000000000000,
-                               0.7000000000000000,
-                               0.7000000000000000,
-                               0.6862745098039220,
-                               0.6862745098039220,
-                               0.7000000000000000,
-                               0.7000000000000000,
-                               0.7000000000000000,
-                               0.7000000000000000,
-                               0.7000000000000000,
-                               0.7083333333333330,
-                               0.7021276595744680,
-                               0.7021276595744680,
-                               0.6875000000000000,
-                               0.6875000000000000,
-                               0.6875000000000000,
-                               0.7021276595744680,
-                               0.7083333333333330,
-                               0.7083333333333330,
-                               0.6938775510204080,
-                               0.6938775510204080,
-                               0.7083333333333330,
-                               0.6938775510204080,
-                               0.7000000000000000,
-                               0.7000000000000000,
-                               0.6862745098039220,
-                               0.6730769230769230,
-                               0.6666666666666670,
-                               0.6730769230769230,
-                               0.6730769230769230,
-                               0.6792452830188680,
-                               0.6792452830188680,
-                               0.6792452830188680,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6792452830188680,
-                               0.6730769230769230,
-                               0.6730769230769230,
-                               0.6792452830188680,
-                               0.6792452830188680,
-                               0.6792452830188680,
-                               0.6792452830188680,
-                               0.6792452830188680,
-                               0.6792452830188680,
-                               0.6792452830188680,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6545454545454550,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6603773584905660,
-                               0.6603773584905660,
-                               0.6603773584905660,
-                               0.6603773584905660,
-                               0.6603773584905660,
-                               0.6538461538461540,
-                               0.6415094339622640,
-                               0.6415094339622640,
-                               0.6415094339622640,
-                               0.6415094339622640,
-                               0.6415094339622640,
-                               0.6481481481481480,
-                               0.6481481481481480,
-                               0.6481481481481480,
-                               0.6603773584905660,
-                               0.6730769230769230,
-                               0.6862745098039220,
-                               0.6862745098039220,
-                               0.6862745098039220,
-                               0.6730769230769230,
-                               0.6730769230769230,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6800000000000000,
-                               0.6938775510204080,
-                               0.6800000000000000,
-                               0.6862745098039220,
-                               0.6862745098039220,
-                               0.6862745098039220,
-                               0.6730769230769230,
-                               0.6730769230769230,
-                               0.6730769230769230,
-                               0.6730769230769230,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6600000000000000,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6600000000000000,
-                               0.6470588235294120,
-                               0.6470588235294120,
-                               0.6470588235294120,
-                               0.6470588235294120,
-                               0.6400000000000000,
-                               0.6400000000000000,
-                               0.6400000000000000,
-                               0.6400000000000000,
-                               0.6530612244897960,
-                               0.6400000000000000,
-                               0.6400000000000000,
-                               0.6400000000000000,
-                               0.6400000000000000,
-                               0.6326530612244900,
-                               0.6200000000000000,
-                               0.6200000000000000,
-                               0.6200000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.5918367346938780,
-                               0.5918367346938780,
-                               0.5918367346938780,
-                               0.5918367346938780,
-                               0.5918367346938780,
-                               0.6041666666666670,
-                               0.6041666666666670,
-                               0.6041666666666670,
-                               0.6041666666666670,
-                               0.6041666666666670,
-                               0.6041666666666670,
-                               0.6041666666666670,
-                               0.6041666666666670,
-                               0.6041666666666670,
-                               0.6041666666666670,
-                               0.6041666666666670,
-                               0.6041666666666670,
-                               0.6041666666666670,
-                               0.5918367346938780,
-                               0.5918367346938780,
-                               0.5918367346938780,
-                               0.5918367346938780,
-                               0.5957446808510640,
-                               0.5957446808510640,
-                               0.5957446808510640,
-                               0.5957446808510640,
-                               0.5957446808510640,
-                               0.5869565217391300,
-                               0.5957446808510640,
-                               0.5957446808510640,
-                               0.5957446808510640,
-                               0.5957446808510640,
-                               0.5957446808510640,
-                               0.5833333333333330,
-                               0.5625000000000000,
-                               0.5625000000000000,
-                               0.5625000000000000,
-                               0.5625000000000000,
-                               0.5625000000000000,
-                               0.5625000000000000,
-                               0.5531914893617020,
-                               0.5531914893617020,
-                               0.5531914893617020,
-                               0.5652173913043480,
-                               0.5652173913043480,
-                               0.5652173913043480,
-                               0.5652173913043480,
-                               0.5652173913043480,
-                               0.5434782608695650,
-                               0.5434782608695650,
-                               0.5434782608695650,
-                               0.5555555555555560,
-                               0.5555555555555560,
-                               0.5555555555555560,
-                               0.5555555555555560,
-                               0.5555555555555560,
-                               0.5555555555555560,
-                               0.5555555555555560,
-                               0.5555555555555560,
-                               0.5652173913043480,
-                               0.5652173913043480,
-                               0.5652173913043480,
-                               0.5744680851063830,
-                               0.5744680851063830,
-                               0.5744680851063830,
-                               0.5744680851063830,
-                               0.5744680851063830,
-                               0.5869565217391300,
-                               0.5869565217391300,
-                               0.5744680851063830,
-                               0.5744680851063830,
-                               0.5744680851063830,
-                               0.5744680851063830,
-                               0.5957446808510640,
-                               0.5957446808510640,
-                               0.5957446808510640,
-                               0.5957446808510640,
-                               0.5957446808510640,
-                               0.5833333333333330,
-                               0.5833333333333330,
-                               0.5714285714285710,
-                               0.5833333333333330,
-                               0.5833333333333330,
-                               0.5833333333333330,
-                               0.5833333333333330,
-                               0.5833333333333330,
-                               0.5833333333333330,
-                               0.5833333333333330,
-                               0.5833333333333330,
-                               0.5833333333333330,
-                               0.5833333333333330,
-                               0.5833333333333330,
-                               0.5833333333333330,
-                               0.5800000000000000,
-                               0.5918367346938780,
-                               0.5918367346938780,
-                               0.5918367346938780,
-                               0.5918367346938780,
-                               0.5918367346938780,
-                               0.6000000000000000,
-                               0.5882352941176470,
-                               0.5961538461538460,
-                               0.5849056603773580,
-                               0.5925925925925930,
-                               0.5925925925925930,
-                               0.5849056603773580,
-                               0.5849056603773580,
-                               0.5849056603773580,
-                               0.5849056603773580,
-                               0.5849056603773580,
-                               0.5961538461538460,
-                               0.6037735849056600,
-                               0.5961538461538460,
-                               0.5961538461538460,
-                               0.5961538461538460,
-                               0.5961538461538460,
-                               0.5961538461538460,
-                               0.6122448979591840,
-                               0.6078431372549020,
-                               0.6078431372549020,
-                               0.6200000000000000,
-                               0.6200000000000000,
-                               0.6200000000000000,
-                               0.6200000000000000,
-                               0.6274509803921570,
-                               0.6274509803921570,
-                               0.6274509803921570,
-                               0.6274509803921570,
-                               0.6153846153846150,
-                               0.6037735849056600,
-                               0.5961538461538460,
-                               0.5961538461538460,
-                               0.5849056603773580,
-                               0.5849056603773580,
-                               0.5849056603773580,
-                               0.5818181818181820,
-                               0.5818181818181820,
-                               0.5818181818181820,
-                               0.5818181818181820,
-                               0.5818181818181820,
-                               0.5925925925925930,
-                               0.6037735849056600,
-                               0.6037735849056600,
-                               0.6037735849056600,
-                               0.5925925925925930,
-                               0.5925925925925930,
-                               0.5925925925925930,
-                               0.6000000000000000,
-                               0.5892857142857140,
-                               0.5892857142857140,
-                               0.5964912280701750,
-                               0.5964912280701750,
-                               0.5964912280701750,
-                               0.5964912280701750,
-                               0.5964912280701750,
-                               0.5964912280701750,
-                               0.5964912280701750,
-                               0.5964912280701750,
-                               0.5892857142857140,
-                               0.5892857142857140,
-                               0.5892857142857140,
-                               0.5892857142857140,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6071428571428570,
-                               0.6181818181818180,
-                               0.6181818181818180,
-                               0.6181818181818180,
-                               0.6181818181818180,
-                               0.6181818181818180,
-                               0.6296296296296300,
-                               0.6181818181818180,
-                               0.6181818181818180,
-                               0.6181818181818180,
-                               0.6111111111111110,
-                               0.6037735849056600,
-                               0.5925925925925930,
-                               0.5925925925925930,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6111111111111110,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6111111111111110,
-                               0.6111111111111110,
-                               0.6111111111111110,
-                               0.6111111111111110,
-                               0.6037735849056600,
-                               0.6037735849056600,
-                               0.6037735849056600,
-                               0.5925925925925930,
-                               0.6000000000000000,
-                               0.6037735849056600,
-                               0.6153846153846150,
-                               0.6153846153846150,
-                               0.6274509803921570,
-                               0.6274509803921570,
-                               0.6346153846153850,
-                               0.6346153846153850,
-                               0.6226415094339620,
-                               0.6226415094339620,
-                               0.6296296296296300,
-                               0.6296296296296300,
-                               0.6296296296296300,
-                               0.6415094339622640,
-                               0.6226415094339620,
-                               0.6226415094339620,
-                               0.6346153846153850,
-                               0.6346153846153850,
-                               0.6346153846153850,
-                               0.6346153846153850,
-                               0.6400000000000000,
-                               0.6400000000000000,
-                               0.6400000000000000,
-                               0.6400000000000000,
-                               0.6400000000000000,
-                               0.6400000000000000,
-                               0.6470588235294120,
-                               0.6470588235294120,
-                               0.6470588235294120,
-                               0.6470588235294120,
-                               0.6470588235294120,
-                               0.6415094339622640,
-                               0.6415094339622640,
-                               0.6415094339622640,
-                               0.6481481481481480,
-                               0.6481481481481480,
-                               0.6481481481481480,
-                               0.6481481481481480,
-                               0.6415094339622640,
-                               0.6415094339622640,
-                               0.6296296296296300,
-                               0.6296296296296300,
-                               0.6296296296296300,
-                               0.6481481481481480,
-                               0.6545454545454550,
-                               0.6545454545454550,
-                               0.6428571428571430,
-                               0.6428571428571430,
-                               0.6428571428571430,
-                               0.6428571428571430,
-                               0.6491228070175440,
-                               0.6491228070175440,
-                               0.6491228070175440,
-                               0.6491228070175440,
-                               0.6607142857142860,
-                               0.6666666666666670,
-                               0.6603773584905660,
-                               0.6538461538461540,
-                               0.6538461538461540,
-                               0.6538461538461540,
-                               0.6470588235294120,
-                               0.6346153846153850,
-                               0.6346153846153850,
-                               0.6346153846153850,
-                               0.6346153846153850,
-                               0.6346153846153850,
-                               0.6470588235294120,
-                               0.6470588235294120,
-                               0.6734693877551020,
-                               0.6734693877551020,
-                               0.6734693877551020,
-                               0.6734693877551020,
-                               0.6734693877551020,
-                               0.6666666666666670,
-                               0.6734693877551020,
-                               0.6734693877551020,
-                               0.6734693877551020,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6530612244897960,
-                               0.6530612244897960,
-                               0.6530612244897960,
-                               0.6530612244897960,
-                               0.6530612244897960,
-                               0.6458333333333330,
-                               0.6458333333333330,
-                               0.6458333333333330,
-                               0.6458333333333330,
-                               0.6458333333333330,
-                               0.6458333333333330,
-                               0.6458333333333330,
-                               0.6458333333333330,
-                               0.6458333333333330,
-                               0.6458333333333330,
-                               0.6458333333333330,
-                               0.6326530612244900,
-                               0.6326530612244900,
-                               0.6326530612244900,
-                               0.6200000000000000,
-                               0.6326530612244900,
-                               0.6326530612244900,
-                               0.6326530612244900,
-                               0.6400000000000000,
-                               0.6400000000000000,
-                               0.6470588235294120,
-                               0.6470588235294120,
-                               0.6470588235294120,
-                               0.6470588235294120,
-                               0.6346153846153850,
-                               0.6346153846153850,
-                               0.6200000000000000,
-                               0.6200000000000000,
-                               0.6200000000000000,
-                               0.6200000000000000,
-                               0.6200000000000000,
-                               0.6326530612244900,
-                               0.6530612244897960,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6530612244897960,
-                               0.6600000000000000,
-                               0.6600000000000000,
-                               0.6470588235294120,
-                               0.6470588235294120,
-                               0.6470588235294120,
-                               0.6470588235294120,
-                               0.6470588235294120,
-                               0.6400000000000000,
-                               0.6400000000000000,
-                               0.6530612244897960,
-                               0.6530612244897960,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6530612244897960,
-                               0.6530612244897960,
-                               0.6530612244897960,
-                               0.6530612244897960,
-                               0.6400000000000000,
-                               0.6274509803921570,
-                               0.6153846153846150,
-                               0.6153846153846150,
-                               0.6153846153846150,
-                               0.6153846153846150,
-                               0.6037735849056600,
-                               0.6037735849056600,
-                               0.5961538461538460,
-                               0.6037735849056600,
-                               0.6037735849056600,
-                               0.6037735849056600,
-                               0.6037735849056600,
-                               0.5961538461538460,
-                               0.5740740740740740,
-                               0.5740740740740740,
-                               0.5740740740740740,
-                               0.5740740740740740,
-                               0.5849056603773580,
-                               0.5849056603773580,
-                               0.5849056603773580,
-                               0.5849056603773580,
-                               0.5849056603773580,
-                               0.5849056603773580,
-                               0.5849056603773580,
-                               0.6000000000000000,
-                               0.6181818181818180,
-                               0.6181818181818180,
-                               0.6111111111111110,
-                               0.6111111111111110,
-                               0.6111111111111110,
-                               0.6111111111111110,
-                               0.6037735849056600,
-                               0.6111111111111110,
-                               0.6111111111111110,
-                               0.6111111111111110,
-                               0.6111111111111110,
-                               0.6111111111111110,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6111111111111110,
-                               0.6296296296296300,
-                               0.6296296296296300,
-                               0.6296296296296300,
-                               0.6296296296296300,
-                               0.6296296296296300,
-                               0.6296296296296300,
-                               0.6296296296296300,
-                               0.6415094339622640,
-                               0.6415094339622640,
-                               0.6415094339622640,
-                               0.6415094339622640,
-                               0.6415094339622640,
-                               0.6415094339622640,
-                               0.6415094339622640,
-                               0.6415094339622640,
-                               0.6415094339622640,
-                               0.6415094339622640,
-                               0.6415094339622640,
-                               0.6226415094339620,
-                               0.6226415094339620,
-                               0.6037735849056600,
-                               0.6037735849056600,
-                               0.6111111111111110,
-                               0.6181818181818180,
-                               0.6071428571428570,
-                               0.5964912280701750,
-                               0.5964912280701750,
-                               0.5964912280701750,
-                               0.5862068965517240,
-                               0.5862068965517240,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.5892857142857140,
-                               0.5892857142857140,
-                               0.5892857142857140,
-                               0.5892857142857140,
-                               0.5892857142857140,
-                               0.5892857142857140,
-                               0.5892857142857140,
-                               0.5892857142857140,
-                               0.5892857142857140,
-                               0.5892857142857140,
-                               0.5789473684210530,
-                               0.5892857142857140,
-                               0.5892857142857140,
-                               0.5892857142857140,
-                               0.5892857142857140,
-                               0.5892857142857140,
-                               0.5892857142857140,
-                               0.5789473684210530,
-                               0.5892857142857140,
-                               0.5892857142857140,
-                               0.5892857142857140,
-                               0.5892857142857140,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6111111111111110,
-                               0.6181818181818180,
-                               0.6181818181818180,
-                               0.6415094339622640,
-                               0.6415094339622640,
-                               0.6538461538461540,
-                               0.6538461538461540,
-                               0.6862745098039220,
-                               0.7000000000000000,
-                               0.6862745098039220,
-                               0.6862745098039220,
-                               0.6862745098039220,
-                               0.6862745098039220,
-                               0.7000000000000000,
-                               0.7000000000000000,
-                               0.7000000000000000,
-                               0.7000000000000000,
-                               0.7000000000000000,
-                               0.7000000000000000,
-                               0.7200000000000000,
-                               0.7346938775510200,
-                               0.6923076923076920,
-                               0.6923076923076920,
-                               0.6923076923076920,
-                               0.6923076923076920,
-                               0.7058823529411760,
-                               0.7058823529411760,
-                               0.7058823529411760,
-                               0.7058823529411760,
-                               0.7058823529411760,
-                               0.7058823529411760,
-                               0.6792452830188680,
-                               0.6792452830188680,
-                               0.6792452830188680,
-                               0.6792452830188680,
-                               0.6792452830188680,
-                               0.6792452830188680,
-                               0.6909090909090910,
-                               0.6909090909090910,
-                               0.7037037037037040,
-                               0.7037037037037040,
-                               0.7037037037037040,
-                               0.7037037037037040,
-                               0.7037037037037040,
-                               0.7037037037037040,
-                               0.7037037037037040,
-                               0.7037037037037040,
-                               0.7037037037037040,
-                               0.7037037037037040,
-                               0.7037037037037040,
-                               0.7090909090909090,
-                               0.7222222222222220,
-                               0.7358490566037730,
-                               0.7222222222222220,
-                               0.7222222222222220,
-                               0.7272727272727270,
-                               0.7142857142857140,
-                               0.7192982456140350,
-                               0.7241379310344830,
-                               0.7241379310344830,
-                               0.7241379310344830,
-                               0.7241379310344830,
-                               0.7241379310344830,
-                               0.7368421052631580,
-                               0.7368421052631580,
-                               0.7368421052631580,
-                               0.7413793103448280,
-                               0.7543859649122810,
-                               0.7543859649122810,
-                               0.7543859649122810,
-                               0.7543859649122810,
-                               0.7678571428571430,
-                               0.7678571428571430,
-                               0.7678571428571430,
-                               0.7678571428571430,
-                               0.7719298245614030,
-                               0.7719298245614030,
-                               0.7758620689655170,
-                               0.7758620689655170,
-                               0.7758620689655170,
-                               0.7758620689655170,
-                               0.7719298245614030,
-                               0.7719298245614030,
-                               0.7719298245614030,
-                               0.7719298245614030,
-                               0.7719298245614030,
-                               0.7719298245614030,
-                               0.7719298245614030,
-                               0.7719298245614030,
-                               0.7857142857142860,
-                               0.7857142857142860,
-                               0.7931034482758620,
-                               0.7931034482758620,
-                               0.7931034482758620,
-                               0.7931034482758620,
-                               0.8070175438596490,
-                               0.8070175438596490,
-                               0.8070175438596490,
-                               0.8070175438596490,
-                               0.8070175438596490,
-                               0.8070175438596490,
-                               0.8070175438596490,
-                               0.8070175438596490,
-                               0.8070175438596490,
-                               0.8070175438596490,
-                               0.8070175438596490,
-                               0.8070175438596490,
-                               0.8070175438596490,
-                               0.8070175438596490,
-                               0.8070175438596490,
-                               0.8070175438596490,
-                               0.8070175438596490,
-                               0.8070175438596490,
-                               0.8070175438596490,
-                               0.8070175438596490,
-                               0.8070175438596490,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8070175438596490,
-                               0.8070175438596490,
-                               0.8070175438596490,
-                               0.8070175438596490,
-                               0.8035714285714290,
-                               0.8035714285714290,
-                               0.8035714285714290,
-                               0.8035714285714290,
-                               0.8035714285714290,
-                               0.8035714285714290,
-                               0.8035714285714290,
-                               0.8035714285714290,
-                               0.8035714285714290,
-                               0.8035714285714290,
-                               0.8035714285714290,
-                               0.8035714285714290,
-                               0.8035714285714290,
-                               0.8035714285714290,
-                               0.8035714285714290,
-                               0.8035714285714290,
-                               0.8035714285714290,
-                               0.8035714285714290,
-                               0.8035714285714290,
-                               0.8035714285714290,
-                               0.8181818181818180,
-                               0.8181818181818180,
-                               0.8181818181818180,
-                               0.8181818181818180,
-                               0.8181818181818180,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8245614035087720,
-                               0.8245614035087720,
-                               0.8245614035087720,
-                               0.8245614035087720,
-                               0.8245614035087720,
-                               0.8245614035087720,
-                               0.8245614035087720,
-                               0.8245614035087720,
-                               0.8245614035087720,
-                               0.8245614035087720,
-                               0.8245614035087720,
-                               0.8245614035087720,
-                               0.8245614035087720,
-                               0.8245614035087720,
-                               0.8103448275862070,
-                               0.8103448275862070,
-                               0.8103448275862070,
-                               0.8103448275862070,
-                               0.8103448275862070,
-                               0.8103448275862070,
-                               0.8245614035087720,
-                               0.8245614035087720,
-                               0.8245614035087720,
-                               0.8245614035087720,
-                               0.8245614035087720,
-                               0.8245614035087720,
-                               0.8245614035087720,
-                               0.8245614035087720,
-                               0.8245614035087720,
-                               0.8245614035087720,
-                               0.8245614035087720,
-                               0.8245614035087720,
-                               0.8275862068965520,
-                               0.8275862068965520,
-                               0.8275862068965520,
-                               0.8275862068965520,
-                               0.8275862068965520,
-                               0.8275862068965520,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8363636363636360,
-                               0.8333333333333330,
-                               0.8333333333333330,
-                               0.8333333333333330,
-                               0.8333333333333330,
-                               0.8301886792452830,
-                               0.8301886792452830,
-                               0.8301886792452830,
-                               0.8301886792452830,
-                               0.8301886792452830,
-                               0.8301886792452830,
-                               0.8301886792452830,
-                               0.8301886792452830,
-                               0.8301886792452830,
-                               0.8301886792452830,
-                               0.8301886792452830,
-                               0.8301886792452830,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8235294117647060,
-                               0.8235294117647060,
-                               0.8235294117647060,
-                               0.8235294117647060,
-                               0.8235294117647060,
-                               0.8235294117647060,
-                               0.8235294117647060,
-                               0.8235294117647060,
-                               0.8235294117647060,
-                               0.8235294117647060,
-                               0.8235294117647060,
-                               0.8235294117647060,
-                               0.8235294117647060,
-                               0.8235294117647060,
-                               0.8235294117647060,
-                               0.8235294117647060,
-                               0.8235294117647060,
-                               0.8235294117647060,
-                               0.8400000000000000,
-                               0.8400000000000000,
-                               0.8400000000000000,
-                               0.8400000000000000,
-                               0.8400000000000000,
-                               0.8400000000000000,
-                               0.8431372549019610,
-                               0.8431372549019610,
-                               0.8431372549019610,
-                               0.8431372549019610,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8775510204081630,
-                               0.8775510204081630,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8775510204081630,
-                               0.8775510204081630,
-                               0.8775510204081630,
-                               0.8775510204081630,
-                               0.8936170212765960,
-                               0.8936170212765960,
-                               0.8936170212765960,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8775510204081630,
-                               0.8775510204081630,
-                               0.8775510204081630,
-                               0.8775510204081630,
-                               0.8775510204081630,
-                               0.8775510204081630,
-                               0.8775510204081630,
-                               0.8775510204081630,
-                               0.8775510204081630,
-                               0.8775510204081630,
-                               0.8775510204081630,
-                               0.8775510204081630,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8260869565217390,
-                               0.8260869565217390,
-                               0.8260869565217390,
-                               0.8260869565217390,
-                               0.8222222222222220,
-                               0.8043478260869560,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7755102040816330,
-                               0.7755102040816330,
-                               0.7755102040816330,
-                               0.7755102040816330,
-                               0.7755102040816330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7551020408163260,
-                               0.7551020408163260,
-                               0.7551020408163260,
-                               0.7551020408163260,
-                               0.7551020408163260,
-                               0.7551020408163260,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7346938775510200,
-                               0.7346938775510200,
-                               0.7291666666666670,
-                               0.7291666666666670,
-                               0.7291666666666670,
-                               0.7291666666666670,
-                               0.7291666666666670,
-                               0.7291666666666670,
-                               0.7291666666666670,
-                               0.7291666666666670,
-                               0.7291666666666670,
-                               0.7234042553191490,
-                               0.7083333333333330,
-                               0.7021276595744680,
-                               0.6875000000000000,
-                               0.6734693877551020,
-                               0.6734693877551020,
-                               0.6666666666666670,
-                               0.6808510638297870,
-                               0.6808510638297870,
-                               0.6739130434782610,
-                               0.6739130434782610,
-                               0.6739130434782610,
-                               0.6739130434782610,
-                               0.6666666666666670,
-                               0.6818181818181820,
-                               0.6818181818181820,
-                               0.6818181818181820,
-                               0.6818181818181820,
-                               0.6666666666666670,
-                               0.6739130434782610,
-                               0.6956521739130430,
-                               0.6956521739130430,
-                               0.7045454545454550,
-                               0.7045454545454550,
-                               0.7045454545454550,
-                               0.7209302325581400,
-                               0.7333333333333330,
-                               0.7333333333333330,
-                               0.7173913043478260,
-                               0.7173913043478260,
-                               0.7111111111111110,
-                               0.7111111111111110,
-                               0.7272727272727270,
-                               0.7441860465116280,
-                               0.7441860465116280,
-                               0.7441860465116280,
-                               0.7500000000000000,
-                               0.7333333333333330,
-                               0.7391304347826090,
-                               0.7391304347826090,
-                               0.7446808510638300,
-                               0.7446808510638300,
-                               0.7291666666666670,
-                               0.7500000000000000,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7551020408163260,
-                               0.7551020408163260,
-                               0.7500000000000000,
-                               0.7500000000000000,
-                               0.7500000000000000,
-                               0.7551020408163260,
-                               0.7551020408163260,
-                               0.7600000000000000,
-                               0.7600000000000000,
-                               0.7450980392156860,
-                               0.7450980392156860,
-                               0.7600000000000000,
-                               0.7600000000000000,
-                               0.7600000000000000,
-                               0.7600000000000000,
-                               0.7551020408163260,
-                               0.7551020408163260,
-                               0.7551020408163260,
-                               0.7500000000000000,
-                               0.7500000000000000,
-                               0.7500000000000000,
-                               0.7346938775510200,
-                               0.7346938775510200,
-                               0.7346938775510200,
-                               0.7346938775510200,
-                               0.7346938775510200,
-                               0.7200000000000000,
-                               0.7346938775510200,
-                               0.7346938775510200,
-                               0.7200000000000000,
-                               0.7500000000000000,
-                               0.7500000000000000,
-                               0.7500000000000000,
-                               0.7500000000000000,
-                               0.7500000000000000,
-                               0.7500000000000000,
-                               0.7551020408163260,
-                               0.7500000000000000,
-                               0.7500000000000000,
-                               0.7500000000000000,
-                               0.7500000000000000,
-                               0.7500000000000000,
-                               0.7446808510638300,
-                               0.7391304347826090,
-                               0.7391304347826090,
-                               0.7391304347826090,
-                               0.7391304347826090,
-                               0.7391304347826090,
-                               0.7446808510638300,
-                               0.7291666666666670,
-                               0.7291666666666670,
-                               0.7291666666666670,
-                               0.7291666666666670,
-                               0.7291666666666670,
-                               0.7291666666666670,
-                               0.7291666666666670,
-                               0.7346938775510200,
-                               0.7346938775510200,
-                               0.7346938775510200,
-                               0.7346938775510200,
-                               0.7346938775510200,
-                               0.7200000000000000,
-                               0.7200000000000000,
-                               0.7200000000000000,
-                               0.7200000000000000,
-                               0.7200000000000000,
-                               0.7142857142857140,
-                               0.7083333333333330,
-                               0.7083333333333330,
-                               0.7083333333333330,
-                               0.7083333333333330,
-                               0.7083333333333330,
-                               0.7142857142857140,
-                               0.7083333333333330,
-                               0.7083333333333330,
-                               0.6938775510204080,
-                               0.6938775510204080,
-                               0.7021276595744680,
-                               0.7021276595744680,
-                               0.7173913043478260,
-                               0.7173913043478260,
-                               0.7272727272727270,
-                               0.7272727272727270,
-                               0.7111111111111110,
-                               0.6956521739130430,
-                               0.6956521739130430,
-                               0.6956521739130430,
-                               0.6956521739130430,
-                               0.6956521739130430,
-                               0.6808510638297870,
-                               0.6739130434782610,
-                               0.6739130434782610,
-                               0.6739130434782610,
-                               0.6739130434782610,
-                               0.6739130434782610,
-                               0.6739130434782610,
-                               0.6739130434782610,
-                               0.6739130434782610,
-                               0.6739130434782610,
-                               0.6739130434782610,
-                               0.6739130434782610,
-                               0.6739130434782610,
-                               0.6888888888888890,
-                               0.6818181818181820,
-                               0.6818181818181820,
-                               0.6818181818181820,
-                               0.6818181818181820,
-                               0.6976744186046510,
-                               0.6976744186046510,
-                               0.7209302325581400,
-                               0.7142857142857140,
-                               0.6976744186046510,
-                               0.6976744186046510,
-                               0.6976744186046510,
-                               0.6818181818181820,
-                               0.6666666666666670,
-                               0.6382978723404260,
-                               0.6122448979591840,
-                               0.6122448979591840,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.5882352941176470,
-                               0.5882352941176470,
-                               0.5882352941176470,
-                               0.5882352941176470,
-                               0.6000000000000000,
-                               0.6122448979591840,
-                               0.6250000000000000,
-                               0.6250000000000000,
-                               0.6250000000000000,
-                               0.6250000000000000,
-                               0.6122448979591840,
-                               0.6122448979591840,
-                               0.6200000000000000,
-                               0.6200000000000000,
-                               0.6326530612244900,
-                               0.6326530612244900,
-                               0.6326530612244900,
-                               0.6326530612244900,
-                               0.6326530612244900,
-                               0.6326530612244900,
-                               0.6326530612244900,
-                               0.6458333333333330,
-                               0.6595744680851060,
-                               0.6595744680851060,
-                               0.6595744680851060,
-                               0.6595744680851060,
-                               0.6595744680851060,
-                               0.6595744680851060,
-                               0.6595744680851060,
-                               0.6595744680851060,
-                               0.6595744680851060,
-                               0.6595744680851060,
-                               0.6595744680851060,
-                               0.6521739130434780,
-                               0.6521739130434780,
-                               0.6521739130434780,
-                               0.6595744680851060,
-                               0.6739130434782610,
-                               0.6739130434782610,
-                               0.6739130434782610,
-                               0.6739130434782610,
-                               0.6808510638297870,
-                               0.6808510638297870,
-                               0.6956521739130430,
-                               0.7272727272727270,
-                               0.7272727272727270,
-                               0.7272727272727270,
-                               0.7272727272727270,
-                               0.7272727272727270,
-                               0.7272727272727270,
-                               0.7272727272727270,
-                               0.7272727272727270,
-                               0.7111111111111110,
-                               0.7111111111111110,
-                               0.7173913043478260,
-                               0.7111111111111110,
-                               0.7111111111111110,
-                               0.6956521739130430,
-                               0.6808510638297870,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6590909090909090,
-                               0.6590909090909090,
-                               0.6590909090909090,
-                               0.6590909090909090,
-                               0.6590909090909090,
-                               0.6444444444444440,
-                               0.6444444444444440,
-                               0.6444444444444440,
-                               0.6444444444444440,
-                               0.6444444444444440,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6521739130434780,
-                               0.6521739130434780,
-                               0.6521739130434780,
-                               0.6444444444444440,
-                               0.6521739130434780,
-                               0.6521739130434780,
-                               0.6382978723404260,
-                               0.6382978723404260,
-                               0.6382978723404260,
-                               0.6382978723404260,
-                               0.6521739130434780,
-                               0.6382978723404260,
-                               0.6382978723404260,
-                               0.6521739130434780,
-                               0.6521739130434780,
-                               0.6595744680851060,
-                               0.6595744680851060,
-                               0.6595744680851060,
-                               0.6595744680851060,
-                               0.6595744680851060,
-                               0.6595744680851060,
-                               0.6458333333333330,
-                               0.6458333333333330,
-                               0.6382978723404260,
-                               0.6382978723404260,
-                               0.6382978723404260,
-                               0.6382978723404260,
-                               0.6458333333333330,
-                               0.6400000000000000,
-                               0.6400000000000000,
-                               0.6400000000000000,
-                               0.6274509803921570,
-                               0.6274509803921570,
-                               0.6274509803921570,
-                               0.6200000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6122448979591840,
-                               0.6122448979591840,
-                               0.6122448979591840,
-                               0.6122448979591840,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6122448979591840,
-                               0.6122448979591840,
-                               0.6250000000000000,
-                               0.6250000000000000,
-                               0.6304347826086960,
-                               0.6304347826086960,
-                               0.6304347826086960,
-                               0.6304347826086960,
-                               0.6444444444444440,
-                               0.6444444444444440,
-                               0.6304347826086960,
-                               0.6304347826086960,
-                               0.6304347826086960,
-                               0.6304347826086960,
-                               0.6382978723404260,
-                               0.6304347826086960,
-                               0.6444444444444440,
-                               0.6590909090909090,
-                               0.6444444444444440,
-                               0.6444444444444440,
-                               0.6222222222222220,
-                               0.6136363636363640,
-                               0.6046511627906980,
-                               0.6046511627906980,
-                               0.6046511627906980,
-                               0.6046511627906980,
-                               0.6136363636363640,
-                               0.6136363636363640,
-                               0.6136363636363640,
-                               0.6136363636363640,
-                               0.6136363636363640,
-                               0.6136363636363640,
-                               0.6136363636363640,
-                               0.6136363636363640,
-                               0.6222222222222220,
-                               0.6222222222222220,
-                               0.6222222222222220,
-                               0.6222222222222220,
-                               0.6222222222222220,
-                               0.6222222222222220,
-                               0.6222222222222220,
-                               0.6222222222222220,
-                               0.6222222222222220,
-                               0.6222222222222220,
-                               0.6222222222222220,
-                               0.6222222222222220,
-                               0.6086956521739130,
-                               0.6086956521739130,
-                               0.6086956521739130,
-                               0.6086956521739130,
-                               0.6363636363636360,
-                               0.6222222222222220,
-                               0.6222222222222220,
-                               0.6222222222222220,
-                               0.6222222222222220,
-                               0.6222222222222220,
-                               0.6222222222222220,
-                               0.6363636363636360,
-                               0.6363636363636360,
-                               0.6363636363636360,
-                               0.6363636363636360,
-                               0.6363636363636360,
-                               0.6444444444444440,
-                               0.6444444444444440,
-                               0.6444444444444440,
-                               0.6444444444444440,
-                               0.6590909090909090,
-                               0.6590909090909090,
-                               0.6744186046511630,
-                               0.6744186046511630,
-                               0.6744186046511630,
-                               0.6744186046511630,
-                               0.6585365853658540,
-                               0.6829268292682930,
-                               0.6904761904761900,
-                               0.6744186046511630,
-                               0.6744186046511630,
-                               0.6744186046511630,
-                               0.6904761904761900,
-                               0.6904761904761900,
-                               0.6744186046511630,
-                               0.6744186046511630,
-                               0.6904761904761900,
-                               0.6904761904761900,
-                               0.6904761904761900,
-                               0.6744186046511630,
-                               0.6744186046511630,
-                               0.6744186046511630,
-                               0.6744186046511630,
-                               0.6744186046511630,
-                               0.6904761904761900,
-                               0.6904761904761900,
-                               0.6744186046511630,
-                               0.6744186046511630,
-                               0.6590909090909090,
-                               0.6590909090909090,
-                               0.6444444444444440,
-                               0.6444444444444440,
-                               0.6444444444444440,
-                               0.6444444444444440,
-                               0.6444444444444440,
-                               0.6590909090909090,
-                               0.6590909090909090,
-                               0.6511627906976740,
-                               0.6363636363636360,
-                               0.6363636363636360,
-                               0.6363636363636360,
-                               0.6363636363636360,
-                               0.6363636363636360,
-                               0.6086956521739130,
-                               0.6086956521739130,
-                               0.6086956521739130,
-                               0.6086956521739130,
-                               0.6086956521739130,
-                               0.6086956521739130,
-                               0.6086956521739130,
-                               0.6086956521739130,
-                               0.6086956521739130,
-                               0.6086956521739130,
-                               0.6086956521739130,
-                               0.6086956521739130,
-                               0.6170212765957450,
-                               0.6086956521739130,
-                               0.6086956521739130,
-                               0.6086956521739130,
-                               0.6086956521739130,
-                               0.5957446808510640,
-                               0.5957446808510640,
-                               0.5957446808510640,
-                               0.6086956521739130,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6136363636363640,
-                               0.6363636363636360,
-                               0.6363636363636360,
-                               0.6363636363636360,
-                               0.6363636363636360,
-                               0.6511627906976740,
-                               0.6511627906976740,
-                               0.6511627906976740,
-                               0.6590909090909090,
-                               0.6744186046511630,
-                               0.6744186046511630,
-                               0.6818181818181820,
-                               0.6818181818181820,
-                               0.6888888888888890,
-                               0.6888888888888890,
-                               0.6888888888888890,
-                               0.6739130434782610,
-                               0.6595744680851060,
-                               0.6595744680851060,
-                               0.6739130434782610,
-                               0.6976744186046510,
-                               0.6818181818181820,
-                               0.6888888888888890,
-                               0.6888888888888890,
-                               0.6956521739130430,
-                               0.6956521739130430,
-                               0.6956521739130430,
-                               0.6956521739130430,
-                               0.6956521739130430,
-                               0.6888888888888890,
-                               0.6888888888888890,
-                               0.6888888888888890,
-                               0.6739130434782610,
-                               0.6739130434782610,
-                               0.6888888888888890,
-                               0.6888888888888890,
-                               0.6888888888888890,
-                               0.6888888888888890,
-                               0.6888888888888890,
-                               0.6888888888888890,
-                               0.6739130434782610,
-                               0.6888888888888890,
-                               0.6888888888888890,
-                               0.7045454545454550,
-                               0.7045454545454550,
-                               0.7045454545454550,
-                               0.7045454545454550,
-                               0.6739130434782610,
-                               0.6808510638297870,
-                               0.6808510638297870,
-                               0.6808510638297870,
-                               0.6808510638297870,
-                               0.6808510638297870,
-                               0.6875000000000000,
-                               0.6875000000000000,
-                               0.6875000000000000,
-                               0.6875000000000000,
-                               0.7021276595744680,
-                               0.7173913043478260,
-                               0.7173913043478260,
-                               0.7234042553191490,
-                               0.7021276595744680,
-                               0.7021276595744680,
-                               0.7083333333333330,
-                               0.7234042553191490,
-                               0.7234042553191490,
-                               0.7234042553191490,
-                               0.7234042553191490,
-                               0.7083333333333330,
-                               0.7083333333333330,
-                               0.6938775510204080,
-                               0.6938775510204080,
-                               0.6938775510204080,
-                               0.6938775510204080,
-                               0.7083333333333330,
-                               0.7083333333333330,
-                               0.7083333333333330,
-                               0.7083333333333330,
-                               0.7291666666666670,
-                               0.7500000000000000,
-                               0.7500000000000000,
-                               0.7500000000000000,
-                               0.7500000000000000,
-                               0.7500000000000000,
-                               0.7659574468085110,
-                               0.7659574468085110,
-                               0.7826086956521740,
-                               0.7826086956521740,
-                               0.8043478260869560,
-                               0.8043478260869560,
-                               0.8043478260869560,
-                               0.8043478260869560,
-                               0.7826086956521740,
-                               0.7826086956521740,
-                               0.8000000000000000,
-                               0.8000000000000000,
-                               0.7826086956521740,
-                               0.7826086956521740,
-                               0.8043478260869560,
-                               0.8043478260869560,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7708333333333330,
-                               0.7755102040816330,
-                               0.7916666666666670,
-                               0.8085106382978720,
-                               0.8085106382978720,
-                               0.8125000000000000,
-                               0.8085106382978720,
-                               0.8085106382978720,
-                               0.8085106382978720,
-                               0.8085106382978720,
-                               0.8085106382978720,
-                               0.8260869565217390,
-                               0.8297872340425530,
-                               0.8333333333333330,
-                               0.8333333333333330,
-                               0.8333333333333330,
-                               0.8333333333333330,
-                               0.8163265306122450,
-                               0.8125000000000000,
-                               0.8085106382978720,
-                               0.8085106382978720,
-                               0.8260869565217390,
-                               0.8260869565217390,
-                               0.8260869565217390,
-                               0.8260869565217390,
-                               0.8260869565217390,
-                               0.8260869565217390,
-                               0.8260869565217390,
-                               0.8260869565217390,
-                               0.8260869565217390,
-                               0.8260869565217390,
-                               0.8222222222222220,
-                               0.8297872340425530,
-                               0.8297872340425530,
-                               0.8297872340425530,
-                               0.8297872340425530,
-                               0.8297872340425530,
-                               0.8125000000000000,
-                               0.8125000000000000,
-                               0.8125000000000000,
-                               0.8125000000000000,
-                               0.8125000000000000,
-                               0.8125000000000000,
-                               0.8125000000000000,
-                               0.8125000000000000,
-                               0.8163265306122450,
-                               0.8163265306122450,
-                               0.8333333333333330,
-                               0.8333333333333330,
-                               0.8333333333333330,
-                               0.8541666666666670,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8541666666666670,
-                               0.8541666666666670,
-                               0.8541666666666670,
-                               0.8723404255319150,
-                               0.8723404255319150,
-                               0.8723404255319150,
-                               0.8723404255319150,
-                               0.8723404255319150,
-                               0.8723404255319150,
-                               0.8723404255319150,
-                               0.8723404255319150,
-                               0.8723404255319150,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8775510204081630,
-                               0.8775510204081630,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8775510204081630,
-                               0.8775510204081630,
-                               0.8775510204081630,
-                               0.8775510204081630,
-                               0.8775510204081630,
-                               0.8775510204081630,
-                               0.8958333333333330,
-                               0.8958333333333330,
-                               0.8958333333333330,
-                               0.8958333333333330,
-                               0.8958333333333330,
-                               0.8979591836734690,
-                               0.8979591836734690,
-                               0.8979591836734690,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9019607843137260,
-                               0.9019607843137260,
-                               0.9019607843137260,
-                               0.9019607843137260,
-                               0.9019607843137260,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.8979591836734690,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9019607843137260,
-                               0.9019607843137260,
-                               0.9019607843137260,
-                               0.9019607843137260,
-                               0.9019607843137260,
-                               0.9019607843137260,
-                               0.9019607843137260,
-                               0.9019607843137260,
-                               0.9019607843137260,
-                               0.9200000000000000,
-                               0.9200000000000000,
-                               0.9200000000000000,
-                               0.9200000000000000,
-                               0.9200000000000000,
-                               0.9200000000000000,
-                               0.9200000000000000,
-                               0.9200000000000000,
-                               0.9200000000000000,
-                               0.9200000000000000,
-                               0.9200000000000000,
-                               0.9200000000000000,
-                               0.9200000000000000,
-                               0.9200000000000000,
-                               0.9200000000000000,
-                               0.9183673469387750,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9019607843137260,
-                               0.9019607843137260,
-                               0.9038461538461540,
-                               0.9038461538461540,
-                               0.9038461538461540,
-                               0.9038461538461540,
-                               0.9038461538461540,
-                               0.9038461538461540,
-                               0.9056603773584910,
-                               0.9074074074074070,
-                               0.9074074074074070,
-                               0.9074074074074070,
-                               0.9074074074074070,
-                               0.9074074074074070,
-                               0.9074074074074070,
-                               0.9074074074074070,
-                               0.9074074074074070,
-                               0.9074074074074070,
-                               0.9074074074074070,
-                               0.9074074074074070,
-                               0.9074074074074070,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9074074074074070,
-                               0.9074074074074070,
-                               0.9074074074074070,
-                               0.9074074074074070,
-                               0.9074074074074070,
-                               0.9074074074074070,
-                               0.9074074074074070,
-                               0.9074074074074070,
-                               0.9074074074074070,
-                               0.9074074074074070,
-                               0.9074074074074070,
-                               0.9074074074074070,
-                               0.9090909090909090,
-                               0.9259259259259260,
-                               0.9272727272727270,
-                               0.9272727272727270,
-                               0.9272727272727270,
-                               0.9285714285714290,
-                               0.9454545454545450,
-                               0.9454545454545450,
-                               0.9464285714285710,
-                               0.9464285714285710,
-                               0.9636363636363640,
-                               0.9636363636363640,
-                               0.9636363636363640,
-                               0.9636363636363640,
-                               0.9636363636363640,
-                               0.9636363636363640,
-                               0.9636363636363640,
-                               0.9636363636363640,
-                               0.9636363636363640,
-                               0.9636363636363640,
-                               0.9636363636363640,
-                               0.9636363636363640,
-                               0.9636363636363640,
-                               0.9636363636363640,
-                               0.9636363636363640,
-                               0.9636363636363640,
-                               0.9636363636363640,
-                               0.9636363636363640,
-                               0.9636363636363640,
-                               0.9636363636363640,
-                               0.9636363636363640,
-                               0.9636363636363640,
-                               0.9636363636363640,
-                               0.9636363636363640,
-                               0.9636363636363640,
-                               0.9636363636363640,
-                               0.9636363636363640,
-                               0.9636363636363640,
-                               0.9642857142857140,
-                               0.9642857142857140,
-                               0.9642857142857140,
-                               0.9642857142857140,
-                               0.9642857142857140,
-                               0.9642857142857140,
-                               0.9642857142857140,
-                               0.9642857142857140,
-                               0.9642857142857140,
-                               0.9649122807017540,
-                               0.9649122807017540,
-                               0.9649122807017540,
-                               0.9649122807017540,
-                               0.9649122807017540,
-                               0.9649122807017540,
-                               0.9649122807017540,
-                               0.9649122807017540,
-                               0.9655172413793100,
-                               0.9655172413793100,
-                               0.9655172413793100,
-                               0.9655172413793100,
-                               0.9824561403508770,
-                               0.9824561403508770,
-                               0.9824561403508770
-                       }
-               },
-               { PLACE_CATEG_ID_WORK,
-                       {
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0181818181818182,
-                               0.0181818181818182,
-                               0.0178571428571429,
-                               0.0178571428571429,
-                               0.0178571428571429,
-                               0.0178571428571429,
-                               0.0185185185185185,
-                               0.0185185185185185,
-                               0.0185185185185185,
-                               0.0185185185185185,
-                               0.0185185185185185,
-                               0.0185185185185185,
-                               0.0181818181818182,
-                               0.0181818181818182,
-                               0.0178571428571429,
-                               0.0178571428571429,
-                               0.0178571428571429,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0377358490566038,
-                               0.0555555555555556,
-                               0.0555555555555556,
-                               0.0555555555555556,
-                               0.0576923076923077,
-                               0.0576923076923077,
-                               0.0576923076923077,
-                               0.0576923076923077,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.1153846153846150,
-                               0.1153846153846150,
-                               0.1153846153846150,
-                               0.1153846153846150,
-                               0.1153846153846150,
-                               0.1153846153846150,
-                               0.1153846153846150,
-                               0.1153846153846150,
-                               0.1153846153846150,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1666666666666670,
-                               0.1666666666666670,
-                               0.1666666666666670,
-                               0.1666666666666670,
-                               0.1666666666666670,
-                               0.1698113207547170,
-                               0.1851851851851850,
-                               0.1851851851851850,
-                               0.1851851851851850,
-                               0.1886792452830190,
-                               0.1886792452830190,
-                               0.1886792452830190,
-                               0.2075471698113210,
-                               0.2075471698113210,
-                               0.2075471698113210,
-                               0.2075471698113210,
-                               0.2075471698113210,
-                               0.2075471698113210,
-                               0.2075471698113210,
-                               0.2075471698113210,
-                               0.2075471698113210,
-                               0.2075471698113210,
-                               0.2075471698113210,
-                               0.2115384615384620,
-                               0.2264150943396230,
-                               0.2264150943396230,
-                               0.2264150943396230,
-                               0.2264150943396230,
-                               0.2264150943396230,
-                               0.2545454545454540,
-                               0.2545454545454540,
-                               0.2545454545454540,
-                               0.2545454545454540,
-                               0.2545454545454540,
-                               0.2545454545454540,
-                               0.2641509433962260,
-                               0.2641509433962260,
-                               0.2641509433962260,
-                               0.2692307692307690,
-                               0.2800000000000000,
-                               0.2800000000000000,
-                               0.2916666666666670,
-                               0.2978723404255320,
-                               0.2978723404255320,
-                               0.2978723404255320,
-                               0.2978723404255320,
-                               0.2916666666666670,
-                               0.3200000000000000,
-                               0.3333333333333330,
-                               0.3461538461538460,
-                               0.3461538461538460,
-                               0.3461538461538460,
-                               0.3461538461538460,
-                               0.3529411764705880,
-                               0.3600000000000000,
-                               0.3600000000000000,
-                               0.3600000000000000,
-                               0.3725490196078430,
-                               0.3725490196078430,
-                               0.3725490196078430,
-                               0.3725490196078430,
-                               0.3725490196078430,
-                               0.3846153846153850,
-                               0.3846153846153850,
-                               0.4000000000000000,
-                               0.4117647058823530,
-                               0.4375000000000000,
-                               0.4375000000000000,
-                               0.4375000000000000,
-                               0.4375000000000000,
-                               0.4375000000000000,
-                               0.4489795918367350,
-                               0.4680851063829790,
-                               0.4680851063829790,
-                               0.4680851063829790,
-                               0.4680851063829790,
-                               0.5111111111111110,
-                               0.5217391304347830,
-                               0.5217391304347830,
-                               0.5217391304347830,
-                               0.5217391304347830,
-                               0.5217391304347830,
-                               0.5217391304347830,
-                               0.5319148936170210,
-                               0.5434782608695650,
-                               0.5434782608695650,
-                               0.5652173913043480,
-                               0.5652173913043480,
-                               0.5652173913043480,
-                               0.5652173913043480,
-                               0.5777777777777780,
-                               0.5777777777777780,
-                               0.5777777777777780,
-                               0.6086956521739130,
-                               0.6086956521739130,
-                               0.6086956521739130,
-                               0.6086956521739130,
-                               0.6086956521739130,
-                               0.6363636363636360,
-                               0.6363636363636360,
-                               0.6363636363636360,
-                               0.6363636363636360,
-                               0.6444444444444440,
-                               0.6444444444444440,
-                               0.6744186046511630,
-                               0.6818181818181820,
-                               0.6818181818181820,
-                               0.6818181818181820,
-                               0.6888888888888890,
-                               0.6888888888888890,
-                               0.6888888888888890,
-                               0.7045454545454550,
-                               0.7045454545454550,
-                               0.7045454545454550,
-                               0.7346938775510200,
-                               0.7346938775510200,
-                               0.7400000000000000,
-                               0.7450980392156860,
-                               0.7450980392156860,
-                               0.7450980392156860,
-                               0.7547169811320760,
-                               0.7547169811320760,
-                               0.7692307692307690,
-                               0.7692307692307690,
-                               0.7735849056603770,
-                               0.7735849056603770,
-                               0.7735849056603770,
-                               0.7735849056603770,
-                               0.7857142857142860,
-                               0.7857142857142860,
-                               0.7857142857142860,
-                               0.7857142857142860,
-                               0.8148148148148150,
-                               0.8148148148148150,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8275862068965520,
-                               0.8275862068965520,
-                               0.8474576271186440,
-                               0.8474576271186440,
-                               0.8474576271186440,
-                               0.8474576271186440,
-                               0.8474576271186440,
-                               0.8474576271186440,
-                               0.8474576271186440,
-                               0.8474576271186440,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8524590163934430,
-                               0.8524590163934430,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8947368421052630,
-                               0.8947368421052630,
-                               0.8947368421052630,
-                               0.8947368421052630,
-                               0.8947368421052630,
-                               0.8947368421052630,
-                               0.8965517241379310,
-                               0.8965517241379310,
-                               0.8983050847457630,
-                               0.8983050847457630,
-                               0.8983050847457630,
-                               0.8983050847457630,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8709677419354840,
-                               0.8709677419354840,
-                               0.8709677419354840,
-                               0.8709677419354840,
-                               0.8709677419354840,
-                               0.8709677419354840,
-                               0.8709677419354840,
-                               0.8709677419354840,
-                               0.8709677419354840,
-                               0.8709677419354840,
-                               0.8709677419354840,
-                               0.8709677419354840,
-                               0.8709677419354840,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8833333333333330,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8852459016393440,
-                               0.8870967741935480,
-                               0.8870967741935480,
-                               0.8870967741935480,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9016393442622950,
-                               0.9016393442622950,
-                               0.9016393442622950,
-                               0.9016393442622950,
-                               0.9016393442622950,
-                               0.8983050847457630,
-                               0.8983050847457630,
-                               0.8983050847457630,
-                               0.8983050847457630,
-                               0.8983050847457630,
-                               0.8983050847457630,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8666666666666670,
-                               0.8644067796610170,
-                               0.8666666666666670,
-                               0.8644067796610170,
-                               0.8644067796610170,
-                               0.8644067796610170,
-                               0.8644067796610170,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8333333333333330,
-                               0.8333333333333330,
-                               0.8333333333333330,
-                               0.8333333333333330,
-                               0.8360655737704920,
-                               0.8333333333333330,
-                               0.8333333333333330,
-                               0.8333333333333330,
-                               0.8474576271186440,
-                               0.8474576271186440,
-                               0.8500000000000000,
-                               0.8500000000000000,
-                               0.8360655737704920,
-                               0.8360655737704920,
-                               0.8360655737704920,
-                               0.8360655737704920,
-                               0.8644067796610170,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8644067796610170,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8524590163934430,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8644067796610170,
-                               0.8644067796610170,
-                               0.8644067796610170,
-                               0.8644067796610170,
-                               0.8644067796610170,
-                               0.8644067796610170,
-                               0.8644067796610170,
-                               0.8644067796610170,
-                               0.8644067796610170,
-                               0.8500000000000000,
-                               0.8500000000000000,
-                               0.8500000000000000,
-                               0.8474576271186440,
-                               0.8474576271186440,
-                               0.8474576271186440,
-                               0.8474576271186440,
-                               0.8474576271186440,
-                               0.8474576271186440,
-                               0.8474576271186440,
-                               0.8474576271186440,
-                               0.8474576271186440,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8771929824561400,
-                               0.8771929824561400,
-                               0.8771929824561400,
-                               0.8771929824561400,
-                               0.8771929824561400,
-                               0.8771929824561400,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8771929824561400,
-                               0.8771929824561400,
-                               0.8771929824561400,
-                               0.8833333333333330,
-                               0.8833333333333330,
-                               0.8833333333333330,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8833333333333330,
-                               0.8833333333333330,
-                               0.8813559322033900,
-                               0.8813559322033900,
-                               0.8813559322033900,
-                               0.8813559322033900,
-                               0.8833333333333330,
-                               0.8833333333333330,
-                               0.8833333333333330,
-                               0.8833333333333330,
-                               0.8833333333333330,
-                               0.8833333333333330,
-                               0.8833333333333330,
-                               0.8833333333333330,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8709677419354840,
-                               0.8709677419354840,
-                               0.8709677419354840,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8688524590163930,
-                               0.8833333333333330,
-                               0.8833333333333330,
-                               0.8833333333333330,
-                               0.8833333333333330,
-                               0.8833333333333330,
-                               0.8833333333333330,
-                               0.8813559322033900,
-                               0.8813559322033900,
-                               0.8813559322033900,
-                               0.8813559322033900,
-                               0.8813559322033900,
-                               0.8813559322033900,
-                               0.8793103448275860,
-                               0.8771929824561400,
-                               0.8771929824561400,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8448275862068960,
-                               0.8448275862068960,
-                               0.8448275862068960,
-                               0.8448275862068960,
-                               0.8596491228070170,
-                               0.8596491228070170,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8275862068965520,
-                               0.8275862068965520,
-                               0.8275862068965520,
-                               0.8245614035087720,
-                               0.8245614035087720,
-                               0.8245614035087720,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8214285714285710,
-                               0.8181818181818180,
-                               0.8181818181818180,
-                               0.8148148148148150,
-                               0.8148148148148150,
-                               0.8000000000000000,
-                               0.7962962962962960,
-                               0.7818181818181820,
-                               0.7777777777777780,
-                               0.7735849056603770,
-                               0.7692307692307690,
-                               0.7692307692307690,
-                               0.7692307692307690,
-                               0.7735849056603770,
-                               0.7735849056603770,
-                               0.7692307692307690,
-                               0.7547169811320760,
-                               0.7547169811320760,
-                               0.7547169811320760,
-                               0.7592592592592590,
-                               0.7454545454545450,
-                               0.7192982456140350,
-                               0.7192982456140350,
-                               0.7192982456140350,
-                               0.7192982456140350,
-                               0.7142857142857140,
-                               0.7142857142857140,
-                               0.7142857142857140,
-                               0.7142857142857140,
-                               0.7142857142857140,
-                               0.7142857142857140,
-                               0.7192982456140350,
-                               0.7068965517241380,
-                               0.7068965517241380,
-                               0.7017543859649120,
-                               0.7142857142857140,
-                               0.7142857142857140,
-                               0.7272727272727270,
-                               0.7222222222222220,
-                               0.7222222222222220,
-                               0.7090909090909090,
-                               0.7090909090909090,
-                               0.7090909090909090,
-                               0.7142857142857140,
-                               0.7142857142857140,
-                               0.7142857142857140,
-                               0.7017543859649120,
-                               0.7017543859649120,
-                               0.7017543859649120,
-                               0.6964285714285710,
-                               0.6964285714285710,
-                               0.6964285714285710,
-                               0.6964285714285710,
-                               0.6964285714285710,
-                               0.6964285714285710,
-                               0.6964285714285710,
-                               0.6964285714285710,
-                               0.7222222222222220,
-                               0.7222222222222220,
-                               0.7090909090909090,
-                               0.6964285714285710,
-                               0.7090909090909090,
-                               0.7090909090909090,
-                               0.6964285714285710,
-                               0.7090909090909090,
-                               0.7090909090909090,
-                               0.7090909090909090,
-                               0.7090909090909090,
-                               0.7090909090909090,
-                               0.7142857142857140,
-                               0.7142857142857140,
-                               0.7142857142857140,
-                               0.7142857142857140,
-                               0.7017543859649120,
-                               0.6785714285714290,
-                               0.6607142857142860,
-                               0.6491228070175440,
-                               0.6491228070175440,
-                               0.6428571428571430,
-                               0.6428571428571430,
-                               0.6428571428571430,
-                               0.6363636363636360,
-                               0.6363636363636360,
-                               0.6363636363636360,
-                               0.6363636363636360,
-                               0.6250000000000000,
-                               0.6250000000000000,
-                               0.6181818181818180,
-                               0.6181818181818180,
-                               0.6181818181818180,
-                               0.6181818181818180,
-                               0.6181818181818180,
-                               0.6111111111111110,
-                               0.6181818181818180,
-                               0.6181818181818180,
-                               0.6296296296296300,
-                               0.6296296296296300,
-                               0.6296296296296300,
-                               0.6111111111111110,
-                               0.6111111111111110,
-                               0.6226415094339620,
-                               0.6153846153846150,
-                               0.6153846153846150,
-                               0.6274509803921570,
-                               0.6037735849056600,
-                               0.5961538461538460,
-                               0.6078431372549020,
-                               0.6078431372549020,
-                               0.6078431372549020,
-                               0.5961538461538460,
-                               0.5882352941176470,
-                               0.5769230769230770,
-                               0.5769230769230770,
-                               0.5600000000000000,
-                               0.5510204081632650,
-                               0.5510204081632650,
-                               0.5510204081632650,
-                               0.5510204081632650,
-                               0.5400000000000000,
-                               0.5102040816326530,
-                               0.5102040816326530,
-                               0.5102040816326530,
-                               0.5102040816326530,
-                               0.5102040816326530,
-                               0.5000000000000000,
-                               0.4680851063829790,
-                               0.4680851063829790,
-                               0.4680851063829790,
-                               0.4680851063829790,
-                               0.4680851063829790,
-                               0.4680851063829790,
-                               0.4565217391304350,
-                               0.4347826086956520,
-                               0.4347826086956520,
-                               0.4347826086956520,
-                               0.3695652173913040,
-                               0.3695652173913040,
-                               0.3617021276595740,
-                               0.3617021276595740,
-                               0.3617021276595740,
-                               0.3469387755102040,
-                               0.3111111111111110,
-                               0.3181818181818180,
-                               0.3181818181818180,
-                               0.3181818181818180,
-                               0.3181818181818180,
-                               0.3255813953488370,
-                               0.3255813953488370,
-                               0.3255813953488370,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3170731707317070,
-                               0.3170731707317070,
-                               0.2790697674418600,
-                               0.2790697674418600,
-                               0.2727272727272730,
-                               0.2558139534883720,
-                               0.2558139534883720,
-                               0.2558139534883720,
-                               0.2500000000000000,
-                               0.2500000000000000,
-                               0.2391304347826090,
-                               0.2391304347826090,
-                               0.2444444444444440,
-                               0.2444444444444440,
-                               0.1818181818181820,
-                               0.1818181818181820,
-                               0.1702127659574470,
-                               0.1666666666666670,
-                               0.1632653061224490,
-                               0.1632653061224490,
-                               0.1600000000000000,
-                               0.1428571428571430,
-                               0.1400000000000000,
-                               0.1372549019607840,
-                               0.1372549019607840,
-                               0.1372549019607840,
-                               0.1538461538461540,
-                               0.1698113207547170,
-                               0.1509433962264150,
-                               0.1509433962264150,
-                               0.1372549019607840,
-                               0.1346153846153850,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1272727272727270,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1090909090909090,
-                               0.1071428571428570,
-                               0.0892857142857143,
-                               0.0892857142857143,
-                               0.0892857142857143,
-                               0.0892857142857143,
-                               0.0892857142857143,
-                               0.0892857142857143,
-                               0.0892857142857143,
-                               0.0892857142857143,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.1090909090909090,
-                               0.0925925925925926,
-                               0.1063829787234040,
-                               0.1063829787234040,
-                               0.1063829787234040,
-                               0.1063829787234040,
-                               0.0869565217391304,
-                               0.0888888888888889,
-                               0.0888888888888889,
-                               0.0888888888888889,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0888888888888889,
-                               0.0888888888888889,
-                               0.0888888888888889,
-                               0.0888888888888889,
-                               0.0869565217391304,
-                               0.0869565217391304,
-                               0.0869565217391304,
-                               0.0869565217391304,
-                               0.0869565217391304,
-                               0.0869565217391304,
-                               0.0851063829787234,
-                               0.0851063829787234,
-                               0.0851063829787234,
-                               0.1041666666666670,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.0816326530612245,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.0943396226415094,
-                               0.0943396226415094,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.0961538461538462,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.1000000000000000,
-                               0.1041666666666670,
-                               0.1041666666666670,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0961538461538462,
-                               0.0943396226415094,
-                               0.0943396226415094,
-                               0.0943396226415094,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.0943396226415094,
-                               0.0943396226415094,
-                               0.0925925925925926,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0925925925925926,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0925925925925926,
-                               0.0740740740740741,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0517241379310345,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0526315789473684,
-                               0.0517241379310345,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0517241379310345,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0500000000000000,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0327868852459016,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0312500000000000,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0338983050847458,
-                               0.0357142857142857,
-                               0.0357142857142857,
-                               0.0357142857142857,
-                               0.0357142857142857,
-                               0.0357142857142857,
-                               0.0357142857142857,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0689655172413793,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0714285714285714,
-                               0.0545454545454545,
-                               0.0535714285714286,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0701754385964912,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.1090909090909090,
-                               0.1111111111111110,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1481481481481480,
-                               0.1481481481481480,
-                               0.1481481481481480,
-                               0.1481481481481480,
-                               0.1509433962264150,
-                               0.1509433962264150,
-                               0.1509433962264150,
-                               0.1509433962264150,
-                               0.1509433962264150,
-                               0.1509433962264150,
-                               0.1818181818181820,
-                               0.1851851851851850,
-                               0.1851851851851850,
-                               0.1851851851851850,
-                               0.1851851851851850,
-                               0.1851851851851850,
-                               0.2000000000000000,
-                               0.2037037037037040,
-                               0.2363636363636360,
-                               0.2363636363636360,
-                               0.2407407407407410,
-                               0.2407407407407410,
-                               0.2452830188679250,
-                               0.2452830188679250,
-                               0.2452830188679250,
-                               0.2500000000000000,
-                               0.2549019607843140,
-                               0.2549019607843140,
-                               0.2549019607843140,
-                               0.2549019607843140,
-                               0.2745098039215690,
-                               0.2800000000000000,
-                               0.2800000000000000,
-                               0.2800000000000000,
-                               0.2800000000000000,
-                               0.2800000000000000,
-                               0.2941176470588230,
-                               0.2941176470588230,
-                               0.3000000000000000,
-                               0.3000000000000000,
-                               0.3000000000000000,
-                               0.3137254901960780,
-                               0.3269230769230770,
-                               0.3396226415094340,
-                               0.3396226415094340,
-                               0.3461538461538460,
-                               0.3653846153846150,
-                               0.3846153846153850,
-                               0.3846153846153850,
-                               0.3846153846153850,
-                               0.3962264150943400,
-                               0.3962264150943400,
-                               0.3962264150943400,
-                               0.3962264150943400,
-                               0.3962264150943400,
-                               0.3962264150943400,
-                               0.4117647058823530,
-                               0.4117647058823530,
-                               0.4117647058823530,
-                               0.4117647058823530,
-                               0.4200000000000000,
-                               0.4313725490196080,
-                               0.4313725490196080,
-                               0.4313725490196080,
-                               0.4313725490196080,
-                               0.4313725490196080,
-                               0.4313725490196080,
-                               0.4313725490196080,
-                               0.4200000000000000,
-                               0.4200000000000000,
-                               0.4200000000000000,
-                               0.4200000000000000,
-                               0.4200000000000000,
-                               0.4200000000000000,
-                               0.4313725490196080,
-                               0.4313725490196080,
-                               0.4509803921568630,
-                               0.4509803921568630,
-                               0.4509803921568630,
-                               0.4615384615384620,
-                               0.4814814814814810,
-                               0.4814814814814810,
-                               0.4814814814814810,
-                               0.4814814814814810,
-                               0.5098039215686270,
-                               0.5200000000000000,
-                               0.5306122448979590,
-                               0.5306122448979590,
-                               0.5306122448979590,
-                               0.5306122448979590,
-                               0.5625000000000000,
-                               0.5625000000000000,
-                               0.5957446808510640,
-                               0.5957446808510640,
-                               0.5957446808510640,
-                               0.5957446808510640,
-                               0.5957446808510640,
-                               0.6041666666666670,
-                               0.6041666666666670,
-                               0.6122448979591840,
-                               0.6122448979591840,
-                               0.6326530612244900,
-                               0.6400000000000000,
-                               0.6470588235294120,
-                               0.6470588235294120,
-                               0.6600000000000000,
-                               0.6600000000000000,
-                               0.6600000000000000,
-                               0.7021276595744680,
-                               0.7021276595744680,
-                               0.7173913043478260,
-                               0.7333333333333330,
-                               0.7333333333333330,
-                               0.7333333333333330,
-                               0.7333333333333330,
-                               0.7333333333333330,
-                               0.7727272727272730,
-                               0.7826086956521740,
-                               0.7872340425531920,
-                               0.7916666666666670,
-                               0.8163265306122450,
-                               0.8163265306122450,
-                               0.8200000000000000,
-                               0.8235294117647060,
-                               0.8235294117647060,
-                               0.8235294117647060,
-                               0.8235294117647060,
-                               0.8235294117647060,
-                               0.8148148148148150,
-                               0.8148148148148150,
-                               0.8148148148148150,
-                               0.8148148148148150,
-                               0.8245614035087720,
-                               0.8245614035087720,
-                               0.8275862068965520,
-                               0.8275862068965520,
-                               0.8275862068965520,
-                               0.8275862068965520,
-                               0.8500000000000000,
-                               0.8500000000000000,
-                               0.8500000000000000,
-                               0.8500000000000000,
-                               0.8500000000000000,
-                               0.8500000000000000,
-                               0.8524590163934430,
-                               0.8524590163934430,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8709677419354840,
-                               0.8709677419354840,
-                               0.8593750000000000,
-                               0.8730158730158730,
-                               0.8730158730158730,
-                               0.8730158730158730,
-                               0.8593750000000000,
-                               0.8593750000000000,
-                               0.8593750000000000,
-                               0.8615384615384620,
-                               0.8615384615384620,
-                               0.8615384615384620,
-                               0.8615384615384620,
-                               0.8615384615384620,
-                               0.8615384615384620,
-                               0.8615384615384620,
-                               0.8615384615384620,
-                               0.8615384615384620,
-                               0.8615384615384620,
-                               0.8615384615384620,
-                               0.8615384615384620,
-                               0.8769230769230770,
-                               0.8769230769230770,
-                               0.8906250000000000,
-                               0.8906250000000000,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9193548387096770,
-                               0.9193548387096770,
-                               0.9193548387096770,
-                               0.9180327868852460,
-                               0.9180327868852460,
-                               0.9180327868852460,
-                               0.9180327868852460,
-                               0.9180327868852460,
-                               0.9180327868852460,
-                               0.9180327868852460,
-                               0.9180327868852460,
-                               0.9166666666666670,
-                               0.9166666666666670,
-                               0.9166666666666670,
-                               0.9152542372881350,
-                               0.9152542372881350,
-                               0.9152542372881350,
-                               0.9166666666666670,
-                               0.9180327868852460,
-                               0.9180327868852460,
-                               0.9180327868852460,
-                               0.9180327868852460,
-                               0.9333333333333330,
-                               0.9333333333333330,
-                               0.9333333333333330,
-                               0.9333333333333330,
-                               0.9333333333333330,
-                               0.9333333333333330,
-                               0.9333333333333330,
-                               0.9333333333333330,
-                               0.9491525423728810,
-                               0.9491525423728810,
-                               0.9491525423728810,
-                               0.9333333333333330,
-                               0.9333333333333330,
-                               0.9322033898305080,
-                               0.9322033898305080,
-                               0.9322033898305080,
-                               0.9322033898305080,
-                               0.9310344827586210,
-                               0.9310344827586210,
-                               0.9310344827586210,
-                               0.9310344827586210,
-                               0.9310344827586210,
-                               0.9310344827586210,
-                               0.9310344827586210,
-                               0.9310344827586210,
-                               0.9152542372881350,
-                               0.9152542372881350,
-                               0.9152542372881350,
-                               0.9152542372881350,
-                               0.9152542372881350,
-                               0.9152542372881350,
-                               0.9152542372881350,
-                               0.9152542372881350,
-                               0.9152542372881350,
-                               0.9152542372881350,
-                               0.9152542372881350,
-                               0.9152542372881350,
-                               0.9152542372881350,
-                               0.9180327868852460,
-                               0.9180327868852460,
-                               0.9166666666666670,
-                               0.9016393442622950,
-                               0.9016393442622950,
-                               0.9016393442622950,
-                               0.9032258064516130,
-                               0.9047619047619050,
-                               0.9062500000000000,
-                               0.9062500000000000,
-                               0.9062500000000000,
-                               0.9062500000000000,
-                               0.9062500000000000,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9076923076923080,
-                               0.9230769230769230,
-                               0.9230769230769230,
-                               0.9230769230769230,
-                               0.9218750000000000,
-                               0.9206349206349210,
-                               0.9218750000000000,
-                               0.9218750000000000,
-                               0.9218750000000000,
-                               0.9218750000000000,
-                               0.9218750000000000,
-                               0.9206349206349210,
-                               0.9206349206349210,
-                               0.9206349206349210,
-                               0.9206349206349210,
-                               0.9206349206349210,
-                               0.9206349206349210,
-                               0.9344262295081970,
-                               0.9344262295081970,
-                               0.9344262295081970,
-                               0.9344262295081970,
-                               0.9344262295081970,
-                               0.9365079365079360,
-                               0.9516129032258060,
-                               0.9516129032258060,
-                               0.9516129032258060,
-                               0.9516129032258060,
-                               0.9508196721311470,
-                               0.9508196721311470,
-                               0.9354838709677420,
-                               0.9354838709677420,
-                               0.9354838709677420,
-                               0.9333333333333330,
-                               0.9310344827586210,
-                               0.9298245614035090,
-                               0.9122807017543860,
-                               0.9122807017543860,
-                               0.9122807017543860,
-                               0.9122807017543860,
-                               0.9107142857142860,
-                               0.9090909090909090,
-                               0.9259259259259260,
-                               0.9259259259259260,
-                               0.9259259259259260,
-                               0.9259259259259260,
-                               0.9272727272727270,
-                               0.9259259259259260,
-                               0.9298245614035090,
-                               0.9298245614035090,
-                               0.9298245614035090,
-                               0.9310344827586210,
-                               0.9310344827586210,
-                               0.9333333333333330,
-                               0.9491525423728810,
-                               0.9491525423728810,
-                               0.9500000000000000,
-                               0.9500000000000000,
-                               0.9500000000000000,
-                               0.9500000000000000,
-                               0.9344262295081970,
-                               0.9344262295081970,
-                               0.9344262295081970,
-                               0.9344262295081970,
-                               0.9344262295081970,
-                               0.9344262295081970,
-                               0.9333333333333330,
-                               0.9333333333333330,
-                               0.9333333333333330,
-                               0.9322033898305080,
-                               0.9322033898305080,
-                               0.9322033898305080,
-                               0.9482758620689660,
-                               0.9482758620689660,
-                               0.9473684210526320,
-                               0.9482758620689660,
-                               0.9482758620689660,
-                               0.9473684210526320,
-                               0.9655172413793100,
-                               0.9655172413793100,
-                               0.9491525423728810,
-                               0.9491525423728810,
-                               0.9482758620689660,
-                               0.9491525423728810,
-                               0.9491525423728810,
-                               0.9491525423728810,
-                               0.9491525423728810,
-                               0.9491525423728810,
-                               0.9508196721311470,
-                               0.9500000000000000,
-                               0.9500000000000000,
-                               0.9500000000000000,
-                               0.9500000000000000,
-                               0.9500000000000000,
-                               0.9491525423728810,
-                               0.9491525423728810,
-                               0.9500000000000000,
-                               0.9500000000000000,
-                               0.9500000000000000,
-                               0.9500000000000000,
-                               0.9500000000000000,
-                               0.9508196721311470,
-                               0.9500000000000000,
-                               0.9500000000000000,
-                               0.9661016949152540,
-                               0.9655172413793100,
-                               0.9655172413793100,
-                               0.9655172413793100,
-                               0.9655172413793100,
-                               0.9655172413793100,
-                               0.9661016949152540,
-                               0.9661016949152540,
-                               0.9661016949152540,
-                               0.9661016949152540,
-                               0.9661016949152540,
-                               0.9661016949152540,
-                               0.9661016949152540,
-                               0.9500000000000000,
-                               0.9500000000000000,
-                               0.9500000000000000,
-                               0.9516129032258060,
-                               0.9516129032258060,
-                               0.9516129032258060,
-                               0.9516129032258060,
-                               0.9516129032258060,
-                               0.9516129032258060,
-                               0.9516129032258060,
-                               0.9516129032258060,
-                               0.9516129032258060,
-                               0.9516129032258060,
-                               0.9531250000000000,
-                               0.9531250000000000,
-                               0.9523809523809520,
-                               0.9523809523809520,
-                               0.9523809523809520,
-                               0.9523809523809520,
-                               0.9523809523809520,
-                               0.9523809523809520,
-                               0.9531250000000000,
-                               0.9531250000000000,
-                               0.9531250000000000,
-                               0.9682539682539680,
-                               0.9682539682539680,
-                               0.9682539682539680,
-                               0.9682539682539680,
-                               0.9682539682539680,
-                               0.9682539682539680,
-                               0.9682539682539680,
-                               0.9687500000000000,
-                               0.9687500000000000,
-                               0.9687500000000000,
-                               0.9687500000000000,
-                               0.9687500000000000,
-                               0.9682539682539680,
-                               0.9682539682539680,
-                               0.9682539682539680,
-                               0.9677419354838710,
-                               0.9677419354838710,
-                               0.9677419354838710,
-                               0.9677419354838710,
-                               0.9677419354838710,
-                               0.9677419354838710,
-                               0.9682539682539680,
-                               0.9682539682539680,
-                               0.9682539682539680,
-                               0.9682539682539680,
-                               0.9682539682539680,
-                               0.9682539682539680,
-                               0.9682539682539680,
-                               0.9682539682539680,
-                               0.9682539682539680,
-                               0.9682539682539680,
-                               0.9682539682539680,
-                               0.9682539682539680,
-                               0.9531250000000000,
-                               0.9531250000000000,
-                               0.9531250000000000,
-                               0.9538461538461540,
-                               0.9538461538461540,
-                               0.9538461538461540,
-                               0.9538461538461540,
-                               0.9538461538461540,
-                               0.9538461538461540,
-                               0.9538461538461540,
-                               0.9538461538461540,
-                               0.9538461538461540,
-                               0.9538461538461540,
-                               0.9538461538461540,
-                               0.9393939393939390,
-                               0.9393939393939390,
-                               0.9393939393939390,
-                               0.9393939393939390,
-                               0.9538461538461540,
-                               0.9538461538461540,
-                               0.9538461538461540,
-                               0.9538461538461540,
-                               0.9538461538461540,
-                               0.9523809523809520,
-                               0.9523809523809520,
-                               0.9523809523809520,
-                               0.9523809523809520,
-                               0.9523809523809520,
-                               0.9516129032258060,
-                               0.9523809523809520,
-                               0.9523809523809520,
-                               0.9523809523809520,
-                               0.9523809523809520,
-                               0.9516129032258060,
-                               0.9365079365079360,
-                               0.9206349206349210,
-                               0.9206349206349210,
-                               0.9206349206349210,
-                               0.9206349206349210,
-                               0.9193548387096770,
-                               0.9193548387096770,
-                               0.9193548387096770,
-                               0.9193548387096770,
-                               0.9193548387096770,
-                               0.9180327868852460,
-                               0.9180327868852460,
-                               0.9180327868852460,
-                               0.9180327868852460,
-                               0.9180327868852460,
-                               0.9180327868852460,
-                               0.9180327868852460,
-                               0.9180327868852460,
-                               0.9180327868852460,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.9032258064516130,
-                               0.8870967741935480,
-                               0.8593750000000000,
-                               0.8571428571428570,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8524590163934430,
-                               0.8524590163934430,
-                               0.8524590163934430,
-                               0.8524590163934430,
-                               0.8524590163934430,
-                               0.8500000000000000,
-                               0.8360655737704920,
-                               0.8360655737704920,
-                               0.8225806451612900,
-                               0.8225806451612900,
-                               0.8225806451612900,
-                               0.8225806451612900,
-                               0.8360655737704920,
-                               0.8333333333333330,
-                               0.8474576271186440,
-                               0.8474576271186440,
-                               0.8333333333333330,
-                               0.8333333333333330,
-                               0.8064516129032260,
-                               0.7936507936507940,
-                               0.7812500000000000,
-                               0.7692307692307690,
-                               0.7692307692307690,
-                               0.7692307692307690,
-                               0.7692307692307690,
-                               0.7656250000000000,
-                               0.7692307692307690,
-                               0.7692307692307690,
-                               0.7692307692307690,
-                               0.7692307692307690,
-                               0.7656250000000000,
-                               0.7656250000000000,
-                               0.7619047619047620,
-                               0.7619047619047620,
-                               0.7619047619047620,
-                               0.7619047619047620,
-                               0.7619047619047620,
-                               0.7500000000000000,
-                               0.7500000000000000,
-                               0.7500000000000000,
-                               0.7500000000000000,
-                               0.7500000000000000,
-                               0.7343750000000000,
-                               0.7343750000000000,
-                               0.7343750000000000,
-                               0.7343750000000000,
-                               0.7343750000000000,
-                               0.7343750000000000,
-                               0.7343750000000000,
-                               0.7230769230769230,
-                               0.7187500000000000,
-                               0.7187500000000000,
-                               0.7187500000000000,
-                               0.7230769230769230,
-                               0.7230769230769230,
-                               0.7230769230769230,
-                               0.7142857142857140,
-                               0.7258064516129030,
-                               0.7213114754098360,
-                               0.7213114754098360,
-                               0.7213114754098360,
-                               0.7288135593220340,
-                               0.7321428571428570,
-                               0.7321428571428570,
-                               0.7321428571428570,
-                               0.7192982456140350,
-                               0.7272727272727270,
-                               0.7142857142857140,
-                               0.7142857142857140,
-                               0.7090909090909090,
-                               0.7222222222222220,
-                               0.7222222222222220,
-                               0.7222222222222220,
-                               0.7307692307692310,
-                               0.7037037037037040,
-                               0.7037037037037040,
-                               0.6909090909090910,
-                               0.6909090909090910,
-                               0.6785714285714290,
-                               0.6785714285714290,
-                               0.6785714285714290,
-                               0.6551724137931030,
-                               0.6551724137931030,
-                               0.6491228070175440,
-                               0.6428571428571430,
-                               0.6545454545454550,
-                               0.6250000000000000,
-                               0.6250000000000000,
-                               0.6250000000000000,
-                               0.6250000000000000,
-                               0.6481481481481480,
-                               0.6296296296296300,
-                               0.6274509803921570,
-                               0.6274509803921570,
-                               0.6153846153846150,
-                               0.6000000000000000,
-                               0.5918367346938780,
-                               0.5918367346938780,
-                               0.5800000000000000,
-                               0.5800000000000000,
-                               0.5800000000000000,
-                               0.5800000000000000,
-                               0.5686274509803920,
-                               0.5686274509803920,
-                               0.5714285714285710,
-                               0.5714285714285710,
-                               0.5714285714285710,
-                               0.5625000000000000,
-                               0.5625000000000000,
-                               0.5600000000000000,
-                               0.5510204081632650,
-                               0.5510204081632650,
-                               0.5510204081632650,
-                               0.5510204081632650,
-                               0.5192307692307690,
-                               0.5000000000000000,
-                               0.4821428571428570,
-                               0.4821428571428570,
-                               0.4821428571428570,
-                               0.4727272727272730,
-                               0.4727272727272730,
-                               0.4727272727272730,
-                               0.4561403508771930,
-                               0.4642857142857140,
-                               0.4642857142857140,
-                               0.4642857142857140,
-                               0.4642857142857140,
-                               0.4642857142857140,
-                               0.4464285714285710,
-                               0.4545454545454550,
-                               0.4629629629629630,
-                               0.4629629629629630,
-                               0.4629629629629630,
-                               0.4509803921568630,
-                               0.4230769230769230,
-                               0.4117647058823530,
-                               0.4117647058823530,
-                               0.4038461538461540,
-                               0.4117647058823530,
-                               0.4117647058823530,
-                               0.4117647058823530,
-                               0.4038461538461540,
-                               0.4038461538461540,
-                               0.3962264150943400,
-                               0.3888888888888890,
-                               0.3888888888888890,
-                               0.3888888888888890,
-                               0.4000000000000000,
-                               0.4000000000000000,
-                               0.4000000000000000,
-                               0.4000000000000000,
-                               0.4000000000000000,
-                               0.4038461538461540,
-                               0.4038461538461540,
-                               0.4038461538461540,
-                               0.3962264150943400,
-                               0.3888888888888890,
-                               0.3888888888888890,
-                               0.3636363636363640,
-                               0.3636363636363640,
-                               0.3269230769230770,
-                               0.3148148148148150,
-                               0.3148148148148150,
-                               0.3148148148148150,
-                               0.2884615384615380,
-                               0.2884615384615380,
-                               0.2653061224489800,
-                               0.2653061224489800,
-                               0.2653061224489800,
-                               0.2653061224489800,
-                               0.2653061224489800,
-                               0.2553191489361700,
-                               0.2391304347826090,
-                               0.2391304347826090,
-                               0.2444444444444440,
-                               0.2391304347826090,
-                               0.2340425531914890,
-                               0.2500000000000000,
-                               0.2340425531914890,
-                               0.2340425531914890,
-                               0.2340425531914890,
-                               0.2340425531914890,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2244897959183670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2083333333333330,
-                               0.2040816326530610,
-                               0.1875000000000000,
-                               0.1702127659574470,
-                               0.1666666666666670,
-                               0.1666666666666670,
-                               0.1666666666666670,
-                               0.1875000000000000,
-                               0.1875000000000000,
-                               0.2040816326530610,
-                               0.2040816326530610,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.1960784313725490,
-                               0.1960784313725490,
-                               0.1923076923076920,
-                               0.1923076923076920,
-                               0.1886792452830190,
-                               0.1698113207547170,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.0943396226415094,
-                               0.0925925925925926,
-                               0.0943396226415094,
-                               0.1071428571428570,
-                               0.1071428571428570,
-                               0.1071428571428570,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0892857142857143,
-                               0.0892857142857143,
-                               0.0892857142857143,
-                               0.0892857142857143,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0847457627118644,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0819672131147541,
-                               0.0806451612903226,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0666666666666667,
-                               0.0677966101694915,
-                               0.0714285714285714,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0535714285714286,
-                               0.0535714285714286,
-                               0.0535714285714286,
-                               0.0535714285714286,
-                               0.0535714285714286,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0535714285714286,
-                               0.0535714285714286,
-                               0.0535714285714286,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0508474576271187,
-                               0.0500000000000000,
-                               0.0491803278688525,
-                               0.0500000000000000,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0476190476190476,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0468750000000000,
-                               0.0468750000000000,
-                               0.0468750000000000,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0468750000000000,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0149253731343284,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0153846153846154,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0333333333333333,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0500000000000000,
-                               0.0508474576271187,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0983606557377049,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1016949152542370,
-                               0.1016949152542370,
-                               0.1016949152542370,
-                               0.1016949152542370,
-                               0.1034482758620690,
-                               0.1034482758620690,
-                               0.1034482758620690,
-                               0.1034482758620690,
-                               0.1034482758620690,
-                               0.1186440677966100,
-                               0.1166666666666670,
-                               0.1311475409836070,
-                               0.1333333333333330,
-                               0.1333333333333330,
-                               0.1333333333333330,
-                               0.1333333333333330,
-                               0.1355932203389830,
-                               0.1639344262295080,
-                               0.1639344262295080,
-                               0.1639344262295080,
-                               0.1639344262295080,
-                               0.1666666666666670,
-                               0.1724137931034480,
-                               0.1724137931034480,
-                               0.1724137931034480,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1818181818181820,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.2181818181818180,
-                               0.2222222222222220,
-                               0.2264150943396230,
-                               0.2264150943396230,
-                               0.2264150943396230,
-                               0.2307692307692310,
-                               0.2352941176470590,
-                               0.2448979591836730,
-                               0.2600000000000000,
-                               0.2600000000000000,
-                               0.2549019607843140,
-                               0.2600000000000000,
-                               0.2745098039215690,
-                               0.2884615384615380,
-                               0.2884615384615380,
-                               0.2884615384615380,
-                               0.2884615384615380,
-                               0.2884615384615380,
-                               0.2941176470588230,
-                               0.2941176470588230,
-                               0.2941176470588230,
-                               0.3076923076923080,
-                               0.3137254901960780,
-                               0.3076923076923080,
-                               0.3076923076923080,
-                               0.3076923076923080,
-                               0.3076923076923080,
-                               0.3076923076923080,
-                               0.3076923076923080,
-                               0.3076923076923080,
-                               0.3207547169811320,
-                               0.3454545454545450,
-                               0.3454545454545450,
-                               0.3454545454545450,
-                               0.3454545454545450,
-                               0.3454545454545450,
-                               0.3454545454545450,
-                               0.3636363636363640,
-                               0.3636363636363640,
-                               0.3636363636363640,
-                               0.3750000000000000,
-                               0.3750000000000000,
-                               0.3859649122807020,
-                               0.3965517241379310,
-                               0.4181818181818180,
-                               0.4181818181818180,
-                               0.4363636363636360,
-                               0.4363636363636360,
-                               0.4464285714285710,
-                               0.4464285714285710,
-                               0.4727272727272730,
-                               0.4821428571428570,
-                               0.4821428571428570,
-                               0.4912280701754390,
-                               0.5172413793103450,
-                               0.5172413793103450,
-                               0.5263157894736840,
-                               0.5263157894736840,
-                               0.5263157894736840,
-                               0.5263157894736840,
-                               0.5263157894736840,
-                               0.5263157894736840,
-                               0.5660377358490570,
-                               0.5660377358490570,
-                               0.5660377358490570,
-                               0.5660377358490570,
-                               0.5660377358490570,
-                               0.5740740740740740,
-                               0.5818181818181820,
-                               0.5818181818181820,
-                               0.5925925925925930,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6111111111111110,
-                               0.6470588235294120,
-                               0.6666666666666670,
-                               0.6800000000000000,
-                               0.6938775510204080,
-                               0.6938775510204080,
-                               0.7083333333333330,
-                               0.7083333333333330,
-                               0.7083333333333330,
-                               0.7083333333333330,
-                               0.7200000000000000,
-                               0.7200000000000000,
-                               0.7400000000000000,
-                               0.7450980392156860,
-                               0.7450980392156860,
-                               0.7450980392156860,
-                               0.7500000000000000,
-                               0.7500000000000000,
-                               0.7358490566037730,
-                               0.7358490566037730,
-                               0.7358490566037730,
-                               0.7358490566037730,
-                               0.7547169811320760,
-                               0.7547169811320760,
-                               0.7547169811320760,
-                               0.7547169811320760,
-                               0.7592592592592590,
-                               0.7592592592592590,
-                               0.7719298245614030,
-                               0.7719298245614030,
-                               0.7719298245614030,
-                               0.7758620689655170,
-                               0.7758620689655170,
-                               0.7758620689655170,
-                               0.7796610169491530,
-                               0.7796610169491530,
-                               0.8032786885245900,
-                               0.8032786885245900,
-                               0.8032786885245900,
-                               0.8064516129032260,
-                               0.8281250000000000,
-                               0.8281250000000000,
-                               0.8307692307692310,
-                               0.8307692307692310,
-                               0.8281250000000000,
-                               0.8281250000000000,
-                               0.8307692307692310,
-                               0.8307692307692310,
-                               0.8333333333333330,
-                               0.8333333333333330,
-                               0.8333333333333330,
-                               0.8358208955223880,
-                               0.8358208955223880,
-                               0.8358208955223880,
-                               0.8382352941176470,
-                               0.8405797101449270,
-                               0.8405797101449270,
-                               0.8382352941176470,
-                               0.8382352941176470,
-                               0.8382352941176470,
-                               0.8382352941176470,
-                               0.8382352941176470,
-                               0.8428571428571430,
-                               0.8450704225352110,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8550724637681160,
-                               0.8550724637681160,
-                               0.8550724637681160,
-                               0.8676470588235290,
-                               0.8805970149253730,
-                               0.8805970149253730,
-                               0.8805970149253730,
-                               0.8805970149253730,
-                               0.8805970149253730,
-                               0.8805970149253730,
-                               0.8805970149253730,
-                               0.8787878787878790,
-                               0.8787878787878790,
-                               0.8787878787878790,
-                               0.8787878787878790,
-                               0.8787878787878790,
-                               0.8805970149253730,
-                               0.8805970149253730,
-                               0.8805970149253730,
-                               0.8805970149253730,
-                               0.8805970149253730,
-                               0.8805970149253730,
-                               0.8823529411764710,
-                               0.8823529411764710,
-                               0.8823529411764710,
-                               0.8823529411764710,
-                               0.8823529411764710,
-                               0.8823529411764710,
-                               0.8840579710144930,
-                               0.8840579710144930,
-                               0.8840579710144930,
-                               0.8840579710144930,
-                               0.8840579710144930,
-                               0.8840579710144930,
-                               0.8840579710144930,
-                               0.8840579710144930,
-                               0.8840579710144930,
-                               0.8970588235294120,
-                               0.8970588235294120,
-                               0.8970588235294120,
-                               0.8970588235294120,
-                               0.8970588235294120,
-                               0.8970588235294120,
-                               0.8970588235294120,
-                               0.8970588235294120,
-                               0.8970588235294120,
-                               0.8970588235294120,
-                               0.8985507246376810,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.9142857142857140,
-                               0.9142857142857140,
-                               0.9142857142857140,
-                               0.9130434782608700,
-                               0.9130434782608700,
-                               0.9130434782608700,
-                               0.9130434782608700,
-                               0.9130434782608700,
-                               0.9130434782608700,
-                               0.9130434782608700,
-                               0.9130434782608700,
-                               0.9130434782608700,
-                               0.9130434782608700,
-                               0.9130434782608700,
-                               0.9130434782608700,
-                               0.9142857142857140,
-                               0.9142857142857140,
-                               0.9142857142857140,
-                               0.9142857142857140,
-                               0.9142857142857140,
-                               0.9142857142857140,
-                               0.9142857142857140,
-                               0.9142857142857140,
-                               0.9142857142857140,
-                               0.9142857142857140,
-                               0.9142857142857140,
-                               0.9142857142857140,
-                               0.9142857142857140,
-                               0.9142857142857140,
-                               0.9142857142857140,
-                               0.9142857142857140,
-                               0.9130434782608700,
-                               0.9130434782608700,
-                               0.9130434782608700,
-                               0.9130434782608700,
-                               0.9130434782608700,
-                               0.9130434782608700,
-                               0.9130434782608700,
-                               0.9130434782608700,
-                               0.9130434782608700,
-                               0.9130434782608700,
-                               0.9130434782608700,
-                               0.9130434782608700,
-                               0.9130434782608700,
-                               0.9130434782608700,
-                               0.9130434782608700,
-                               0.9130434782608700,
-                               0.9117647058823530,
-                               0.9130434782608700,
-                               0.9117647058823530,
-                               0.9104477611940300,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9090909090909090,
-                               0.9062500000000000,
-                               0.9076923076923080,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.9047619047619050,
-                               0.8769230769230770,
-                               0.8750000000000000,
-                               0.8730158730158730,
-                               0.8730158730158730,
-                               0.8730158730158730,
-                               0.8730158730158730,
-                               0.8730158730158730,
-                               0.8730158730158730,
-                               0.8593750000000000,
-                               0.8593750000000000,
-                               0.8615384615384620,
-                               0.8615384615384620,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8548387096774190,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8412698412698410,
-                               0.8412698412698410,
-                               0.8412698412698410,
-                               0.8412698412698410,
-                               0.8281250000000000,
-                               0.8281250000000000,
-                               0.8281250000000000,
-                               0.8281250000000000,
-                               0.8281250000000000,
-                               0.8281250000000000,
-                               0.8387096774193550,
-                               0.8387096774193550,
-                               0.8524590163934430,
-                               0.8524590163934430,
-                               0.8524590163934430,
-                               0.8524590163934430,
-                               0.8666666666666670,
-                               0.8709677419354840,
-                               0.8593750000000000,
-                               0.8593750000000000,
-                               0.8593750000000000,
-                               0.8593750000000000,
-                               0.8656716417910450,
-                               0.8656716417910450,
-                               0.8656716417910450,
-                               0.8656716417910450,
-                               0.8656716417910450,
-                               0.8636363636363640,
-                               0.8695652173913040,
-                               0.8695652173913040,
-                               0.8714285714285710,
-                               0.8714285714285710,
-                               0.8714285714285710,
-                               0.8714285714285710,
-                               0.8714285714285710,
-                               0.8714285714285710,
-                               0.8714285714285710,
-                               0.8714285714285710,
-                               0.8732394366197180,
-                               0.8732394366197180,
-                               0.8857142857142860,
-                               0.8840579710144930,
-                               0.8970588235294120,
-                               0.8970588235294120,
-                               0.8955223880597010,
-                               0.8939393939393940,
-                               0.8955223880597010,
-                               0.8970588235294120,
-                               0.8985507246376810,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.8985507246376810,
-                               0.8985507246376810,
-                               0.8985507246376810,
-                               0.8970588235294120,
-                               0.8970588235294120,
-                               0.8970588235294120,
-                               0.8970588235294120,
-                               0.8970588235294120,
-                               0.8970588235294120,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.8970588235294120,
-                               0.8970588235294120,
-                               0.8955223880597010,
-                               0.8970588235294120,
-                               0.8970588235294120,
-                               0.8970588235294120,
-                               0.8985507246376810,
-                               0.8985507246376810,
-                               0.9000000000000000,
-                               0.9142857142857140,
-                               0.9142857142857140,
-                               0.9154929577464790,
-                               0.9166666666666670,
-                               0.9166666666666670,
-                               0.9166666666666670,
-                               0.9178082191780820,
-                               0.9178082191780820,
-                               0.9178082191780820,
-                               0.9178082191780820,
-                               0.9178082191780820,
-                               0.9178082191780820,
-                               0.9178082191780820,
-                               0.9178082191780820,
-                               0.9178082191780820,
-                               0.9178082191780820,
-                               0.9178082191780820,
-                               0.9178082191780820,
-                               0.9166666666666670,
-                               0.9166666666666670,
-                               0.9166666666666670,
-                               0.9166666666666670,
-                               0.9166666666666670,
-                               0.9166666666666670,
-                               0.9295774647887320,
-                               0.9295774647887320,
-                               0.9295774647887320,
-                               0.9295774647887320,
-                               0.9295774647887320,
-                               0.9295774647887320,
-                               0.9295774647887320,
-                               0.9305555555555560,
-                               0.9305555555555560,
-                               0.9436619718309860,
-                               0.9436619718309860,
-                               0.9436619718309860,
-                               0.9436619718309860,
-                               0.9436619718309860,
-                               0.9436619718309860,
-                               0.9436619718309860,
-                               0.9436619718309860,
-                               0.9436619718309860,
-                               0.9444444444444440,
-                               0.9444444444444440,
-                               0.9436619718309860,
-                               0.9428571428571430,
-                               0.9428571428571430,
-                               0.9428571428571430,
-                               0.9428571428571430,
-                               0.9428571428571430,
-                               0.9428571428571430,
-                               0.9428571428571430,
-                               0.9428571428571430,
-                               0.9428571428571430,
-                               0.9428571428571430,
-                               0.9428571428571430,
-                               0.9428571428571430,
-                               0.9295774647887320,
-                               0.9285714285714290,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9275362318840580,
-                               0.9142857142857140,
-                               0.9142857142857140,
-                               0.9142857142857140,
-                               0.9142857142857140,
-                               0.9154929577464790,
-                               0.9154929577464790,
-                               0.9154929577464790,
-                               0.9154929577464790,
-                               0.9154929577464790,
-                               0.9154929577464790,
-                               0.9154929577464790,
-                               0.9285714285714290,
-                               0.9275362318840580,
-                               0.9264705882352940,
-                               0.9264705882352940,
-                               0.9264705882352940,
-                               0.9253731343283580,
-                               0.9253731343283580,
-                               0.9253731343283580,
-                               0.9253731343283580,
-                               0.9253731343283580,
-                               0.9253731343283580,
-                               0.9253731343283580,
-                               0.9253731343283580,
-                               0.9253731343283580,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9104477611940300,
-                               0.9117647058823530,
-                               0.9117647058823530,
-                               0.9130434782608700,
-                               0.9117647058823530,
-                               0.9130434782608700,
-                               0.9000000000000000,
-                               0.9000000000000000,
-                               0.8873239436619720,
-                               0.8873239436619720,
-                               0.8857142857142860,
-                               0.8840579710144930,
-                               0.8823529411764710,
-                               0.8823529411764710,
-                               0.8823529411764710,
-                               0.8823529411764710,
-                               0.8823529411764710,
-                               0.8823529411764710,
-                               0.8823529411764710,
-                               0.8805970149253730,
-                               0.8805970149253730,
-                               0.8805970149253730,
-                               0.8805970149253730,
-                               0.8656716417910450,
-                               0.8656716417910450,
-                               0.8656716417910450,
-                               0.8656716417910450,
-                               0.8656716417910450,
-                               0.8656716417910450,
-                               0.8529411764705880,
-                               0.8529411764705880,
-                               0.8529411764705880,
-                               0.8529411764705880,
-                               0.8529411764705880,
-                               0.8529411764705880,
-                               0.8529411764705880,
-                               0.8382352941176470,
-                               0.8260869565217390,
-                               0.8260869565217390,
-                               0.8260869565217390,
-                               0.8235294117647060,
-                               0.8235294117647060,
-                               0.8260869565217390,
-                               0.8382352941176470,
-                               0.8382352941176470,
-                               0.8382352941176470,
-                               0.8382352941176470,
-                               0.8358208955223880,
-                               0.8484848484848480,
-                               0.8358208955223880,
-                               0.8358208955223880,
-                               0.8333333333333330,
-                               0.8208955223880600,
-                               0.8208955223880600,
-                               0.8208955223880600,
-                               0.8208955223880600,
-                               0.8208955223880600,
-                               0.8208955223880600,
-                               0.8208955223880600,
-                               0.8088235294117650,
-                               0.8059701492537310,
-                               0.8030303030303030,
-                               0.8030303030303030,
-                               0.8030303030303030,
-                               0.8030303030303030,
-                               0.8030303030303030,
-                               0.8000000000000000,
-                               0.8000000000000000,
-                               0.7878787878787880,
-                               0.7878787878787880,
-                               0.7761194029850750,
-                               0.7761194029850750,
-                               0.7727272727272730,
-                               0.7656250000000000,
-                               0.7777777777777780,
-                               0.7777777777777780,
-                               0.7777777777777780,
-                               0.7777777777777780,
-                               0.7777777777777780,
-                               0.7903225806451610,
-                               0.8032786885245900,
-                               0.8032786885245900,
-                               0.8032786885245900,
-                               0.8032786885245900,
-                               0.8000000000000000,
-                               0.7868852459016390,
-                               0.7868852459016390,
-                               0.7868852459016390,
-                               0.7833333333333330,
-                               0.7833333333333330,
-                               0.7540983606557380,
-                               0.7500000000000000,
-                               0.7500000000000000,
-                               0.7377049180327870,
-                               0.7258064516129030,
-                               0.7258064516129030,
-                               0.7258064516129030,
-                               0.7258064516129030,
-                               0.7258064516129030,
-                               0.7213114754098360,
-                               0.7213114754098360,
-                               0.7166666666666670,
-                               0.7166666666666670,
-                               0.7166666666666670,
-                               0.7166666666666670,
-                               0.7166666666666670,
-                               0.7166666666666670,
-                               0.7166666666666670,
-                               0.7166666666666670,
-                               0.7166666666666670,
-                               0.7166666666666670,
-                               0.7118644067796610,
-                               0.7017543859649120,
-                               0.7090909090909090,
-                               0.6842105263157900,
-                               0.6842105263157900,
-                               0.6724137931034480,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6607142857142860,
-                               0.6545454545454550,
-                               0.6428571428571430,
-                               0.6428571428571430,
-                               0.6428571428571430,
-                               0.6545454545454550,
-                               0.6481481481481480,
-                               0.6603773584905660,
-                               0.6538461538461540,
-                               0.6538461538461540,
-                               0.6538461538461540,
-                               0.6415094339622640,
-                               0.6415094339622640,
-                               0.6415094339622640,
-                               0.5833333333333330,
-                               0.5833333333333330,
-                               0.5833333333333330,
-                               0.5625000000000000,
-                               0.5625000000000000,
-                               0.5625000000000000,
-                               0.5510204081632650,
-                               0.5416666666666670,
-                               0.5416666666666670,
-                               0.5306122448979590,
-                               0.5000000000000000,
-                               0.4814814814814810,
-                               0.4385964912280700,
-                               0.4482758620689660,
-                               0.4310344827586210,
-                               0.4237288135593220,
-                               0.4166666666666670,
-                               0.4166666666666670,
-                               0.3833333333333330,
-                               0.3898305084745760,
-                               0.3898305084745760,
-                               0.3898305084745760,
-                               0.3793103448275860,
-                               0.3793103448275860,
-                               0.3728813559322030,
-                               0.3728813559322030,
-                               0.3728813559322030,
-                               0.3666666666666670,
-                               0.3606557377049180,
-                               0.3606557377049180,
-                               0.3548387096774190,
-                               0.3548387096774190,
-                               0.3437500000000000,
-                               0.3437500000000000,
-                               0.3437500000000000,
-                               0.3437500000000000,
-                               0.3281250000000000,
-                               0.3230769230769230,
-                               0.3230769230769230,
-                               0.3333333333333330,
-                               0.3225806451612900,
-                               0.3278688524590160,
-                               0.2931034482758620,
-                               0.2931034482758620,
-                               0.2881355932203390,
-                               0.2881355932203390,
-                               0.2881355932203390,
-                               0.2711864406779660,
-                               0.2786885245901640,
-                               0.2741935483870970,
-                               0.2542372881355930,
-                               0.2542372881355930,
-                               0.2542372881355930,
-                               0.2500000000000000,
-                               0.2459016393442620,
-                               0.2459016393442620,
-                               0.2459016393442620,
-                               0.2459016393442620,
-                               0.2333333333333330,
-                               0.2333333333333330,
-                               0.2333333333333330,
-                               0.2333333333333330,
-                               0.2295081967213110,
-                               0.2295081967213110,
-                               0.2295081967213110,
-                               0.2333333333333330,
-                               0.2203389830508470,
-                               0.2203389830508470,
-                               0.2166666666666670,
-                               0.2166666666666670,
-                               0.2131147540983610,
-                               0.2096774193548390,
-                               0.2307692307692310,
-                               0.2187500000000000,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2131147540983610,
-                               0.2000000000000000,
-                               0.2131147540983610,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.1967213114754100,
-                               0.1935483870967740,
-                               0.1935483870967740,
-                               0.1935483870967740,
-                               0.1935483870967740,
-                               0.1935483870967740,
-                               0.1935483870967740,
-                               0.1935483870967740,
-                               0.1935483870967740,
-                               0.1935483870967740,
-                               0.1875000000000000,
-                               0.1846153846153850,
-                               0.1818181818181820,
-                               0.1818181818181820,
-                               0.1818181818181820,
-                               0.1818181818181820,
-                               0.1846153846153850,
-                               0.1846153846153850,
-                               0.1846153846153850,
-                               0.1818181818181820,
-                               0.1764705882352940,
-                               0.1764705882352940,
-                               0.1791044776119400,
-                               0.1764705882352940,
-                               0.1764705882352940,
-                               0.1764705882352940,
-                               0.1818181818181820,
-                               0.1818181818181820,
-                               0.1846153846153850,
-                               0.1846153846153850,
-                               0.1846153846153850,
-                               0.1846153846153850,
-                               0.1935483870967740,
-                               0.1935483870967740,
-                               0.1935483870967740,
-                               0.1967213114754100,
-                               0.1967213114754100,
-                               0.1967213114754100,
-                               0.2033898305084750,
-                               0.2033898305084750,
-                               0.2033898305084750,
-                               0.2068965517241380,
-                               0.2068965517241380,
-                               0.2068965517241380,
-                               0.2142857142857140,
-                               0.2142857142857140,
-                               0.2105263157894740,
-                               0.2142857142857140,
-                               0.2142857142857140,
-                               0.2181818181818180,
-                               0.2181818181818180,
-                               0.2181818181818180,
-                               0.2181818181818180,
-                               0.2181818181818180,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2075471698113210,
-                               0.2037037037037040,
-                               0.2075471698113210,
-                               0.1886792452830190,
-                               0.1818181818181820,
-                               0.1666666666666670,
-                               0.1818181818181820,
-                               0.1818181818181820,
-                               0.1818181818181820,
-                               0.1818181818181820,
-                               0.1754385964912280,
-                               0.1785714285714290,
-                               0.1636363636363640,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1551724137931030,
-                               0.1551724137931030,
-                               0.1525423728813560,
-                               0.1525423728813560,
-                               0.1500000000000000,
-                               0.1500000000000000,
-                               0.1500000000000000,
-                               0.1500000000000000,
-                               0.1333333333333330,
-                               0.1333333333333330,
-                               0.1355932203389830,
-                               0.1355932203389830,
-                               0.1379310344827590,
-                               0.1379310344827590,
-                               0.1403508771929820,
-                               0.1403508771929820,
-                               0.1403508771929820,
-                               0.1355932203389830,
-                               0.1355932203389830,
-                               0.1355932203389830,
-                               0.1186440677966100,
-                               0.1186440677966100,
-                               0.1186440677966100,
-                               0.1186440677966100,
-                               0.1166666666666670,
-                               0.1147540983606560,
-                               0.1147540983606560,
-                               0.1147540983606560,
-                               0.1147540983606560,
-                               0.1129032258064520,
-                               0.1129032258064520,
-                               0.1129032258064520,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.1076923076923080,
-                               0.1076923076923080,
-                               0.1060606060606060,
-                               0.1060606060606060,
-                               0.0923076923076923,
-                               0.0923076923076923,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0895522388059701,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0869565217391304,
-                               0.0869565217391304,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0882352941176471,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0909090909090909,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0882352941176471,
-                               0.0869565217391304,
-                               0.0869565217391304,
-                               0.0869565217391304,
-                               0.0869565217391304,
-                               0.0869565217391304,
-                               0.0869565217391304,
-                               0.0869565217391304,
-                               0.0735294117647059,
-                               0.0597014925373134,
-                               0.0597014925373134,
-                               0.0597014925373134,
-                               0.0597014925373134,
-                               0.0597014925373134,
-                               0.0597014925373134,
-                               0.0597014925373134,
-                               0.0597014925373134,
-                               0.0597014925373134,
-                               0.0597014925373134,
-                               0.0606060606060606,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0303030303030303,
-                               0.0303030303030303,
-                               0.0303030303030303,
-                               0.0303030303030303,
-                               0.0298507462686567,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0298507462686567,
-                               0.0303030303030303,
-                               0.0303030303030303,
-                               0.0303030303030303,
-                               0.0303030303030303,
-                               0.0303030303030303,
-                               0.0303030303030303,
-                               0.0298507462686567,
-                               0.0298507462686567,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0303030303030303,
-                               0.0303030303030303,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0140845070422535,
-                               0.0140845070422535,
-                               0.0140845070422535,
-                               0.0140845070422535,
-                               0.0140845070422535,
-                               0.0140845070422535,
-                               0.0140845070422535,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0140845070422535,
-                               0.0140845070422535,
-                               0.0140845070422535,
-                               0.0140845070422535,
-                               0.0140845070422535,
-                               0.0140845070422535,
-                               0.0140845070422535,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0140845070422535,
-                               0.0140845070422535,
-                               0.0140845070422535,
-                               0.0140845070422535,
-                               0.0140845070422535,
-                               0.0140845070422535,
-                               0.0140845070422535,
-                               0.0140845070422535,
-                               0.0140845070422535,
-                               0.0140845070422535,
-                               0.0140845070422535,
-                               0.0140845070422535,
-                               0.0140845070422535,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0135135135135135,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0338983050847458,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0689655172413793,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0862068965517241,
-                               0.1034482758620690,
-                               0.1034482758620690,
-                               0.1034482758620690,
-                               0.1186440677966100,
-                               0.1186440677966100,
-                               0.1206896551724140,
-                               0.1206896551724140,
-                               0.1206896551724140,
-                               0.1206896551724140,
-                               0.1228070175438600,
-                               0.1228070175438600,
-                               0.1228070175438600,
-                               0.1228070175438600,
-                               0.1228070175438600,
-                               0.1228070175438600,
-                               0.1228070175438600,
-                               0.1228070175438600,
-                               0.1803278688524590,
-                               0.1803278688524590,
-                               0.1803278688524590,
-                               0.1833333333333330,
-                               0.1833333333333330,
-                               0.1833333333333330,
-                               0.1833333333333330,
-                               0.1967213114754100,
-                               0.1967213114754100,
-                               0.1967213114754100,
-                               0.1967213114754100,
-                               0.1967213114754100,
-                               0.2096774193548390,
-                               0.2131147540983610,
-                               0.2258064516129030,
-                               0.2295081967213110,
-                               0.2295081967213110,
-                               0.2372881355932200,
-                               0.2542372881355930,
-                               0.2542372881355930,
-                               0.2586206896551720,
-                               0.2586206896551720,
-                               0.2631578947368420,
-                               0.2678571428571430,
-                               0.2678571428571430,
-                               0.2807017543859650,
-                               0.2807017543859650,
-                               0.2807017543859650,
-                               0.2807017543859650,
-                               0.2857142857142860,
-                               0.2857142857142860,
-                               0.2857142857142860,
-                               0.2857142857142860,
-                               0.2857142857142860,
-                               0.2982456140350880,
-                               0.3103448275862070,
-                               0.3275862068965520,
-                               0.3389830508474580,
-                               0.3448275862068970,
-                               0.3684210526315790,
-                               0.3684210526315790,
-                               0.3859649122807020,
-                               0.3965517241379310,
-                               0.3965517241379310,
-                               0.3965517241379310,
-                               0.3965517241379310,
-                               0.3965517241379310,
-                               0.3898305084745760,
-                               0.3898305084745760,
-                               0.3898305084745760,
-                               0.3898305084745760,
-                               0.4000000000000000,
-                               0.4067796610169490,
-                               0.4166666666666670,
-                               0.4166666666666670,
-                               0.4166666666666670,
-                               0.4166666666666670,
-                               0.4166666666666670,
-                               0.4166666666666670,
-                               0.4166666666666670,
-                               0.4166666666666670,
-                               0.4067796610169490,
-                               0.4067796610169490,
-                               0.4166666666666670,
-                               0.4333333333333330,
-                               0.4333333333333330,
-                               0.4406779661016950,
-                               0.4406779661016950,
-                               0.4406779661016950,
-                               0.4333333333333330,
-                               0.4262295081967210,
-                               0.4426229508196720,
-                               0.4736842105263160,
-                               0.4827586206896550,
-                               0.4915254237288140,
-                               0.5000000000000000,
-                               0.5084745762711860,
-                               0.5084745762711860,
-                               0.5172413793103450,
-                               0.5172413793103450,
-                               0.5172413793103450,
-                               0.5172413793103450,
-                               0.5344827586206900,
-                               0.5344827586206900,
-                               0.5636363636363640,
-                               0.5636363636363640,
-                               0.6037735849056600,
-                               0.6111111111111110,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6111111111111110,
-                               0.6111111111111110,
-                               0.6111111111111110,
-                               0.6181818181818180,
-                               0.6181818181818180,
-                               0.6181818181818180,
-                               0.6181818181818180,
-                               0.6181818181818180,
-                               0.6181818181818180,
-                               0.6181818181818180,
-                               0.6181818181818180,
-                               0.6181818181818180,
-                               0.6296296296296300,
-                               0.6296296296296300,
-                               0.6415094339622640,
-                               0.6666666666666670,
-                               0.6800000000000000,
-                               0.6938775510204080,
-                               0.7000000000000000,
-                               0.7000000000000000,
-                               0.7115384615384620,
-                               0.7115384615384620,
-                               0.7115384615384620,
-                               0.7169811320754720,
-                               0.7413793103448280,
-                               0.7413793103448280,
-                               0.7413793103448280,
-                               0.7500000000000000,
-                               0.7500000000000000,
-                               0.7500000000000000,
-                               0.7627118644067800,
-                               0.7627118644067800,
-                               0.7741935483870970,
-                               0.7741935483870970,
-                               0.7741935483870970,
-                               0.7868852459016390,
-                               0.7903225806451610,
-                               0.7903225806451610,
-                               0.7936507936507940,
-                               0.7936507936507940,
-                               0.7936507936507940,
-                               0.7936507936507940,
-                               0.8125000000000000,
-                               0.8125000000000000,
-                               0.8125000000000000,
-                               0.8125000000000000,
-                               0.8125000000000000,
-                               0.8125000000000000,
-                               0.8153846153846150,
-                               0.8153846153846150,
-                               0.8153846153846150,
-                               0.8153846153846150,
-                               0.8153846153846150,
-                               0.8181818181818180,
-                               0.8181818181818180,
-                               0.8181818181818180,
-                               0.8235294117647060,
-                               0.8235294117647060,
-                               0.8235294117647060,
-                               0.8235294117647060,
-                               0.8358208955223880,
-                               0.8358208955223880,
-                               0.8358208955223880,
-                               0.8358208955223880,
-                               0.8358208955223880,
-                               0.8358208955223880,
-                               0.8358208955223880,
-                               0.8358208955223880,
-                               0.8358208955223880,
-                               0.8358208955223880,
-                               0.8382352941176470,
-                               0.8358208955223880,
-                               0.8507462686567160,
-                               0.8507462686567160,
-                               0.8507462686567160,
-                               0.8507462686567160,
-                               0.8507462686567160,
-                               0.8529411764705880,
-                               0.8529411764705880,
-                               0.8529411764705880,
-                               0.8529411764705880,
-                               0.8529411764705880,
-                               0.8529411764705880,
-                               0.8529411764705880,
-                               0.8550724637681160,
-                               0.8550724637681160,
-                               0.8550724637681160,
-                               0.8550724637681160,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8805970149253730,
-                               0.8805970149253730,
-                               0.8805970149253730,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8805970149253730,
-                               0.8939393939393940,
-                               0.8923076923076920,
-                               0.8923076923076920,
-                               0.8923076923076920,
-                               0.8787878787878790,
-                               0.8787878787878790,
-                               0.8656716417910450,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8550724637681160,
-                               0.8550724637681160,
-                               0.8550724637681160,
-                               0.8550724637681160,
-                               0.8550724637681160,
-                               0.8529411764705880,
-                               0.8529411764705880,
-                               0.8529411764705880,
-                               0.8529411764705880,
-                               0.8529411764705880,
-                               0.8529411764705880,
-                               0.8529411764705880,
-                               0.8529411764705880,
-                               0.8529411764705880,
-                               0.8529411764705880,
-                               0.8529411764705880,
-                               0.8529411764705880,
-                               0.8656716417910450,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8676470588235290,
-                               0.8550724637681160,
-                               0.8428571428571430,
-                               0.8428571428571430,
-                               0.8428571428571430,
-                               0.8428571428571430,
-                               0.8428571428571430,
-                               0.8428571428571430,
-                               0.8428571428571430,
-                               0.8428571428571430,
-                               0.8405797101449270,
-                               0.8405797101449270,
-                               0.8405797101449270,
-                               0.8285714285714290,
-                               0.8285714285714290,
-                               0.8285714285714290,
-                               0.8285714285714290,
-                               0.8285714285714290,
-                               0.8285714285714290,
-                               0.8235294117647060,
-                               0.8484848484848480,
-                               0.8461538461538460,
-                               0.8461538461538460,
-                               0.8461538461538460,
-                               0.8437500000000000,
-                               0.8181818181818180,
-                               0.8181818181818180,
-                               0.8181818181818180,
-                               0.8208955223880600,
-                               0.8208955223880600,
-                               0.8088235294117650,
-                               0.8088235294117650,
-                               0.8088235294117650,
-                               0.8088235294117650,
-                               0.8088235294117650,
-                               0.8088235294117650,
-                               0.8088235294117650,
-                               0.8088235294117650,
-                               0.7971014492753620,
-                               0.7826086956521740,
-                               0.7826086956521740,
-                               0.7794117647058820,
-                               0.7794117647058820,
-                               0.7910447761194030,
-                               0.8030303030303030,
-                               0.8030303030303030,
-                               0.8000000000000000,
-                               0.7878787878787880,
-                               0.7878787878787880,
-                               0.8000000000000000,
-                               0.7936507936507940,
-                               0.7777777777777780,
-                               0.7580645161290320,
-                               0.7500000000000000,
-                               0.7500000000000000,
-                               0.7457627118644070,
-                               0.7096774193548390,
-                               0.7166666666666670,
-                               0.7213114754098360,
-                               0.7213114754098360,
-                               0.7213114754098360,
-                               0.7213114754098360,
-                               0.7213114754098360,
-                               0.7096774193548390,
-                               0.7096774193548390,
-                               0.7096774193548390,
-                               0.7096774193548390,
-                               0.7142857142857140,
-                               0.7142857142857140,
-                               0.6984126984126980,
-                               0.7031250000000000,
-                               0.7031250000000000,
-                               0.7031250000000000,
-                               0.7031250000000000,
-                               0.7031250000000000,
-                               0.7031250000000000,
-                               0.7031250000000000,
-                               0.7076923076923080,
-                               0.7076923076923080,
-                               0.7076923076923080,
-                               0.7076923076923080,
-                               0.7076923076923080,
-                               0.7031250000000000,
-                               0.7031250000000000,
-                               0.7031250000000000,
-                               0.6923076923076920,
-                               0.7031250000000000,
-                               0.6984126984126980,
-                               0.7031250000000000,
-                               0.6984126984126980,
-                               0.6984126984126980,
-                               0.7096774193548390,
-                               0.6984126984126980,
-                               0.6984126984126980,
-                               0.6984126984126980,
-                               0.6984126984126980,
-                               0.6935483870967740,
-                               0.6825396825396830,
-                               0.6825396825396830,
-                               0.6984126984126980,
-                               0.7096774193548390,
-                               0.7096774193548390,
-                               0.7096774193548390,
-                               0.7096774193548390,
-                               0.7213114754098360,
-                               0.7540983606557380,
-                               0.7540983606557380,
-                               0.7500000000000000,
-                               0.7500000000000000,
-                               0.7758620689655170,
-                               0.7931034482758620,
-                               0.8000000000000000,
-                               0.8000000000000000,
-                               0.8064516129032260,
-                               0.8196721311475410,
-                               0.8253968253968250,
-                               0.8281250000000000,
-                               0.8281250000000000,
-                               0.8281250000000000,
-                               0.8412698412698410,
-                               0.8437500000000000,
-                               0.8437500000000000,
-                               0.8437500000000000,
-                               0.8412698412698410,
-                               0.8412698412698410,
-                               0.8412698412698410,
-                               0.8412698412698410,
-                               0.8412698412698410,
-                               0.8412698412698410,
-                               0.8412698412698410,
-                               0.8412698412698410,
-                               0.8524590163934430,
-                               0.8524590163934430,
-                               0.8500000000000000,
-                               0.8474576271186440,
-                               0.8474576271186440,
-                               0.8474576271186440,
-                               0.8500000000000000,
-                               0.8524590163934430,
-                               0.8524590163934430,
-                               0.8524590163934430,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8548387096774190,
-                               0.8412698412698410,
-                               0.8437500000000000,
-                               0.8437500000000000,
-                               0.8437500000000000,
-                               0.8307692307692310,
-                               0.8307692307692310,
-                               0.8307692307692310,
-                               0.8281250000000000,
-                               0.8281250000000000,
-                               0.8281250000000000,
-                               0.8281250000000000,
-                               0.8281250000000000,
-                               0.8281250000000000,
-                               0.8307692307692310,
-                               0.8307692307692310,
-                               0.8307692307692310,
-                               0.8307692307692310,
-                               0.8307692307692310,
-                               0.8307692307692310,
-                               0.8307692307692310,
-                               0.8181818181818180,
-                               0.8181818181818180,
-                               0.8153846153846150,
-                               0.8153846153846150,
-                               0.8281250000000000,
-                               0.8281250000000000,
-                               0.8225806451612900,
-                               0.8225806451612900,
-                               0.8095238095238100,
-                               0.8095238095238100,
-                               0.8225806451612900,
-                               0.8360655737704920,
-                               0.8360655737704920,
-                               0.8360655737704920,
-                               0.8360655737704920,
-                               0.8360655737704920,
-                               0.8360655737704920,
-                               0.8360655737704920,
-                               0.8360655737704920,
-                               0.8360655737704920,
-                               0.8360655737704920,
-                               0.8360655737704920,
-                               0.8360655737704920,
-                               0.8360655737704920,
-                               0.8500000000000000,
-                               0.8500000000000000,
-                               0.8500000000000000,
-                               0.8500000000000000,
-                               0.8500000000000000,
-                               0.8500000000000000,
-                               0.8500000000000000,
-                               0.8500000000000000,
-                               0.8500000000000000,
-                               0.8474576271186440,
-                               0.8500000000000000,
-                               0.8500000000000000,
-                               0.8333333333333330,
-                               0.8333333333333330,
-                               0.8500000000000000,
-                               0.8524590163934430,
-                               0.8387096774193550,
-                               0.8387096774193550,
-                               0.8387096774193550,
-                               0.8387096774193550,
-                               0.8412698412698410,
-                               0.8412698412698410,
-                               0.8412698412698410,
-                               0.8412698412698410,
-                               0.8387096774193550,
-                               0.8225806451612900,
-                               0.8225806451612900,
-                               0.8225806451612900,
-                               0.8225806451612900,
-                               0.8225806451612900,
-                               0.8253968253968250,
-                               0.8253968253968250,
-                               0.8253968253968250,
-                               0.8253968253968250,
-                               0.8253968253968250,
-                               0.8253968253968250,
-                               0.8253968253968250,
-                               0.8095238095238100,
-                               0.8225806451612900,
-                               0.8196721311475410,
-                               0.8166666666666670,
-                               0.8166666666666670,
-                               0.8166666666666670,
-                               0.8166666666666670,
-                               0.8166666666666670,
-                               0.8135593220338980,
-                               0.8135593220338980,
-                               0.7966101694915250,
-                               0.7868852459016390,
-                               0.7741935483870970,
-                               0.7741935483870970,
-                               0.7741935483870970,
-                               0.7741935483870970,
-                               0.7777777777777780,
-                               0.7777777777777780,
-                               0.7741935483870970,
-                               0.7741935483870970,
-                               0.7777777777777780,
-                               0.7741935483870970,
-                               0.7741935483870970,
-                               0.7868852459016390,
-                               0.7868852459016390,
-                               0.7741935483870970,
-                               0.7704918032786880,
-                               0.7580645161290320,
-                               0.7666666666666670,
-                               0.7540983606557380,
-                               0.7540983606557380,
-                               0.7540983606557380,
-                               0.7500000000000000,
-                               0.7377049180327870,
-                               0.7377049180327870,
-                               0.7377049180327870,
-                               0.7377049180327870,
-                               0.7377049180327870,
-                               0.7377049180327870,
-                               0.7377049180327870,
-                               0.7377049180327870,
-                               0.7377049180327870,
-                               0.7377049180327870,
-                               0.7377049180327870,
-                               0.7377049180327870,
-                               0.7377049180327870,
-                               0.7258064516129030,
-                               0.7142857142857140,
-                               0.7096774193548390,
-                               0.7049180327868850,
-                               0.7049180327868850,
-                               0.7166666666666670,
-                               0.7118644067796610,
-                               0.7118644067796610,
-                               0.7118644067796610,
-                               0.7118644067796610,
-                               0.7118644067796610,
-                               0.7118644067796610,
-                               0.7118644067796610,
-                               0.7241379310344830,
-                               0.7118644067796610,
-                               0.7000000000000000,
-                               0.6885245901639340,
-                               0.7000000000000000,
-                               0.7000000000000000,
-                               0.6949152542372880,
-                               0.6949152542372880,
-                               0.6949152542372880,
-                               0.6949152542372880,
-                               0.7068965517241380,
-                               0.6949152542372880,
-                               0.6896551724137930,
-                               0.7017543859649120,
-                               0.7017543859649120,
-                               0.7017543859649120,
-                               0.6779661016949150,
-                               0.6666666666666670,
-                               0.6610169491525420,
-                               0.6610169491525420,
-                               0.6610169491525420,
-                               0.6610169491525420,
-                               0.6500000000000000,
-                               0.6500000000000000,
-                               0.6440677966101690,
-                               0.6440677966101690,
-                               0.6428571428571430,
-                               0.6428571428571430,
-                               0.6428571428571430,
-                               0.6428571428571430,
-                               0.6315789473684210,
-                               0.6206896551724140,
-                               0.6206896551724140,
-                               0.6034482758620690,
-                               0.6034482758620690,
-                               0.6034482758620690,
-                               0.6034482758620690,
-                               0.6034482758620690,
-                               0.6140350877192980,
-                               0.6140350877192980,
-                               0.6071428571428570,
-                               0.6071428571428570,
-                               0.6071428571428570,
-                               0.5964912280701750,
-                               0.5862068965517240,
-                               0.5862068965517240,
-                               0.5862068965517240,
-                               0.5862068965517240,
-                               0.5964912280701750,
-                               0.6181818181818180,
-                               0.5964912280701750,
-                               0.5964912280701750,
-                               0.5964912280701750,
-                               0.5892857142857140,
-                               0.5689655172413790,
-                               0.5614035087719300,
-                               0.5614035087719300,
-                               0.5535714285714290,
-                               0.5555555555555560,
-                               0.5555555555555560,
-                               0.5555555555555560,
-                               0.5636363636363640,
-                               0.5636363636363640,
-                               0.5636363636363640,
-                               0.5636363636363640,
-                               0.5636363636363640,
-                               0.5636363636363640,
-                               0.5740740740740740,
-                               0.5740740740740740,
-                               0.5740740740740740,
-                               0.5740740740740740,
-                               0.5740740740740740,
-                               0.5576923076923080,
-                               0.5576923076923080,
-                               0.5490196078431370,
-                               0.5490196078431370,
-                               0.5600000000000000,
-                               0.5400000000000000,
-                               0.5400000000000000,
-                               0.5400000000000000,
-                               0.5400000000000000,
-                               0.5400000000000000,
-                               0.5400000000000000,
-                               0.5400000000000000,
-                               0.5192307692307690,
-                               0.5192307692307690,
-                               0.5192307692307690,
-                               0.4905660377358490,
-                               0.4905660377358490,
-                               0.4905660377358490,
-                               0.4814814814814810,
-                               0.4814814814814810,
-                               0.4814814814814810,
-                               0.4814814814814810,
-                               0.4561403508771930,
-                               0.4561403508771930,
-                               0.4363636363636360,
-                               0.4363636363636360,
-                               0.4363636363636360,
-                               0.4259259259259260,
-                               0.3962264150943400,
-                               0.3962264150943400,
-                               0.3846153846153850,
-                               0.3846153846153850,
-                               0.3846153846153850,
-                               0.3921568627450980,
-                               0.3921568627450980,
-                               0.3773584905660380,
-                               0.3333333333333330,
-                               0.3148148148148150,
-                               0.3018867924528300,
-                               0.2962962962962960,
-                               0.3018867924528300,
-                               0.3018867924528300,
-                               0.3018867924528300,
-                               0.3018867924528300,
-                               0.3076923076923080,
-                               0.3137254901960780,
-                               0.3137254901960780,
-                               0.3137254901960780,
-                               0.2857142857142860,
-                               0.2857142857142860,
-                               0.2800000000000000,
-                               0.2745098039215690,
-                               0.2692307692307690,
-                               0.2745098039215690,
-                               0.2600000000000000,
-                               0.2600000000000000,
-                               0.2600000000000000,
-                               0.2600000000000000,
-                               0.2549019607843140,
-                               0.2500000000000000,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.1960784313725490,
-                               0.1923076923076920,
-                               0.1923076923076920,
-                               0.1923076923076920,
-                               0.1923076923076920,
-                               0.1764705882352940,
-                               0.1764705882352940,
-                               0.1764705882352940,
-                               0.1764705882352940,
-                               0.1923076923076920,
-                               0.1923076923076920,
-                               0.1960784313725490,
-                               0.1960784313725490,
-                               0.1960784313725490,
-                               0.2000000000000000,
-                               0.1923076923076920,
-                               0.1960784313725490,
-                               0.1800000000000000,
-                               0.1800000000000000,
-                               0.1764705882352940,
-                               0.1800000000000000,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1698113207547170,
-                               0.1851851851851850,
-                               0.1851851851851850,
-                               0.1886792452830190,
-                               0.1851851851851850,
-                               0.1886792452830190,
-                               0.1886792452830190,
-                               0.1923076923076920,
-                               0.1923076923076920,
-                               0.1886792452830190,
-                               0.1886792452830190,
-                               0.1764705882352940,
-                               0.1600000000000000,
-                               0.1538461538461540,
-                               0.1481481481481480,
-                               0.1538461538461540,
-                               0.1538461538461540,
-                               0.1509433962264150,
-                               0.1346153846153850,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1153846153846150,
-                               0.1153846153846150,
-                               0.1176470588235290,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0943396226415094,
-                               0.0943396226415094,
-                               0.0943396226415094,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0909090909090909,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0847457627118644,
-                               0.0819672131147541,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0793650793650794,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0833333333333333,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0833333333333333,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0727272727272727,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0714285714285714,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0701754385964912,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0483870967741936,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0327868852459016,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0333333333333333,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0333333333333333,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0166666666666667,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0166666666666667,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0153846153846154,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0322580645161290,
-                               0.0327868852459016,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0491803278688525,
-                               0.0500000000000000,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0701754385964912,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.1071428571428570,
-                               0.1071428571428570,
-                               0.1071428571428570,
-                               0.1071428571428570,
-                               0.1071428571428570,
-                               0.1071428571428570,
-                               0.1071428571428570,
-                               0.1052631578947370,
-                               0.1052631578947370,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1111111111111110,
-                               0.1132075471698110,
-                               0.1153846153846150,
-                               0.1176470588235290,
-                               0.1176470588235290,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1509433962264150,
-                               0.1509433962264150,
-                               0.1666666666666670,
-                               0.1666666666666670,
-                               0.1818181818181820,
-                               0.1851851851851850,
-                               0.2280701754385960,
-                               0.2413793103448280,
-                               0.2413793103448280,
-                               0.2413793103448280,
-                               0.2413793103448280,
-                               0.2413793103448280,
-                               0.2413793103448280,
-                               0.2413793103448280,
-                               0.2413793103448280,
-                               0.2413793103448280,
-                               0.2413793103448280,
-                               0.2500000000000000,
-                               0.2545454545454540,
-                               0.2592592592592590,
-                               0.2500000000000000,
-                               0.2500000000000000,
-                               0.2500000000000000,
-                               0.2500000000000000,
-                               0.2452830188679250,
-                               0.2592592592592590,
-                               0.2592592592592590,
-                               0.2592592592592590,
-                               0.2592592592592590,
-                               0.2727272727272730,
-                               0.2727272727272730,
-                               0.2727272727272730,
-                               0.2909090909090910,
-                               0.2909090909090910,
-                               0.2962962962962960,
-                               0.3090909090909090,
-                               0.3090909090909090,
-                               0.3090909090909090,
-                               0.3090909090909090,
-                               0.3148148148148150,
-                               0.3148148148148150,
-                               0.3148148148148150,
-                               0.3207547169811320,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3396226415094340,
-                               0.3396226415094340,
-                               0.3518518518518520,
-                               0.3584905660377360,
-                               0.3703703703703700,
-                               0.3703703703703700,
-                               0.3703703703703700,
-                               0.3703703703703700,
-                               0.3703703703703700,
-                               0.3818181818181820,
-                               0.3818181818181820,
-                               0.4074074074074070,
-                               0.4074074074074070,
-                               0.4074074074074070,
-                               0.4074074074074070,
-                               0.4150943396226420,
-                               0.4150943396226420,
-                               0.4150943396226420,
-                               0.4150943396226420,
-                               0.4259259259259260,
-                               0.4150943396226420,
-                               0.4230769230769230,
-                               0.4230769230769230,
-                               0.4230769230769230,
-                               0.4230769230769230,
-                               0.4313725490196080,
-                               0.4423076923076920,
-                               0.4509803921568630,
-                               0.4509803921568630,
-                               0.4509803921568630,
-                               0.4509803921568630,
-                               0.4693877551020410,
-                               0.4693877551020410,
-                               0.4791666666666670,
-                               0.4791666666666670,
-                               0.4791666666666670,
-                               0.4893617021276600,
-                               0.5000000000000000,
-                               0.5000000000000000,
-                               0.5111111111111110,
-                               0.5111111111111110,
-                               0.5217391304347830,
-                               0.5217391304347830,
-                               0.5217391304347830,
-                               0.5333333333333330,
-                               0.5581395348837210,
-                               0.5581395348837210,
-                               0.5681818181818180,
-                               0.5777777777777780,
-                               0.5652173913043480,
-                               0.5531914893617020,
-                               0.5777777777777780,
-                               0.5777777777777780,
-                               0.5909090909090910,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.6250000000000000,
-                               0.6250000000000000,
-                               0.6382978723404260,
-                               0.6382978723404260,
-                               0.6382978723404260,
-                               0.6382978723404260,
-                               0.6382978723404260,
-                               0.6382978723404260,
-                               0.6382978723404260,
-                               0.6521739130434780,
-                               0.6739130434782610,
-                               0.6888888888888890,
-                               0.7083333333333330,
-                               0.7083333333333330,
-                               0.7083333333333330,
-                               0.7083333333333330,
-                               0.7200000000000000,
-                               0.7346938775510200,
-                               0.7450980392156860,
-                               0.7450980392156860,
-                               0.7450980392156860,
-                               0.7500000000000000,
-                               0.7500000000000000,
-                               0.7500000000000000,
-                               0.7592592592592590,
-                               0.7592592592592590,
-                               0.7592592592592590,
-                               0.7592592592592590,
-                               0.7592592592592590,
-                               0.7454545454545450,
-                               0.7592592592592590,
-                               0.7592592592592590,
-                               0.7678571428571430,
-                               0.7678571428571430,
-                               0.7678571428571430,
-                               0.7543859649122810,
-                               0.7719298245614030,
-                               0.7719298245614030,
-                               0.7758620689655170,
-                               0.7758620689655170,
-                               0.7796610169491530,
-                               0.7796610169491530,
-                               0.7796610169491530,
-                               0.7796610169491530,
-                               0.7796610169491530,
-                               0.7796610169491530,
-                               0.7758620689655170,
-                               0.7758620689655170,
-                               0.7894736842105260,
-                               0.7894736842105260,
-                               0.7894736842105260,
-                               0.7894736842105260,
-                               0.7894736842105260,
-                               0.7894736842105260,
-                               0.7931034482758620,
-                               0.7931034482758620,
-                               0.7931034482758620,
-                               0.7931034482758620,
-                               0.8070175438596490,
-                               0.8214285714285710,
-                               0.8245614035087720,
-                               0.8245614035087720,
-                               0.8245614035087720,
-                               0.8245614035087720,
-                               0.8245614035087720,
-                               0.8245614035087720,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8392857142857140,
-                               0.8545454545454550,
-                               0.8545454545454550,
-                               0.8545454545454550,
-                               0.8545454545454550,
-                               0.8545454545454550,
-                               0.8545454545454550,
-                               0.8545454545454550,
-                               0.8545454545454550,
-                               0.8518518518518520,
-                               0.8518518518518520,
-                               0.8518518518518520,
-                               0.8363636363636360,
-                               0.8545454545454550,
-                               0.8571428571428570,
-                               0.8596491228070170,
-                               0.8596491228070170,
-                               0.8596491228070170,
-                               0.8596491228070170,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8596491228070170,
-                               0.8596491228070170,
-                               0.8596491228070170,
-                               0.8596491228070170,
-                               0.8596491228070170,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8545454545454550,
-                               0.8545454545454550,
-                               0.8545454545454550,
-                               0.8571428571428570,
-                               0.8596491228070170,
-                               0.8596491228070170,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8644067796610170,
-                               0.8644067796610170,
-                               0.8644067796610170,
-                               0.8793103448275860,
-                               0.8771929824561400,
-                               0.8771929824561400,
-                               0.8793103448275860,
-                               0.8793103448275860,
-                               0.8793103448275860,
-                               0.8793103448275860,
-                               0.8813559322033900,
-                               0.8813559322033900,
-                               0.8813559322033900,
-                               0.8813559322033900,
-                               0.8813559322033900,
-                               0.8813559322033900,
-                               0.8813559322033900,
-                               0.8813559322033900,
-                               0.8813559322033900,
-                               0.8813559322033900,
-                               0.8813559322033900,
-                               0.8771929824561400,
-                               0.8771929824561400,
-                               0.8771929824561400,
-                               0.8771929824561400,
-                               0.8771929824561400,
-                               0.8771929824561400,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8448275862068960,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8392857142857140,
-                               0.8333333333333330,
-                               0.8301886792452830,
-                               0.8301886792452830,
-                               0.8301886792452830,
-                               0.8301886792452830,
-                               0.8235294117647060,
-                               0.8235294117647060,
-                               0.8269230769230770,
-                               0.8269230769230770,
-                               0.8431372549019610,
-                               0.8431372549019610,
-                               0.8490566037735850,
-                               0.8490566037735850,
-                               0.8518518518518520,
-                               0.8518518518518520,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8571428571428570,
-                               0.8545454545454550,
-                               0.8545454545454550,
-                               0.8596491228070170,
-                               0.8596491228070170,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8596491228070170,
-                               0.8596491228070170,
-                               0.8596491228070170,
-                               0.8596491228070170,
-                               0.8596491228070170,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8545454545454550,
-                               0.8545454545454550,
-                               0.8518518518518520,
-                               0.8518518518518520,
-                               0.8545454545454550,
-                               0.8596491228070170,
-                               0.8596491228070170,
-                               0.8596491228070170,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8644067796610170,
-                               0.8644067796610170,
-                               0.8644067796610170,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8666666666666670,
-                               0.8813559322033900,
-                               0.8793103448275860,
-                               0.8793103448275860,
-                               0.8771929824561400,
-                               0.8771929824561400,
-                               0.8771929824561400,
-                               0.8771929824561400,
-                               0.8771929824561400,
-                               0.8771929824561400,
-                               0.8793103448275860,
-                               0.8771929824561400,
-                               0.8771929824561400,
-                               0.8620689655172410,
-                               0.8644067796610170,
-                               0.8644067796610170,
-                               0.8644067796610170,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8771929824561400,
-                               0.8771929824561400,
-                               0.8771929824561400,
-                               0.8771929824561400,
-                               0.8771929824561400,
-                               0.8750000000000000,
-                               0.8771929824561400,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8474576271186440,
-                               0.8474576271186440,
-                               0.8474576271186440,
-                               0.8474576271186440,
-                               0.8474576271186440,
-                               0.8474576271186440,
-                               0.8474576271186440,
-                               0.8474576271186440,
-                               0.8474576271186440,
-                               0.8474576271186440,
-                               0.8474576271186440,
-                               0.8474576271186440,
-                               0.8474576271186440,
-                               0.8474576271186440,
-                               0.8474576271186440,
-                               0.8474576271186440,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8750000000000000,
-                               0.8771929824561400,
-                               0.8771929824561400,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8620689655172410,
-                               0.8474576271186440,
-                               0.8474576271186440,
-                               0.8448275862068960,
-                               0.8448275862068960,
-                               0.8448275862068960,
-                               0.8448275862068960,
-                               0.8448275862068960,
-                               0.8448275862068960,
-                               0.8448275862068960,
-                               0.8448275862068960,
-                               0.8448275862068960,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8421052631578950,
-                               0.8448275862068960,
-                               0.8448275862068960,
-                               0.8571428571428570,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8727272727272730,
-                               0.8703703703703700,
-                               0.8867924528301890,
-                               0.8867924528301890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8888888888888890,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8703703703703700,
-                               0.8679245283018870,
-                               0.8679245283018870,
-                               0.8703703703703700,
-                               0.8518518518518520,
-                               0.8518518518518520,
-                               0.8518518518518520,
-                               0.8679245283018870,
-                               0.8679245283018870,
-                               0.8653846153846150,
-                               0.8653846153846150,
-                               0.8627450980392160,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8571428571428570,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8600000000000000,
-                               0.8627450980392160,
-                               0.8627450980392160,
-                               0.8627450980392160,
-                               0.8627450980392160,
-                               0.8600000000000000,
-                               0.8775510204081630,
-                               0.8750000000000000,
-                               0.8571428571428570,
-                               0.8400000000000000,
-                               0.8400000000000000,
-                               0.8400000000000000,
-                               0.8235294117647060,
-                               0.8235294117647060,
-                               0.8235294117647060,
-                               0.8235294117647060,
-                               0.8235294117647060,
-                               0.8235294117647060,
-                               0.8076923076923080,
-                               0.7924528301886790,
-                               0.7924528301886790,
-                               0.7818181818181820,
-                               0.7818181818181820,
-                               0.7818181818181820,
-                               0.7818181818181820,
-                               0.7818181818181820,
-                               0.7818181818181820,
-                               0.7818181818181820,
-                               0.7818181818181820,
-                               0.7857142857142860,
-                               0.7857142857142860,
-                               0.7857142857142860,
-                               0.7924528301886790,
-                               0.7924528301886790,
-                               0.7924528301886790,
-                               0.7924528301886790,
-                               0.7924528301886790,
-                               0.8076923076923080,
-                               0.7924528301886790,
-                               0.7924528301886790,
-                               0.7962962962962960,
-                               0.7962962962962960,
-                               0.7962962962962960,
-                               0.7962962962962960,
-                               0.7962962962962960,
-                               0.7962962962962960,
-                               0.7962962962962960,
-                               0.8113207547169810,
-                               0.7924528301886790,
-                               0.7924528301886790,
-                               0.7777777777777780,
-                               0.7777777777777780,
-                               0.7636363636363640,
-                               0.7500000000000000,
-                               0.7500000000000000,
-                               0.7500000000000000,
-                               0.7368421052631580,
-                               0.7368421052631580,
-                               0.7368421052631580,
-                               0.7368421052631580,
-                               0.7241379310344830,
-                               0.7192982456140350,
-                               0.7192982456140350,
-                               0.7192982456140350,
-                               0.7192982456140350,
-                               0.7192982456140350,
-                               0.7192982456140350,
-                               0.7142857142857140,
-                               0.7142857142857140,
-                               0.7142857142857140,
-                               0.7142857142857140,
-                               0.7090909090909090,
-                               0.7090909090909090,
-                               0.7090909090909090,
-                               0.7037037037037040,
-                               0.7037037037037040,
-                               0.7037037037037040,
-                               0.7037037037037040,
-                               0.7037037037037040,
-                               0.6851851851851850,
-                               0.6909090909090910,
-                               0.6909090909090910,
-                               0.6909090909090910,
-                               0.6909090909090910,
-                               0.7037037037037040,
-                               0.7037037037037040,
-                               0.7037037037037040,
-                               0.7037037037037040,
-                               0.6981132075471700,
-                               0.6981132075471700,
-                               0.6981132075471700,
-                               0.6923076923076920,
-                               0.6923076923076920,
-                               0.6923076923076920,
-                               0.6923076923076920,
-                               0.6923076923076920,
-                               0.6792452830188680,
-                               0.6792452830188680,
-                               0.6792452830188680,
-                               0.6792452830188680,
-                               0.6730769230769230,
-                               0.6730769230769230,
-                               0.6666666666666670,
-                               0.6538461538461540,
-                               0.6538461538461540,
-                               0.6538461538461540,
-                               0.6538461538461540,
-                               0.6538461538461540,
-                               0.6538461538461540,
-                               0.6538461538461540,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6666666666666670,
-                               0.6538461538461540,
-                               0.6470588235294120,
-                               0.6346153846153850,
-                               0.6346153846153850,
-                               0.6346153846153850,
-                               0.6346153846153850,
-                               0.6346153846153850,
-                               0.6346153846153850,
-                               0.6400000000000000,
-                               0.6326530612244900,
-                               0.6326530612244900,
-                               0.6326530612244900,
-                               0.6326530612244900,
-                               0.6326530612244900,
-                               0.6250000000000000,
-                               0.6326530612244900,
-                               0.6326530612244900,
-                               0.6326530612244900,
-                               0.6250000000000000,
-                               0.6000000000000000,
-                               0.6000000000000000,
-                               0.5882352941176470,
-                               0.5882352941176470,
-                               0.5800000000000000,
-                               0.5600000000000000,
-                               0.5714285714285710,
-                               0.5714285714285710,
-                               0.5714285714285710,
-                               0.5625000000000000,
-                               0.5625000000000000,
-                               0.5625000000000000,
-                               0.5510204081632650,
-                               0.5294117647058820,
-                               0.5294117647058820,
-                               0.5384615384615380,
-                               0.5384615384615380,
-                               0.5384615384615380,
-                               0.5384615384615380,
-                               0.5000000000000000,
-                               0.5000000000000000,
-                               0.4893617021276600,
-                               0.4791666666666670,
-                               0.4680851063829790,
-                               0.4782608695652170,
-                               0.4666666666666670,
-                               0.4666666666666670,
-                               0.4666666666666670,
-                               0.4666666666666670,
-                               0.4565217391304350,
-                               0.4565217391304350,
-                               0.4255319148936170,
-                               0.4130434782608700,
-                               0.3863636363636360,
-                               0.3777777777777780,
-                               0.3636363636363640,
-                               0.3636363636363640,
-                               0.3333333333333330,
-                               0.3488372093023260,
-                               0.3636363636363640,
-                               0.3636363636363640,
-                               0.3488372093023260,
-                               0.3409090909090910,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3181818181818180,
-                               0.3255813953488370,
-                               0.3095238095238100,
-                               0.3095238095238100,
-                               0.2926829268292680,
-                               0.2926829268292680,
-                               0.2857142857142860,
-                               0.2857142857142860,
-                               0.2790697674418600,
-                               0.2790697674418600,
-                               0.2727272727272730,
-                               0.2727272727272730,
-                               0.2790697674418600,
-                               0.2790697674418600,
-                               0.2790697674418600,
-                               0.2790697674418600,
-                               0.2790697674418600,
-                               0.2619047619047620,
-                               0.2558139534883720,
-                               0.2558139534883720,
-                               0.2380952380952380,
-                               0.2380952380952380,
-                               0.2272727272727270,
-                               0.2142857142857140,
-                               0.2045454545454550,
-                               0.2000000000000000,
-                               0.1777777777777780,
-                               0.1777777777777780,
-                               0.1702127659574470,
-                               0.1521739130434780,
-                               0.1458333333333330,
-                               0.1458333333333330,
-                               0.1600000000000000,
-                               0.1600000000000000,
-                               0.1600000000000000,
-                               0.1600000000000000,
-                               0.1568627450980390,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1372549019607840,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1132075471698110,
-                               0.1153846153846150,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.1020408163265310,
-                               0.1020408163265310,
-                               0.1020408163265310,
-                               0.1020408163265310,
-                               0.1020408163265310,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1020408163265310,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1020408163265310,
-                               0.1020408163265310,
-                               0.1000000000000000,
-                               0.1020408163265310,
-                               0.1020408163265310,
-                               0.1020408163265310,
-                               0.1020408163265310,
-                               0.1041666666666670,
-                               0.1041666666666670,
-                               0.1020408163265310,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0851063829787234,
-                               0.0851063829787234,
-                               0.0851063829787234,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0851063829787234,
-                               0.0851063829787234,
-                               0.0851063829787234,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0800000000000000,
-                               0.0784313725490196,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0754716981132075,
-                               0.0754716981132075,
-                               0.0754716981132075,
-                               0.0754716981132075,
-                               0.0754716981132075,
-                               0.0754716981132075,
-                               0.0754716981132075,
-                               0.0754716981132075,
-                               0.0754716981132075,
-                               0.0576923076923077,
-                               0.0576923076923077,
-                               0.0576923076923077,
-                               0.0576923076923077,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0600000000000000,
-                               0.0600000000000000,
-                               0.0600000000000000,
-                               0.0600000000000000,
-                               0.0600000000000000,
-                               0.0600000000000000,
-                               0.0600000000000000,
-                               0.0600000000000000,
-                               0.0600000000000000,
-                               0.0600000000000000,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0600000000000000,
-                               0.0600000000000000,
-                               0.0600000000000000,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0576923076923077,
-                               0.0576923076923077,
-                               0.0576923076923077,
-                               0.0576923076923077,
-                               0.0566037735849057,
-                               0.0566037735849057,
-                               0.0566037735849057,
-                               0.0566037735849057,
-                               0.0566037735849057,
-                               0.0555555555555556,
-                               0.0555555555555556,
-                               0.0555555555555556,
-                               0.0555555555555556,
-                               0.0555555555555556,
-                               0.0555555555555556,
-                               0.0555555555555556,
-                               0.0545454545454545,
-                               0.0535714285714286,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0357142857142857,
-                               0.0357142857142857,
-                               0.0357142857142857,
-                               0.0357142857142857,
-                               0.0363636363636364,
-                               0.0357142857142857,
-                               0.0357142857142857,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0377358490566038,
-                               0.0377358490566038,
-                               0.0377358490566038,
-                               0.0377358490566038,
-                               0.0384615384615385,
-                               0.0392156862745098,
-                               0.0392156862745098,
-                               0.0400000000000000,
-                               0.0400000000000000,
-                               0.0392156862745098,
-                               0.0392156862745098,
-                               0.0377358490566038,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0377358490566038,
-                               0.0392156862745098,
-                               0.0392156862745098,
-                               0.0392156862745098,
-                               0.0392156862745098,
-                               0.0392156862745098,
-                               0.0392156862745098,
-                               0.0377358490566038,
-                               0.0377358490566038,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0185185185185185,
-                               0.0181818181818182,
-                               0.0181818181818182,
-                               0.0181818181818182,
-                               0.0181818181818182,
-                               0.0181818181818182,
-                               0.0181818181818182,
-                               0.0181818181818182,
-                               0.0181818181818182,
-                               0.0181818181818182,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000
-                       }
-               },
-               { PLACE_CATEG_ID_OTHER,
-                       {
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0178571428571429,
-                               0.0178571428571429,
-                               0.0178571428571429,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0178571428571429,
-                               0.0178571428571429,
-                               0.0178571428571429,
-                               0.0178571428571429,
-                               0.0178571428571429,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0181818181818182,
-                               0.0181818181818182,
-                               0.0178571428571429,
-                               0.0178571428571429,
-                               0.0178571428571429,
-                               0.0178571428571429,
-                               0.0185185185185185,
-                               0.0185185185185185,
-                               0.0185185185185185,
-                               0.0185185185185185,
-                               0.0185185185185185,
-                               0.0185185185185185,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0535714285714286,
-                               0.0535714285714286,
-                               0.0535714285714286,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0555555555555556,
-                               0.0555555555555556,
-                               0.0555555555555556,
-                               0.0555555555555556,
-                               0.0555555555555556,
-                               0.0555555555555556,
-                               0.0555555555555556,
-                               0.0555555555555556,
-                               0.0377358490566038,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0384615384615385,
-                               0.0384615384615385,
-                               0.0384615384615385,
-                               0.0384615384615385,
-                               0.0196078431372549,
-                               0.0196078431372549,
-                               0.0192307692307692,
-                               0.0192307692307692,
-                               0.0192307692307692,
-                               0.0196078431372549,
-                               0.0196078431372549,
-                               0.0196078431372549,
-                               0.0192307692307692,
-                               0.0192307692307692,
-                               0.0192307692307692,
-                               0.0192307692307692,
-                               0.0192307692307692,
-                               0.0192307692307692,
-                               0.0192307692307692,
-                               0.0192307692307692,
-                               0.0192307692307692,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0192307692307692,
-                               0.0192307692307692,
-                               0.0192307692307692,
-                               0.0192307692307692,
-                               0.0192307692307692,
-                               0.0192307692307692,
-                               0.0192307692307692,
-                               0.0185185185185185,
-                               0.0185185185185185,
-                               0.0185185185185185,
-                               0.0185185185185185,
-                               0.0185185185185185,
-                               0.0188679245283019,
-                               0.0185185185185185,
-                               0.0185185185185185,
-                               0.0185185185185185,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0192307692307692,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0181818181818182,
-                               0.0181818181818182,
-                               0.0181818181818182,
-                               0.0181818181818182,
-                               0.0181818181818182,
-                               0.0181818181818182,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0192307692307692,
-                               0.0200000000000000,
-                               0.0200000000000000,
-                               0.0208333333333333,
-                               0.0212765957446808,
-                               0.0212765957446808,
-                               0.0212765957446808,
-                               0.0212765957446808,
-                               0.0416666666666667,
-                               0.0400000000000000,
-                               0.0392156862745098,
-                               0.0384615384615385,
-                               0.0384615384615385,
-                               0.0384615384615385,
-                               0.0384615384615385,
-                               0.0392156862745098,
-                               0.0400000000000000,
-                               0.0400000000000000,
-                               0.0400000000000000,
-                               0.0392156862745098,
-                               0.0392156862745098,
-                               0.0392156862745098,
-                               0.0392156862745098,
-                               0.0392156862745098,
-                               0.0384615384615385,
-                               0.0384615384615385,
-                               0.0400000000000000,
-                               0.0392156862745098,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0408163265306122,
-                               0.0425531914893617,
-                               0.0425531914893617,
-                               0.0425531914893617,
-                               0.0425531914893617,
-                               0.0444444444444444,
-                               0.0434782608695652,
-                               0.0434782608695652,
-                               0.0434782608695652,
-                               0.0434782608695652,
-                               0.0434782608695652,
-                               0.0434782608695652,
-                               0.0425531914893617,
-                               0.0434782608695652,
-                               0.0434782608695652,
-                               0.0434782608695652,
-                               0.0434782608695652,
-                               0.0434782608695652,
-                               0.0434782608695652,
-                               0.0444444444444444,
-                               0.0444444444444444,
-                               0.0444444444444444,
-                               0.0434782608695652,
-                               0.0434782608695652,
-                               0.0434782608695652,
-                               0.0434782608695652,
-                               0.0434782608695652,
-                               0.0454545454545455,
-                               0.0454545454545455,
-                               0.0454545454545455,
-                               0.0454545454545455,
-                               0.0444444444444444,
-                               0.0444444444444444,
-                               0.0465116279069768,
-                               0.0454545454545455,
-                               0.0454545454545455,
-                               0.0454545454545455,
-                               0.0444444444444444,
-                               0.0444444444444444,
-                               0.0444444444444444,
-                               0.0454545454545455,
-                               0.0454545454545455,
-                               0.0454545454545455,
-                               0.0408163265306122,
-                               0.0408163265306122,
-                               0.0400000000000000,
-                               0.0392156862745098,
-                               0.0392156862745098,
-                               0.0392156862745098,
-                               0.0377358490566038,
-                               0.0377358490566038,
-                               0.0384615384615385,
-                               0.0384615384615385,
-                               0.0377358490566038,
-                               0.0377358490566038,
-                               0.0377358490566038,
-                               0.0377358490566038,
-                               0.0357142857142857,
-                               0.0357142857142857,
-                               0.0357142857142857,
-                               0.0357142857142857,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0357142857142857,
-                               0.0357142857142857,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0500000000000000,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0666666666666667,
-                               0.0677966101694915,
-                               0.0666666666666667,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0819672131147541,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0508474576271187,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0508474576271187,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0655737704918033,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0517241379310345,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0535714285714286,
-                               0.0535714285714286,
-                               0.0535714285714286,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0740740740740741,
-                               0.0740740740740741,
-                               0.0909090909090909,
-                               0.0925925925925926,
-                               0.1090909090909090,
-                               0.1111111111111110,
-                               0.1132075471698110,
-                               0.1153846153846150,
-                               0.1153846153846150,
-                               0.1153846153846150,
-                               0.0943396226415094,
-                               0.0943396226415094,
-                               0.0961538461538462,
-                               0.0943396226415094,
-                               0.0943396226415094,
-                               0.0943396226415094,
-                               0.0925925925925926,
-                               0.0909090909090909,
-                               0.1228070175438600,
-                               0.1228070175438600,
-                               0.1228070175438600,
-                               0.1228070175438600,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1228070175438600,
-                               0.1206896551724140,
-                               0.1206896551724140,
-                               0.1228070175438600,
-                               0.1071428571428570,
-                               0.1071428571428570,
-                               0.0909090909090909,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0892857142857143,
-                               0.0892857142857143,
-                               0.0892857142857143,
-                               0.1052631578947370,
-                               0.1052631578947370,
-                               0.1052631578947370,
-                               0.1071428571428570,
-                               0.1071428571428570,
-                               0.1071428571428570,
-                               0.1071428571428570,
-                               0.1071428571428570,
-                               0.1071428571428570,
-                               0.1071428571428570,
-                               0.1250000000000000,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.1090909090909090,
-                               0.1071428571428570,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1071428571428570,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0892857142857143,
-                               0.0892857142857143,
-                               0.0892857142857143,
-                               0.0892857142857143,
-                               0.0877192982456140,
-                               0.1071428571428570,
-                               0.1071428571428570,
-                               0.1228070175438600,
-                               0.1228070175438600,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1071428571428570,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1296296296296300,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1132075471698110,
-                               0.1153846153846150,
-                               0.1153846153846150,
-                               0.0980392156862745,
-                               0.1132075471698110,
-                               0.1153846153846150,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.1153846153846150,
-                               0.1176470588235290,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1400000000000000,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1600000000000000,
-                               0.1836734693877550,
-                               0.1836734693877550,
-                               0.1836734693877550,
-                               0.1632653061224490,
-                               0.1632653061224490,
-                               0.1800000000000000,
-                               0.1914893617021280,
-                               0.1914893617021280,
-                               0.1914893617021280,
-                               0.1914893617021280,
-                               0.1914893617021280,
-                               0.1914893617021280,
-                               0.1956521739130430,
-                               0.1956521739130430,
-                               0.1956521739130430,
-                               0.1956521739130430,
-                               0.2173913043478260,
-                               0.2173913043478260,
-                               0.2127659574468080,
-                               0.2127659574468080,
-                               0.2127659574468080,
-                               0.2040816326530610,
-                               0.2000000000000000,
-                               0.1818181818181820,
-                               0.1818181818181820,
-                               0.1818181818181820,
-                               0.1818181818181820,
-                               0.1627906976744190,
-                               0.1627906976744190,
-                               0.1627906976744190,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1463414634146340,
-                               0.1463414634146340,
-                               0.1860465116279070,
-                               0.1860465116279070,
-                               0.2045454545454550,
-                               0.2093023255813950,
-                               0.2093023255813950,
-                               0.2093023255813950,
-                               0.2272727272727270,
-                               0.2272727272727270,
-                               0.2608695652173910,
-                               0.2608695652173910,
-                               0.2444444444444440,
-                               0.2444444444444440,
-                               0.2954545454545450,
-                               0.2954545454545450,
-                               0.3404255319148940,
-                               0.3333333333333330,
-                               0.3265306122448980,
-                               0.3265306122448980,
-                               0.3200000000000000,
-                               0.3265306122448980,
-                               0.3400000000000000,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3269230769230770,
-                               0.3207547169811320,
-                               0.3396226415094340,
-                               0.3396226415094340,
-                               0.3333333333333330,
-                               0.3269230769230770,
-                               0.3207547169811320,
-                               0.3207547169811320,
-                               0.3207547169811320,
-                               0.3148148148148150,
-                               0.3148148148148150,
-                               0.3148148148148150,
-                               0.3090909090909090,
-                               0.3214285714285710,
-                               0.3214285714285710,
-                               0.3214285714285710,
-                               0.3272727272727270,
-                               0.3214285714285710,
-                               0.3214285714285710,
-                               0.3214285714285710,
-                               0.3214285714285710,
-                               0.3214285714285710,
-                               0.3214285714285710,
-                               0.3214285714285710,
-                               0.3214285714285710,
-                               0.3214285714285710,
-                               0.3148148148148150,
-                               0.3148148148148150,
-                               0.3148148148148150,
-                               0.3148148148148150,
-                               0.3090909090909090,
-                               0.3148148148148150,
-                               0.2127659574468080,
-                               0.2127659574468080,
-                               0.2127659574468080,
-                               0.2127659574468080,
-                               0.2173913043478260,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.1818181818181820,
-                               0.1818181818181820,
-                               0.1777777777777780,
-                               0.1777777777777780,
-                               0.1777777777777780,
-                               0.1777777777777780,
-                               0.1521739130434780,
-                               0.1521739130434780,
-                               0.1521739130434780,
-                               0.1304347826086960,
-                               0.1304347826086960,
-                               0.1304347826086960,
-                               0.1276595744680850,
-                               0.1276595744680850,
-                               0.1276595744680850,
-                               0.1250000000000000,
-                               0.1600000000000000,
-                               0.1600000000000000,
-                               0.1632653061224490,
-                               0.1666666666666670,
-                               0.1666666666666670,
-                               0.1666666666666670,
-                               0.1800000000000000,
-                               0.1800000000000000,
-                               0.1800000000000000,
-                               0.1960784313725490,
-                               0.1960784313725490,
-                               0.1923076923076920,
-                               0.1923076923076920,
-                               0.1923076923076920,
-                               0.1886792452830190,
-                               0.1886792452830190,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1568627450980390,
-                               0.1568627450980390,
-                               0.1568627450980390,
-                               0.1568627450980390,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1372549019607840,
-                               0.1372549019607840,
-                               0.1538461538461540,
-                               0.1538461538461540,
-                               0.1200000000000000,
-                               0.1200000000000000,
-                               0.1346153846153850,
-                               0.1372549019607840,
-                               0.1372549019607840,
-                               0.1200000000000000,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0800000000000000,
-                               0.0800000000000000,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0784313725490196,
-                               0.0961538461538462,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1153846153846150,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.0943396226415094,
-                               0.0943396226415094,
-                               0.0925925925925926,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0925925925925926,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0740740740740741,
-                               0.0740740740740741,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0689655172413793,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0701754385964912,
-                               0.0689655172413793,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0689655172413793,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0500000000000000,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0655737704918033,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0634920634920635,
-                               0.0634920634920635,
-                               0.0634920634920635,
-                               0.0625000000000000,
-                               0.0634920634920635,
-                               0.0634920634920635,
-                               0.0634920634920635,
-                               0.0634920634920635,
-                               0.0634920634920635,
-                               0.0634920634920635,
-                               0.0625000000000000,
-                               0.0625000000000000,
-                               0.0625000000000000,
-                               0.0625000000000000,
-                               0.0625000000000000,
-                               0.0625000000000000,
-                               0.0625000000000000,
-                               0.0625000000000000,
-                               0.0625000000000000,
-                               0.0625000000000000,
-                               0.0625000000000000,
-                               0.0625000000000000,
-                               0.0625000000000000,
-                               0.0625000000000000,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0172413793103448,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0178571428571429,
-                               0.0181818181818182,
-                               0.0357142857142857,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0350877192982456,
-                               0.0178571428571429,
-                               0.0178571428571429,
-                               0.0178571428571429,
-                               0.0178571428571429,
-                               0.0181818181818182,
-                               0.0181818181818182,
-                               0.0181818181818182,
-                               0.0181818181818182,
-                               0.0181818181818182,
-                               0.0181818181818182,
-                               0.0181818181818182,
-                               0.0185185185185185,
-                               0.0185185185185185,
-                               0.0185185185185185,
-                               0.0185185185185185,
-                               0.0185185185185185,
-                               0.0185185185185185,
-                               0.0181818181818182,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0185185185185185,
-                               0.0185185185185185,
-                               0.0185185185185185,
-                               0.0185185185185185,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0181818181818182,
-                               0.0185185185185185,
-                               0.0185185185185185,
-                               0.0185185185185185,
-                               0.0185185185185185,
-                               0.0185185185185185,
-                               0.0181818181818182,
-                               0.0185185185185185,
-                               0.0181818181818182,
-                               0.0181818181818182,
-                               0.0185185185185185,
-                               0.0185185185185185,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0192307692307692,
-                               0.0196078431372549,
-                               0.0196078431372549,
-                               0.0196078431372549,
-                               0.0196078431372549,
-                               0.0196078431372549,
-                               0.0200000000000000,
-                               0.0200000000000000,
-                               0.0200000000000000,
-                               0.0400000000000000,
-                               0.0400000000000000,
-                               0.0392156862745098,
-                               0.0392156862745098,
-                               0.0400000000000000,
-                               0.0400000000000000,
-                               0.0400000000000000,
-                               0.0392156862745098,
-                               0.0384615384615385,
-                               0.0566037735849057,
-                               0.0566037735849057,
-                               0.0576923076923077,
-                               0.0576923076923077,
-                               0.0576923076923077,
-                               0.0576923076923077,
-                               0.0576923076923077,
-                               0.0566037735849057,
-                               0.0566037735849057,
-                               0.0566037735849057,
-                               0.0566037735849057,
-                               0.0566037735849057,
-                               0.0566037735849057,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0600000000000000,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0600000000000000,
-                               0.0600000000000000,
-                               0.0600000000000000,
-                               0.0600000000000000,
-                               0.0600000000000000,
-                               0.0600000000000000,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0392156862745098,
-                               0.0392156862745098,
-                               0.0392156862745098,
-                               0.0384615384615385,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0392156862745098,
-                               0.0200000000000000,
-                               0.0408163265306122,
-                               0.0408163265306122,
-                               0.0408163265306122,
-                               0.0408163265306122,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0425531914893617,
-                               0.0425531914893617,
-                               0.0425531914893617,
-                               0.0425531914893617,
-                               0.0425531914893617,
-                               0.0416666666666667,
-                               0.0625000000000000,
-                               0.0612244897959184,
-                               0.0612244897959184,
-                               0.0612244897959184,
-                               0.0600000000000000,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0600000000000000,
-                               0.0600000000000000,
-                               0.0600000000000000,
-                               0.0638297872340425,
-                               0.0638297872340425,
-                               0.0434782608695652,
-                               0.0444444444444444,
-                               0.0444444444444444,
-                               0.0444444444444444,
-                               0.0444444444444444,
-                               0.0444444444444444,
-                               0.0227272727272727,
-                               0.0217391304347826,
-                               0.0212765957446808,
-                               0.0208333333333333,
-                               0.0204081632653061,
-                               0.0204081632653061,
-                               0.0200000000000000,
-                               0.0196078431372549,
-                               0.0196078431372549,
-                               0.0196078431372549,
-                               0.0196078431372549,
-                               0.0196078431372549,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0312500000000000,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0468750000000000,
-                               0.0468750000000000,
-                               0.0468750000000000,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0166666666666667,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0333333333333333,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0483870967741936,
-                               0.0476190476190476,
-                               0.0468750000000000,
-                               0.0468750000000000,
-                               0.0468750000000000,
-                               0.0468750000000000,
-                               0.0468750000000000,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0312500000000000,
-                               0.0317460317460317,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0158730158730159,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0333333333333333,
-                               0.0344827586206897,
-                               0.0350877192982456,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0535714285714286,
-                               0.0545454545454545,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0363636363636364,
-                               0.0370370370370370,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0333333333333333,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0175438596491228,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0175438596491228,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0172413793103448,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0163934426229508,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0163934426229508,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0303030303030303,
-                               0.0303030303030303,
-                               0.0303030303030303,
-                               0.0303030303030303,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0161290322580645,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0161290322580645,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0322580645161290,
-                               0.0483870967741936,
-                               0.0468750000000000,
-                               0.0476190476190476,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0500000000000000,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0327868852459016,
-                               0.0333333333333333,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0645161290322581,
-                               0.0793650793650794,
-                               0.0781250000000000,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0781250000000000,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0781250000000000,
-                               0.0781250000000000,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0937500000000000,
-                               0.0937500000000000,
-                               0.0937500000000000,
-                               0.0937500000000000,
-                               0.0937500000000000,
-                               0.0937500000000000,
-                               0.0937500000000000,
-                               0.0937500000000000,
-                               0.0937500000000000,
-                               0.0937500000000000,
-                               0.0937500000000000,
-                               0.0937500000000000,
-                               0.0923076923076923,
-                               0.0937500000000000,
-                               0.0937500000000000,
-                               0.0937500000000000,
-                               0.0923076923076923,
-                               0.0923076923076923,
-                               0.0923076923076923,
-                               0.0952380952380952,
-                               0.0967741935483871,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0847457627118644,
-                               0.0892857142857143,
-                               0.0892857142857143,
-                               0.0892857142857143,
-                               0.0877192982456140,
-                               0.0727272727272727,
-                               0.0892857142857143,
-                               0.0892857142857143,
-                               0.0909090909090909,
-                               0.0740740740740741,
-                               0.0740740740740741,
-                               0.0740740740740741,
-                               0.0576923076923077,
-                               0.0740740740740741,
-                               0.0740740740740741,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.1071428571428570,
-                               0.1071428571428570,
-                               0.1071428571428570,
-                               0.1206896551724140,
-                               0.1206896551724140,
-                               0.1228070175438600,
-                               0.1250000000000000,
-                               0.1090909090909090,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0961538461538462,
-                               0.1000000000000000,
-                               0.0816326530612245,
-                               0.0816326530612245,
-                               0.0800000000000000,
-                               0.0800000000000000,
-                               0.0800000000000000,
-                               0.0800000000000000,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0816326530612245,
-                               0.0816326530612245,
-                               0.0816326530612245,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.1000000000000000,
-                               0.1020408163265310,
-                               0.1020408163265310,
-                               0.1020408163265310,
-                               0.1020408163265310,
-                               0.1153846153846150,
-                               0.1111111111111110,
-                               0.1071428571428570,
-                               0.1071428571428570,
-                               0.1071428571428570,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1052631578947370,
-                               0.1071428571428570,
-                               0.1071428571428570,
-                               0.1071428571428570,
-                               0.1071428571428570,
-                               0.1071428571428570,
-                               0.1071428571428570,
-                               0.0909090909090909,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0784313725490196,
-                               0.0769230769230769,
-                               0.0784313725490196,
-                               0.0784313725490196,
-                               0.0769230769230769,
-                               0.0784313725490196,
-                               0.0784313725490196,
-                               0.0784313725490196,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.1132075471698110,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1153846153846150,
-                               0.1153846153846150,
-                               0.1153846153846150,
-                               0.1132075471698110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1454545454545450,
-                               0.1454545454545450,
-                               0.1538461538461540,
-                               0.1481481481481480,
-                               0.1481481481481480,
-                               0.1481481481481480,
-                               0.1538461538461540,
-                               0.1538461538461540,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1276595744680850,
-                               0.1304347826086960,
-                               0.1304347826086960,
-                               0.0888888888888889,
-                               0.0869565217391304,
-                               0.0851063829787234,
-                               0.1041666666666670,
-                               0.1063829787234040,
-                               0.1063829787234040,
-                               0.1063829787234040,
-                               0.1063829787234040,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1224489795918370,
-                               0.1041666666666670,
-                               0.1041666666666670,
-                               0.1041666666666670,
-                               0.1020408163265310,
-                               0.1041666666666670,
-                               0.1063829787234040,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1041666666666670,
-                               0.1041666666666670,
-                               0.1020408163265310,
-                               0.1020408163265310,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.1153846153846150,
-                               0.1153846153846150,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1153846153846150,
-                               0.1153846153846150,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1666666666666670,
-                               0.1666666666666670,
-                               0.1666666666666670,
-                               0.1698113207547170,
-                               0.1666666666666670,
-                               0.1509433962264150,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1818181818181820,
-                               0.1636363636363640,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1754385964912280,
-                               0.1754385964912280,
-                               0.1896551724137930,
-                               0.1896551724137930,
-                               0.1896551724137930,
-                               0.1896551724137930,
-                               0.1864406779661020,
-                               0.1803278688524590,
-                               0.1803278688524590,
-                               0.1803278688524590,
-                               0.1803278688524590,
-                               0.1803278688524590,
-                               0.1803278688524590,
-                               0.1803278688524590,
-                               0.1803278688524590,
-                               0.1803278688524590,
-                               0.1833333333333330,
-                               0.1833333333333330,
-                               0.1833333333333330,
-                               0.1967213114754100,
-                               0.1935483870967740,
-                               0.1803278688524590,
-                               0.1803278688524590,
-                               0.1803278688524590,
-                               0.1774193548387100,
-                               0.1774193548387100,
-                               0.1774193548387100,
-                               0.1500000000000000,
-                               0.1500000000000000,
-                               0.1500000000000000,
-                               0.1500000000000000,
-                               0.1666666666666670,
-                               0.1525423728813560,
-                               0.1071428571428570,
-                               0.1228070175438600,
-                               0.1228070175438600,
-                               0.1228070175438600,
-                               0.1228070175438600,
-                               0.1228070175438600,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1403508771929820,
-                               0.1403508771929820,
-                               0.1403508771929820,
-                               0.1403508771929820,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1724137931034480,
-                               0.1724137931034480,
-                               0.1694915254237290,
-                               0.1666666666666670,
-                               0.1639344262295080,
-                               0.1500000000000000,
-                               0.1639344262295080,
-                               0.1639344262295080,
-                               0.1639344262295080,
-                               0.1612903225806450,
-                               0.1612903225806450,
-                               0.1612903225806450,
-                               0.1612903225806450,
-                               0.1475409836065570,
-                               0.1475409836065570,
-                               0.1612903225806450,
-                               0.1612903225806450,
-                               0.1587301587301590,
-                               0.1692307692307690,
-                               0.1692307692307690,
-                               0.1692307692307690,
-                               0.1692307692307690,
-                               0.1562500000000000,
-                               0.1562500000000000,
-                               0.1562500000000000,
-                               0.1692307692307690,
-                               0.1692307692307690,
-                               0.1692307692307690,
-                               0.1692307692307690,
-                               0.1538461538461540,
-                               0.1538461538461540,
-                               0.1538461538461540,
-                               0.1538461538461540,
-                               0.1406250000000000,
-                               0.1290322580645160,
-                               0.1290322580645160,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0781250000000000,
-                               0.0781250000000000,
-                               0.0923076923076923,
-                               0.0923076923076923,
-                               0.0923076923076923,
-                               0.0923076923076923,
-                               0.0923076923076923,
-                               0.0923076923076923,
-                               0.0923076923076923,
-                               0.0923076923076923,
-                               0.0923076923076923,
-                               0.0923076923076923,
-                               0.0952380952380952,
-                               0.0793650793650794,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0634920634920635,
-                               0.0634920634920635,
-                               0.0634920634920635,
-                               0.0634920634920635,
-                               0.0634920634920635,
-                               0.0634920634920635,
-                               0.0634920634920635,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0625000000000000,
-                               0.0625000000000000,
-                               0.0625000000000000,
-                               0.0625000000000000,
-                               0.0615384615384615,
-                               0.0615384615384615,
-                               0.0615384615384615,
-                               0.0615384615384615,
-                               0.0615384615384615,
-                               0.0615384615384615,
-                               0.0606060606060606,
-                               0.0606060606060606,
-                               0.0606060606060606,
-                               0.0606060606060606,
-                               0.0606060606060606,
-                               0.0606060606060606,
-                               0.0606060606060606,
-                               0.0606060606060606,
-                               0.0606060606060606,
-                               0.0606060606060606,
-                               0.0597014925373134,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0571428571428571,
-                               0.0571428571428571,
-                               0.0571428571428571,
-                               0.0571428571428571,
-                               0.0571428571428571,
-                               0.0571428571428571,
-                               0.0571428571428571,
-                               0.0571428571428571,
-                               0.0434782608695652,
-                               0.0434782608695652,
-                               0.0434782608695652,
-                               0.0434782608695652,
-                               0.0434782608695652,
-                               0.0434782608695652,
-                               0.0434782608695652,
-                               0.0434782608695652,
-                               0.0434782608695652,
-                               0.0434782608695652,
-                               0.0434782608695652,
-                               0.0434782608695652,
-                               0.0434782608695652,
-                               0.0434782608695652,
-                               0.0434782608695652,
-                               0.0434782608695652,
-                               0.0434782608695652,
-                               0.0434782608695652,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0153846153846154,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0156250000000000,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0153846153846154,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0468750000000000,
-                               0.0468750000000000,
-                               0.0468750000000000,
-                               0.0468750000000000,
-                               0.0468750000000000,
-                               0.0468750000000000,
-                               0.0468750000000000,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0333333333333333,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0333333333333333,
-                               0.0169491525423729,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0161290322580645,
-                               0.0163934426229508,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0169491525423729,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0169491525423729,
-                               0.0166666666666667,
-                               0.0163934426229508,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0166666666666667,
-                               0.0169491525423729,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0163934426229508,
-                               0.0166666666666667,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0172413793103448,
-                               0.0178571428571429,
-                               0.0178571428571429,
-                               0.0178571428571429,
-                               0.0181818181818182,
-                               0.0178571428571429,
-                               0.0178571428571429,
-                               0.0178571428571429,
-                               0.0178571428571429,
-                               0.0181818181818182,
-                               0.0185185185185185,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0188679245283019,
-                               0.0192307692307692,
-                               0.0196078431372549,
-                               0.0204081632653061,
-                               0.0200000000000000,
-                               0.0200000000000000,
-                               0.0392156862745098,
-                               0.0400000000000000,
-                               0.0392156862745098,
-                               0.0384615384615385,
-                               0.0384615384615385,
-                               0.0384615384615385,
-                               0.0384615384615385,
-                               0.0384615384615385,
-                               0.0392156862745098,
-                               0.0392156862745098,
-                               0.0392156862745098,
-                               0.0384615384615385,
-                               0.0392156862745098,
-                               0.0576923076923077,
-                               0.0576923076923077,
-                               0.0576923076923077,
-                               0.0576923076923077,
-                               0.0576923076923077,
-                               0.0576923076923077,
-                               0.0576923076923077,
-                               0.0566037735849057,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0535714285714286,
-                               0.0535714285714286,
-                               0.0526315789473684,
-                               0.0517241379310345,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0357142857142857,
-                               0.0357142857142857,
-                               0.0363636363636364,
-                               0.0357142857142857,
-                               0.0357142857142857,
-                               0.0350877192982456,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0377358490566038,
-                               0.0377358490566038,
-                               0.0377358490566038,
-                               0.0377358490566038,
-                               0.0377358490566038,
-                               0.0370370370370370,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0370370370370370,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0370370370370370,
-                               0.0392156862745098,
-                               0.0392156862745098,
-                               0.0400000000000000,
-                               0.0408163265306122,
-                               0.0408163265306122,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0400000000000000,
-                               0.0400000000000000,
-                               0.0400000000000000,
-                               0.0392156862745098,
-                               0.0392156862745098,
-                               0.0392156862745098,
-                               0.0384615384615385,
-                               0.0384615384615385,
-                               0.0566037735849057,
-                               0.0566037735849057,
-                               0.0566037735849057,
-                               0.0566037735849057,
-                               0.0566037735849057,
-                               0.0566037735849057,
-                               0.0566037735849057,
-                               0.0566037735849057,
-                               0.0555555555555556,
-                               0.0555555555555556,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0322580645161290,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0312500000000000,
-                               0.0312500000000000,
-                               0.0307692307692308,
-                               0.0307692307692308,
-                               0.0303030303030303,
-                               0.0303030303030303,
-                               0.0303030303030303,
-                               0.0298507462686567,
-                               0.0298507462686567,
-                               0.0298507462686567,
-                               0.0294117647058823,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0285714285714286,
-                               0.0281690140845070,
-                               0.0285714285714286,
-                               0.0285714285714286,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0294117647058823,
-                               0.0298507462686567,
-                               0.0298507462686567,
-                               0.0298507462686567,
-                               0.0298507462686567,
-                               0.0298507462686567,
-                               0.0298507462686567,
-                               0.0298507462686567,
-                               0.0303030303030303,
-                               0.0303030303030303,
-                               0.0303030303030303,
-                               0.0303030303030303,
-                               0.0303030303030303,
-                               0.0298507462686567,
-                               0.0298507462686567,
-                               0.0298507462686567,
-                               0.0298507462686567,
-                               0.0298507462686567,
-                               0.0298507462686567,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0144927536231884,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0144927536231884,
-                               0.0147058823529412,
-                               0.0144927536231884,
-                               0.0147058823529412,
-                               0.0149253731343284,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0151515151515152,
-                               0.0156250000000000,
-                               0.0153846153846154,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0158730158730159,
-                               0.0461538461538462,
-                               0.0468750000000000,
-                               0.0634920634920635,
-                               0.0634920634920635,
-                               0.0634920634920635,
-                               0.0634920634920635,
-                               0.0634920634920635,
-                               0.0634920634920635,
-                               0.0781250000000000,
-                               0.0781250000000000,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0806451612903226,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0952380952380952,
-                               0.0952380952380952,
-                               0.0952380952380952,
-                               0.0952380952380952,
-                               0.1093750000000000,
-                               0.1093750000000000,
-                               0.1093750000000000,
-                               0.1093750000000000,
-                               0.1093750000000000,
-                               0.1093750000000000,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0666666666666667,
-                               0.0645161290322581,
-                               0.0781250000000000,
-                               0.0781250000000000,
-                               0.0781250000000000,
-                               0.0781250000000000,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0757575757575758,
-                               0.0724637681159420,
-                               0.0724637681159420,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0704225352112676,
-                               0.0704225352112676,
-                               0.0571428571428571,
-                               0.0579710144927536,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0447761194029851,
-                               0.0454545454545455,
-                               0.0447761194029851,
-                               0.0441176470588235,
-                               0.0434782608695652,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0434782608695652,
-                               0.0434782608695652,
-                               0.0434782608695652,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0298507462686567,
-                               0.0298507462686567,
-                               0.0298507462686567,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0298507462686567,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0285714285714286,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0140845070422535,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0136986301369863,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0138888888888889,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0000000000000000,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0281690140845070,
-                               0.0285714285714286,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0422535211267606,
-                               0.0422535211267606,
-                               0.0422535211267606,
-                               0.0422535211267606,
-                               0.0422535211267606,
-                               0.0422535211267606,
-                               0.0422535211267606,
-                               0.0285714285714286,
-                               0.0289855072463768,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0298507462686567,
-                               0.0298507462686567,
-                               0.0298507462686567,
-                               0.0298507462686567,
-                               0.0298507462686567,
-                               0.0298507462686567,
-                               0.0298507462686567,
-                               0.0298507462686567,
-                               0.0298507462686567,
-                               0.0298507462686567,
-                               0.0298507462686567,
-                               0.0298507462686567,
-                               0.0298507462686567,
-                               0.0298507462686567,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0144927536231884,
-                               0.0147058823529412,
-                               0.0144927536231884,
-                               0.0142857142857143,
-                               0.0142857142857143,
-                               0.0140845070422535,
-                               0.0140845070422535,
-                               0.0142857142857143,
-                               0.0144927536231884,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0149253731343284,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0147058823529412,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0289855072463768,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0289855072463768,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0294117647058823,
-                               0.0298507462686567,
-                               0.0303030303030303,
-                               0.0447761194029851,
-                               0.0447761194029851,
-                               0.0454545454545455,
-                               0.0597014925373134,
-                               0.0597014925373134,
-                               0.0447761194029851,
-                               0.0447761194029851,
-                               0.0447761194029851,
-                               0.0447761194029851,
-                               0.0447761194029851,
-                               0.0441176470588235,
-                               0.0447761194029851,
-                               0.0454545454545455,
-                               0.0454545454545455,
-                               0.0454545454545455,
-                               0.0454545454545455,
-                               0.0454545454545455,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0454545454545455,
-                               0.0454545454545455,
-                               0.0447761194029851,
-                               0.0447761194029851,
-                               0.0454545454545455,
-                               0.0468750000000000,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0476190476190476,
-                               0.0322580645161290,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0333333333333333,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0327868852459016,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0491803278688525,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0508474576271187,
-                               0.0526315789473684,
-                               0.0545454545454545,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0689655172413793,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0714285714285714,
-                               0.0727272727272727,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0545454545454545,
-                               0.0555555555555556,
-                               0.0566037735849057,
-                               0.0384615384615385,
-                               0.0384615384615385,
-                               0.0384615384615385,
-                               0.0377358490566038,
-                               0.0377358490566038,
-                               0.0377358490566038,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0612244897959184,
-                               0.0625000000000000,
-                               0.0625000000000000,
-                               0.0612244897959184,
-                               0.0961538461538462,
-                               0.1111111111111110,
-                               0.1578947368421050,
-                               0.1551724137931030,
-                               0.1724137931034480,
-                               0.1694915254237290,
-                               0.1666666666666670,
-                               0.1666666666666670,
-                               0.2000000000000000,
-                               0.1864406779661020,
-                               0.1864406779661020,
-                               0.1864406779661020,
-                               0.1896551724137930,
-                               0.1896551724137930,
-                               0.2033898305084750,
-                               0.2033898305084750,
-                               0.2033898305084750,
-                               0.2000000000000000,
-                               0.1967213114754100,
-                               0.1967213114754100,
-                               0.1935483870967740,
-                               0.1935483870967740,
-                               0.2187500000000000,
-                               0.2187500000000000,
-                               0.2187500000000000,
-                               0.2187500000000000,
-                               0.2187500000000000,
-                               0.2307692307692310,
-                               0.2307692307692310,
-                               0.2380952380952380,
-                               0.2419354838709680,
-                               0.2459016393442620,
-                               0.2586206896551720,
-                               0.2586206896551720,
-                               0.2711864406779660,
-                               0.2711864406779660,
-                               0.2711864406779660,
-                               0.2711864406779660,
-                               0.2622950819672130,
-                               0.2580645161290320,
-                               0.2542372881355930,
-                               0.2542372881355930,
-                               0.2542372881355930,
-                               0.2500000000000000,
-                               0.2459016393442620,
-                               0.2459016393442620,
-                               0.2459016393442620,
-                               0.2459016393442620,
-                               0.2500000000000000,
-                               0.2500000000000000,
-                               0.2500000000000000,
-                               0.2500000000000000,
-                               0.2622950819672130,
-                               0.2622950819672130,
-                               0.2622950819672130,
-                               0.2666666666666670,
-                               0.2711864406779660,
-                               0.2711864406779660,
-                               0.2833333333333330,
-                               0.2833333333333330,
-                               0.2786885245901640,
-                               0.2741935483870970,
-                               0.2615384615384620,
-                               0.2656250000000000,
-                               0.2539682539682540,
-                               0.2539682539682540,
-                               0.2539682539682540,
-                               0.2622950819672130,
-                               0.2666666666666670,
-                               0.2622950819672130,
-                               0.2500000000000000,
-                               0.2500000000000000,
-                               0.2459016393442620,
-                               0.2419354838709680,
-                               0.2419354838709680,
-                               0.2419354838709680,
-                               0.2419354838709680,
-                               0.2419354838709680,
-                               0.2419354838709680,
-                               0.2419354838709680,
-                               0.2419354838709680,
-                               0.2419354838709680,
-                               0.2500000000000000,
-                               0.2615384615384620,
-                               0.2727272727272730,
-                               0.2727272727272730,
-                               0.2727272727272730,
-                               0.2727272727272730,
-                               0.2769230769230770,
-                               0.2769230769230770,
-                               0.2769230769230770,
-                               0.2727272727272730,
-                               0.2647058823529410,
-                               0.2647058823529410,
-                               0.2537313432835820,
-                               0.2647058823529410,
-                               0.2647058823529410,
-                               0.2647058823529410,
-                               0.2424242424242420,
-                               0.2424242424242420,
-                               0.2153846153846150,
-                               0.2153846153846150,
-                               0.2153846153846150,
-                               0.2153846153846150,
-                               0.1774193548387100,
-                               0.1774193548387100,
-                               0.1774193548387100,
-                               0.1639344262295080,
-                               0.1639344262295080,
-                               0.1639344262295080,
-                               0.1694915254237290,
-                               0.1694915254237290,
-                               0.1694915254237290,
-                               0.1724137931034480,
-                               0.1724137931034480,
-                               0.1724137931034480,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1578947368421050,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1454545454545450,
-                               0.1454545454545450,
-                               0.1454545454545450,
-                               0.1454545454545450,
-                               0.1454545454545450,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1481481481481480,
-                               0.1481481481481480,
-                               0.1509433962264150,
-                               0.1666666666666670,
-                               0.1509433962264150,
-                               0.1886792452830190,
-                               0.2000000000000000,
-                               0.2037037037037040,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.1929824561403510,
-                               0.1785714285714290,
-                               0.1818181818181820,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1724137931034480,
-                               0.1724137931034480,
-                               0.1694915254237290,
-                               0.1694915254237290,
-                               0.1666666666666670,
-                               0.1666666666666670,
-                               0.1500000000000000,
-                               0.1500000000000000,
-                               0.1500000000000000,
-                               0.1500000000000000,
-                               0.1525423728813560,
-                               0.1525423728813560,
-                               0.1379310344827590,
-                               0.1379310344827590,
-                               0.1228070175438600,
-                               0.1228070175438600,
-                               0.1228070175438600,
-                               0.1525423728813560,
-                               0.1525423728813560,
-                               0.1525423728813560,
-                               0.1694915254237290,
-                               0.1694915254237290,
-                               0.1694915254237290,
-                               0.1694915254237290,
-                               0.1666666666666670,
-                               0.1803278688524590,
-                               0.1803278688524590,
-                               0.1803278688524590,
-                               0.1803278688524590,
-                               0.1935483870967740,
-                               0.1935483870967740,
-                               0.1935483870967740,
-                               0.1935483870967740,
-                               0.1935483870967740,
-                               0.1935483870967740,
-                               0.1935483870967740,
-                               0.1935483870967740,
-                               0.1935483870967740,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.1969696969696970,
-                               0.1969696969696970,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.2121212121212120,
-                               0.2121212121212120,
-                               0.2238805970149250,
-                               0.2238805970149250,
-                               0.2238805970149250,
-                               0.2205882352941180,
-                               0.2205882352941180,
-                               0.2205882352941180,
-                               0.2205882352941180,
-                               0.2089552238805970,
-                               0.2058823529411760,
-                               0.2058823529411760,
-                               0.1940298507462690,
-                               0.1940298507462690,
-                               0.1940298507462690,
-                               0.1940298507462690,
-                               0.1940298507462690,
-                               0.1940298507462690,
-                               0.1884057971014490,
-                               0.1884057971014490,
-                               0.1764705882352940,
-                               0.1764705882352940,
-                               0.1764705882352940,
-                               0.1764705882352940,
-                               0.1764705882352940,
-                               0.1764705882352940,
-                               0.1764705882352940,
-                               0.1641791044776120,
-                               0.1641791044776120,
-                               0.1515151515151520,
-                               0.1492537313432840,
-                               0.1492537313432840,
-                               0.1470588235294120,
-                               0.1449275362318840,
-                               0.1449275362318840,
-                               0.1449275362318840,
-                               0.1449275362318840,
-                               0.1449275362318840,
-                               0.1449275362318840,
-                               0.1304347826086960,
-                               0.1323529411764710,
-                               0.1343283582089550,
-                               0.1343283582089550,
-                               0.1343283582089550,
-                               0.1343283582089550,
-                               0.1343283582089550,
-                               0.1343283582089550,
-                               0.1343283582089550,
-                               0.1343283582089550,
-                               0.1343283582089550,
-                               0.1343283582089550,
-                               0.1212121212121210,
-                               0.1230769230769230,
-                               0.1230769230769230,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1230769230769230,
-                               0.1230769230769230,
-                               0.1212121212121210,
-                               0.1212121212121210,
-                               0.1212121212121210,
-                               0.1212121212121210,
-                               0.1194029850746270,
-                               0.1142857142857140,
-                               0.1142857142857140,
-                               0.1014492753623190,
-                               0.1014492753623190,
-                               0.1014492753623190,
-                               0.1014492753623190,
-                               0.1014492753623190,
-                               0.1014492753623190,
-                               0.1029411764705880,
-                               0.1029411764705880,
-                               0.1029411764705880,
-                               0.1029411764705880,
-                               0.1029411764705880,
-                               0.1029411764705880,
-                               0.1029411764705880,
-                               0.1029411764705880,
-                               0.1029411764705880,
-                               0.1044776119402990,
-                               0.1060606060606060,
-                               0.1060606060606060,
-                               0.1060606060606060,
-                               0.1060606060606060,
-                               0.1060606060606060,
-                               0.1060606060606060,
-                               0.1044776119402990,
-                               0.1044776119402990,
-                               0.1014492753623190,
-                               0.1014492753623190,
-                               0.1014492753623190,
-                               0.1029411764705880,
-                               0.1029411764705880,
-                               0.1029411764705880,
-                               0.1029411764705880,
-                               0.1029411764705880,
-                               0.1029411764705880,
-                               0.1029411764705880,
-                               0.1029411764705880,
-                               0.1029411764705880,
-                               0.1029411764705880,
-                               0.1029411764705880,
-                               0.1029411764705880,
-                               0.1029411764705880,
-                               0.1060606060606060,
-                               0.1060606060606060,
-                               0.1076923076923080,
-                               0.1076923076923080,
-                               0.1076923076923080,
-                               0.1076923076923080,
-                               0.1076923076923080,
-                               0.1076923076923080,
-                               0.0937500000000000,
-                               0.0937500000000000,
-                               0.0937500000000000,
-                               0.0923076923076923,
-                               0.0923076923076923,
-                               0.0923076923076923,
-                               0.0923076923076923,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0857142857142857,
-                               0.0857142857142857,
-                               0.0845070422535211,
-                               0.0845070422535211,
-                               0.0845070422535211,
-                               0.0845070422535211,
-                               0.0845070422535211,
-                               0.0845070422535211,
-                               0.0845070422535211,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0704225352112676,
-                               0.0704225352112676,
-                               0.0704225352112676,
-                               0.0704225352112676,
-                               0.0704225352112676,
-                               0.0704225352112676,
-                               0.0704225352112676,
-                               0.0694444444444444,
-                               0.0694444444444444,
-                               0.0694444444444444,
-                               0.0694444444444444,
-                               0.0694444444444444,
-                               0.0694444444444444,
-                               0.0694444444444444,
-                               0.0694444444444444,
-                               0.0563380281690141,
-                               0.0563380281690141,
-                               0.0563380281690141,
-                               0.0563380281690141,
-                               0.0563380281690141,
-                               0.0563380281690141,
-                               0.0563380281690141,
-                               0.0563380281690141,
-                               0.0563380281690141,
-                               0.0563380281690141,
-                               0.0563380281690141,
-                               0.0563380281690141,
-                               0.0563380281690141,
-                               0.0555555555555556,
-                               0.0555555555555556,
-                               0.0555555555555556,
-                               0.0555555555555556,
-                               0.0555555555555556,
-                               0.0547945205479452,
-                               0.0547945205479452,
-                               0.0547945205479452,
-                               0.0547945205479452,
-                               0.0547945205479452,
-                               0.0547945205479452,
-                               0.0547945205479452,
-                               0.0547945205479452,
-                               0.0547945205479452,
-                               0.0547945205479452,
-                               0.0547945205479452,
-                               0.0547945205479452,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0540540540540541,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0405405405405405,
-                               0.0405405405405405,
-                               0.0405405405405405,
-                               0.0405405405405405,
-                               0.0405405405405405,
-                               0.0405405405405405,
-                               0.0405405405405405,
-                               0.0405405405405405,
-                               0.0405405405405405,
-                               0.0405405405405405,
-                               0.0405405405405405,
-                               0.0405405405405405,
-                               0.0405405405405405,
-                               0.0405405405405405,
-                               0.0405405405405405,
-                               0.0405405405405405,
-                               0.0405405405405405,
-                               0.0405405405405405,
-                               0.0405405405405405,
-                               0.0405405405405405,
-                               0.0405405405405405,
-                               0.0405405405405405,
-                               0.0405405405405405,
-                               0.0405405405405405,
-                               0.0405405405405405,
-                               0.0405405405405405,
-                               0.0405405405405405,
-                               0.0405405405405405,
-                               0.0405405405405405,
-                               0.0405405405405405,
-                               0.0405405405405405,
-                               0.0405405405405405,
-                               0.0405405405405405,
-                               0.0405405405405405,
-                               0.0405405405405405,
-                               0.0405405405405405,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0410958904109589,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0416666666666667,
-                               0.0422535211267606,
-                               0.0422535211267606,
-                               0.0422535211267606,
-                               0.0422535211267606,
-                               0.0422535211267606,
-                               0.0422535211267606,
-                               0.0422535211267606,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0428571428571429,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0454545454545455,
-                               0.0454545454545455,
-                               0.0454545454545455,
-                               0.0454545454545455,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0468750000000000,
-                               0.0468750000000000,
-                               0.0468750000000000,
-                               0.0468750000000000,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0317460317460317,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0333333333333333,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0338983050847458,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0344827586206897,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0333333333333333,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0322580645161290,
-                               0.0327868852459016,
-                               0.0322580645161290,
-                               0.0327868852459016,
-                               0.0327868852459016,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0350877192982456,
-                               0.0357142857142857,
-                               0.0357142857142857,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0357142857142857,
-                               0.0357142857142857,
-                               0.0357142857142857,
-                               0.0357142857142857,
-                               0.0357142857142857,
-                               0.0350877192982456,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0338983050847458,
-                               0.0344827586206897,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0500000000000000,
-                               0.0508474576271187,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0333333333333333,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0338983050847458,
-                               0.0333333333333333,
-                               0.0491803278688525,
-                               0.0491803278688525,
-                               0.0526315789473684,
-                               0.0517241379310345,
-                               0.0508474576271187,
-                               0.0517241379310345,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0566037735849057,
-                               0.0555555555555556,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0740740740740741,
-                               0.0740740740740741,
-                               0.0740740740740741,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0740740740740741,
-                               0.0740740740740741,
-                               0.0754716981132075,
-                               0.0784313725490196,
-                               0.0600000000000000,
-                               0.0612244897959184,
-                               0.0600000000000000,
-                               0.0600000000000000,
-                               0.0576923076923077,
-                               0.0576923076923077,
-                               0.0576923076923077,
-                               0.0566037735849057,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0483870967741936,
-                               0.0491803278688525,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0634920634920635,
-                               0.0634920634920635,
-                               0.0634920634920635,
-                               0.0634920634920635,
-                               0.0625000000000000,
-                               0.0625000000000000,
-                               0.0625000000000000,
-                               0.0625000000000000,
-                               0.0625000000000000,
-                               0.0625000000000000,
-                               0.0615384615384615,
-                               0.0615384615384615,
-                               0.0615384615384615,
-                               0.0615384615384615,
-                               0.0615384615384615,
-                               0.0606060606060606,
-                               0.0606060606060606,
-                               0.0606060606060606,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0597014925373134,
-                               0.0597014925373134,
-                               0.0597014925373134,
-                               0.0597014925373134,
-                               0.0597014925373134,
-                               0.0597014925373134,
-                               0.0597014925373134,
-                               0.0597014925373134,
-                               0.0597014925373134,
-                               0.0597014925373134,
-                               0.0588235294117647,
-                               0.0597014925373134,
-                               0.0597014925373134,
-                               0.0597014925373134,
-                               0.0597014925373134,
-                               0.0597014925373134,
-                               0.0597014925373134,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0441176470588235,
-                               0.0447761194029851,
-                               0.0447761194029851,
-                               0.0447761194029851,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0597014925373134,
-                               0.0454545454545455,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0461538461538462,
-                               0.0606060606060606,
-                               0.0606060606060606,
-                               0.0597014925373134,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0724637681159420,
-                               0.0724637681159420,
-                               0.0724637681159420,
-                               0.0724637681159420,
-                               0.0724637681159420,
-                               0.0735294117647059,
-                               0.0735294117647059,
-                               0.0735294117647059,
-                               0.0735294117647059,
-                               0.0735294117647059,
-                               0.0735294117647059,
-                               0.0735294117647059,
-                               0.0735294117647059,
-                               0.0735294117647059,
-                               0.0735294117647059,
-                               0.0735294117647059,
-                               0.0735294117647059,
-                               0.0597014925373134,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0579710144927536,
-                               0.0571428571428571,
-                               0.0571428571428571,
-                               0.0571428571428571,
-                               0.0571428571428571,
-                               0.0571428571428571,
-                               0.0571428571428571,
-                               0.0571428571428571,
-                               0.0571428571428571,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0579710144927536,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0735294117647059,
-                               0.0606060606060606,
-                               0.0615384615384615,
-                               0.0615384615384615,
-                               0.0615384615384615,
-                               0.0625000000000000,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.1029411764705880,
-                               0.1029411764705880,
-                               0.1029411764705880,
-                               0.1029411764705880,
-                               0.1029411764705880,
-                               0.1029411764705880,
-                               0.1029411764705880,
-                               0.1029411764705880,
-                               0.1014492753623190,
-                               0.1159420289855070,
-                               0.1159420289855070,
-                               0.1176470588235290,
-                               0.1176470588235290,
-                               0.1194029850746270,
-                               0.1060606060606060,
-                               0.1060606060606060,
-                               0.1076923076923080,
-                               0.1212121212121210,
-                               0.1212121212121210,
-                               0.1076923076923080,
-                               0.1111111111111110,
-                               0.1269841269841270,
-                               0.1451612903225810,
-                               0.1500000000000000,
-                               0.1500000000000000,
-                               0.1525423728813560,
-                               0.1935483870967740,
-                               0.2000000000000000,
-                               0.1967213114754100,
-                               0.1967213114754100,
-                               0.1967213114754100,
-                               0.1967213114754100,
-                               0.1967213114754100,
-                               0.1935483870967740,
-                               0.1935483870967740,
-                               0.1935483870967740,
-                               0.1935483870967740,
-                               0.1904761904761900,
-                               0.1904761904761900,
-                               0.1904761904761900,
-                               0.1875000000000000,
-                               0.1875000000000000,
-                               0.1875000000000000,
-                               0.1875000000000000,
-                               0.1875000000000000,
-                               0.1875000000000000,
-                               0.1875000000000000,
-                               0.1846153846153850,
-                               0.1846153846153850,
-                               0.1846153846153850,
-                               0.1846153846153850,
-                               0.1846153846153850,
-                               0.1875000000000000,
-                               0.1875000000000000,
-                               0.1875000000000000,
-                               0.2000000000000000,
-                               0.1875000000000000,
-                               0.1904761904761900,
-                               0.1875000000000000,
-                               0.1904761904761900,
-                               0.1904761904761900,
-                               0.1935483870967740,
-                               0.2063492063492060,
-                               0.2063492063492060,
-                               0.2063492063492060,
-                               0.2063492063492060,
-                               0.2096774193548390,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2063492063492060,
-                               0.1935483870967740,
-                               0.1935483870967740,
-                               0.1935483870967740,
-                               0.1935483870967740,
-                               0.1803278688524590,
-                               0.1639344262295080,
-                               0.1639344262295080,
-                               0.1666666666666670,
-                               0.1666666666666670,
-                               0.1379310344827590,
-                               0.1206896551724140,
-                               0.1166666666666670,
-                               0.1166666666666670,
-                               0.1129032258064520,
-                               0.0983606557377049,
-                               0.0952380952380952,
-                               0.0937500000000000,
-                               0.0937500000000000,
-                               0.0937500000000000,
-                               0.0793650793650794,
-                               0.0781250000000000,
-                               0.0781250000000000,
-                               0.0781250000000000,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0666666666666667,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0666666666666667,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0645161290322581,
-                               0.0793650793650794,
-                               0.0781250000000000,
-                               0.0781250000000000,
-                               0.0781250000000000,
-                               0.0923076923076923,
-                               0.0923076923076923,
-                               0.0923076923076923,
-                               0.0937500000000000,
-                               0.0937500000000000,
-                               0.0937500000000000,
-                               0.0937500000000000,
-                               0.0937500000000000,
-                               0.0937500000000000,
-                               0.0923076923076923,
-                               0.0923076923076923,
-                               0.0923076923076923,
-                               0.0923076923076923,
-                               0.0923076923076923,
-                               0.0923076923076923,
-                               0.0923076923076923,
-                               0.1060606060606060,
-                               0.1060606060606060,
-                               0.1076923076923080,
-                               0.1076923076923080,
-                               0.0937500000000000,
-                               0.0937500000000000,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.0967741935483871,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0847457627118644,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.0833333333333333,
-                               0.0819672131147541,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0806451612903226,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0952380952380952,
-                               0.0952380952380952,
-                               0.0952380952380952,
-                               0.0952380952380952,
-                               0.0952380952380952,
-                               0.0952380952380952,
-                               0.0952380952380952,
-                               0.0952380952380952,
-                               0.0806451612903226,
-                               0.0819672131147541,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0983606557377049,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0952380952380952,
-                               0.0952380952380952,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0952380952380952,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0819672131147541,
-                               0.0819672131147541,
-                               0.0967741935483871,
-                               0.0983606557377049,
-                               0.0967741935483871,
-                               0.1000000000000000,
-                               0.1147540983606560,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.1000000000000000,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0967741935483871,
-                               0.0952380952380952,
-                               0.0967741935483871,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.1000000000000000,
-                               0.1016949152542370,
-                               0.1016949152542370,
-                               0.1016949152542370,
-                               0.1016949152542370,
-                               0.1016949152542370,
-                               0.1016949152542370,
-                               0.1016949152542370,
-                               0.0862068965517241,
-                               0.0847457627118644,
-                               0.1000000000000000,
-                               0.1147540983606560,
-                               0.1166666666666670,
-                               0.1166666666666670,
-                               0.1186440677966100,
-                               0.1186440677966100,
-                               0.1186440677966100,
-                               0.1186440677966100,
-                               0.1206896551724140,
-                               0.1186440677966100,
-                               0.1206896551724140,
-                               0.1228070175438600,
-                               0.1228070175438600,
-                               0.1228070175438600,
-                               0.1525423728813560,
-                               0.1500000000000000,
-                               0.1525423728813560,
-                               0.1525423728813560,
-                               0.1525423728813560,
-                               0.1525423728813560,
-                               0.1666666666666670,
-                               0.1666666666666670,
-                               0.1694915254237290,
-                               0.1694915254237290,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1578947368421050,
-                               0.1724137931034480,
-                               0.1724137931034480,
-                               0.1724137931034480,
-                               0.1724137931034480,
-                               0.1724137931034480,
-                               0.1724137931034480,
-                               0.1724137931034480,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1754385964912280,
-                               0.1896551724137930,
-                               0.1896551724137930,
-                               0.1896551724137930,
-                               0.1896551724137930,
-                               0.1754385964912280,
-                               0.1818181818181820,
-                               0.2105263157894740,
-                               0.2105263157894740,
-                               0.2105263157894740,
-                               0.2142857142857140,
-                               0.2068965517241380,
-                               0.2105263157894740,
-                               0.2105263157894740,
-                               0.2142857142857140,
-                               0.2037037037037040,
-                               0.2037037037037040,
-                               0.2037037037037040,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.2037037037037040,
-                               0.2037037037037040,
-                               0.2037037037037040,
-                               0.2037037037037040,
-                               0.2037037037037040,
-                               0.2115384615384620,
-                               0.2115384615384620,
-                               0.2156862745098040,
-                               0.2156862745098040,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.1800000000000000,
-                               0.1800000000000000,
-                               0.1923076923076920,
-                               0.1923076923076920,
-                               0.1923076923076920,
-                               0.2264150943396230,
-                               0.2264150943396230,
-                               0.2264150943396230,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2456140350877190,
-                               0.2456140350877190,
-                               0.2545454545454540,
-                               0.2545454545454540,
-                               0.2545454545454540,
-                               0.2592592592592590,
-                               0.2641509433962260,
-                               0.2641509433962260,
-                               0.2692307692307690,
-                               0.2692307692307690,
-                               0.2692307692307690,
-                               0.2549019607843140,
-                               0.2549019607843140,
-                               0.2641509433962260,
-                               0.2777777777777780,
-                               0.2962962962962960,
-                               0.3018867924528300,
-                               0.3148148148148150,
-                               0.3018867924528300,
-                               0.3018867924528300,
-                               0.3018867924528300,
-                               0.3018867924528300,
-                               0.2884615384615380,
-                               0.2745098039215690,
-                               0.2745098039215690,
-                               0.2745098039215690,
-                               0.2857142857142860,
-                               0.2857142857142860,
-                               0.3000000000000000,
-                               0.3137254901960780,
-                               0.3076923076923080,
-                               0.3137254901960780,
-                               0.3200000000000000,
-                               0.3200000000000000,
-                               0.3200000000000000,
-                               0.3200000000000000,
-                               0.3137254901960780,
-                               0.3269230769230770,
-                               0.3600000000000000,
-                               0.3600000000000000,
-                               0.3600000000000000,
-                               0.3529411764705880,
-                               0.3461538461538460,
-                               0.3461538461538460,
-                               0.3269230769230770,
-                               0.3269230769230770,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3137254901960780,
-                               0.3137254901960780,
-                               0.3076923076923080,
-                               0.2884615384615380,
-                               0.2745098039215690,
-                               0.2549019607843140,
-                               0.2549019607843140,
-                               0.2400000000000000,
-                               0.2500000000000000,
-                               0.2352941176470590,
-                               0.2400000000000000,
-                               0.2400000000000000,
-                               0.2352941176470590,
-                               0.2200000000000000,
-                               0.2115384615384620,
-                               0.2115384615384620,
-                               0.2115384615384620,
-                               0.2115384615384620,
-                               0.2115384615384620,
-                               0.2075471698113210,
-                               0.1851851851851850,
-                               0.1851851851851850,
-                               0.1698113207547170,
-                               0.1666666666666670,
-                               0.1698113207547170,
-                               0.1698113207547170,
-                               0.1538461538461540,
-                               0.1538461538461540,
-                               0.1509433962264150,
-                               0.1509433962264150,
-                               0.1568627450980390,
-                               0.1600000000000000,
-                               0.1730769230769230,
-                               0.1851851851851850,
-                               0.1538461538461540,
-                               0.1538461538461540,
-                               0.1698113207547170,
-                               0.1730769230769230,
-                               0.1698113207547170,
-                               0.1698113207547170,
-                               0.1698113207547170,
-                               0.1698113207547170,
-                               0.1698113207547170,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1568627450980390,
-                               0.1568627450980390,
-                               0.1568627450980390,
-                               0.1568627450980390,
-                               0.1568627450980390,
-                               0.1568627450980390,
-                               0.1568627450980390,
-                               0.1568627450980390,
-                               0.1568627450980390,
-                               0.1568627450980390,
-                               0.1568627450980390,
-                               0.1568627450980390,
-                               0.1568627450980390,
-                               0.1851851851851850,
-                               0.1851851851851850,
-                               0.1698113207547170,
-                               0.1698113207547170,
-                               0.1698113207547170,
-                               0.1851851851851850,
-                               0.1851851851851850,
-                               0.1851851851851850,
-                               0.1851851851851850,
-                               0.2000000000000000,
-                               0.1851851851851850,
-                               0.1851851851851850,
-                               0.2105263157894740,
-                               0.2105263157894740,
-                               0.2372881355932200,
-                               0.2295081967213110,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2096774193548390,
-                               0.2096774193548390,
-                               0.2096774193548390,
-                               0.2063492063492060,
-                               0.2063492063492060,
-                               0.2096774193548390,
-                               0.2096774193548390,
-                               0.2222222222222220,
-                               0.2295081967213110,
-                               0.2295081967213110,
-                               0.2295081967213110,
-                               0.2166666666666670,
-                               0.2419354838709680,
-                               0.2419354838709680,
-                               0.2419354838709680,
-                               0.2419354838709680,
-                               0.2459016393442620,
-                               0.2622950819672130,
-                               0.2622950819672130,
-                               0.2500000000000000,
-                               0.2372881355932200,
-                               0.2372881355932200,
-                               0.2372881355932200,
-                               0.2372881355932200,
-                               0.2372881355932200,
-                               0.2000000000000000,
-                               0.2280701754385960,
-                               0.2280701754385960,
-                               0.2241379310344830,
-                               0.2241379310344830,
-                               0.2105263157894740,
-                               0.2105263157894740,
-                               0.2105263157894740,
-                               0.2105263157894740,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.1964285714285710,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1754385964912280,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1403508771929820,
-                               0.1379310344827590,
-                               0.1379310344827590,
-                               0.1379310344827590,
-                               0.1379310344827590,
-                               0.1379310344827590,
-                               0.1379310344827590,
-                               0.1379310344827590,
-                               0.1379310344827590,
-                               0.1666666666666670,
-                               0.1666666666666670,
-                               0.1666666666666670,
-                               0.1666666666666670,
-                               0.1694915254237290,
-                               0.1694915254237290,
-                               0.1694915254237290,
-                               0.1694915254237290,
-                               0.1694915254237290,
-                               0.1694915254237290,
-                               0.1694915254237290,
-                               0.1694915254237290,
-                               0.1639344262295080,
-                               0.1639344262295080,
-                               0.1639344262295080,
-                               0.1774193548387100,
-                               0.1746031746031750,
-                               0.1746031746031750,
-                               0.1746031746031750,
-                               0.1746031746031750,
-                               0.1746031746031750,
-                               0.1746031746031750,
-                               0.1746031746031750,
-                               0.1746031746031750,
-                               0.1746031746031750,
-                               0.1746031746031750,
-                               0.1746031746031750,
-                               0.1746031746031750,
-                               0.1774193548387100,
-                               0.1774193548387100,
-                               0.1774193548387100,
-                               0.1774193548387100,
-                               0.1774193548387100,
-                               0.1666666666666670,
-                               0.1666666666666670,
-                               0.1666666666666670,
-                               0.1639344262295080,
-                               0.1639344262295080,
-                               0.1639344262295080,
-                               0.1587301587301590,
-                               0.1587301587301590,
-                               0.1587301587301590,
-                               0.1587301587301590,
-                               0.1587301587301590,
-                               0.1587301587301590,
-                               0.1639344262295080,
-                               0.1612903225806450,
-                               0.1612903225806450,
-                               0.1612903225806450,
-                               0.1612903225806450,
-                               0.1612903225806450,
-                               0.1612903225806450,
-                               0.1612903225806450,
-                               0.1475409836065570,
-                               0.1475409836065570,
-                               0.1475409836065570,
-                               0.1475409836065570,
-                               0.1475409836065570,
-                               0.1500000000000000,
-                               0.1475409836065570,
-                               0.1475409836065570,
-                               0.1475409836065570,
-                               0.1475409836065570,
-                               0.1475409836065570,
-                               0.1475409836065570,
-                               0.1475409836065570,
-                               0.1475409836065570,
-                               0.1475409836065570,
-                               0.1475409836065570,
-                               0.1475409836065570,
-                               0.1475409836065570,
-                               0.1475409836065570,
-                               0.1475409836065570,
-                               0.1475409836065570,
-                               0.1475409836065570,
-                               0.1475409836065570,
-                               0.1500000000000000,
-                               0.1475409836065570,
-                               0.1475409836065570,
-                               0.1333333333333330,
-                               0.1333333333333330,
-                               0.1333333333333330,
-                               0.1311475409836070,
-                               0.1311475409836070,
-                               0.1311475409836070,
-                               0.1311475409836070,
-                               0.1311475409836070,
-                               0.1290322580645160,
-                               0.1290322580645160,
-                               0.1290322580645160,
-                               0.1290322580645160,
-                               0.1290322580645160,
-                               0.1290322580645160,
-                               0.1290322580645160,
-                               0.1290322580645160,
-                               0.1290322580645160,
-                               0.1290322580645160,
-                               0.1290322580645160,
-                               0.1290322580645160,
-                               0.1290322580645160,
-                               0.1290322580645160,
-                               0.1290322580645160,
-                               0.1290322580645160,
-                               0.1290322580645160,
-                               0.1290322580645160,
-                               0.1290322580645160,
-                               0.1290322580645160,
-                               0.1290322580645160,
-                               0.1147540983606560,
-                               0.1147540983606560,
-                               0.1147540983606560,
-                               0.1129032258064520,
-                               0.1129032258064520,
-                               0.1129032258064520,
-                               0.1129032258064520,
-                               0.1129032258064520,
-                               0.1129032258064520,
-                               0.1129032258064520,
-                               0.1147540983606560,
-                               0.1147540983606560,
-                               0.1147540983606560,
-                               0.1147540983606560,
-                               0.1147540983606560,
-                               0.1147540983606560,
-                               0.1147540983606560,
-                               0.1147540983606560,
-                               0.1147540983606560,
-                               0.1147540983606560,
-                               0.1147540983606560,
-                               0.1166666666666670,
-                               0.1147540983606560,
-                               0.1147540983606560,
-                               0.1147540983606560,
-                               0.1147540983606560,
-                               0.1147540983606560,
-                               0.1147540983606560,
-                               0.1129032258064520,
-                               0.1129032258064520,
-                               0.1269841269841270,
-                               0.1269841269841270,
-                               0.1269841269841270,
-                               0.1269841269841270,
-                               0.1290322580645160,
-                               0.1290322580645160,
-                               0.1290322580645160,
-                               0.1147540983606560,
-                               0.1147540983606560,
-                               0.1147540983606560,
-                               0.1147540983606560,
-                               0.1147540983606560,
-                               0.1147540983606560,
-                               0.1147540983606560,
-                               0.1000000000000000,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0983606557377049,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0967741935483871,
-                               0.0952380952380952,
-                               0.0952380952380952,
-                               0.0952380952380952,
-                               0.0952380952380952,
-                               0.0952380952380952,
-                               0.0952380952380952,
-                               0.0952380952380952,
-                               0.0952380952380952,
-                               0.0952380952380952,
-                               0.0952380952380952,
-                               0.0952380952380952,
-                               0.0952380952380952,
-                               0.0937500000000000,
-                               0.0937500000000000,
-                               0.0923076923076923,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0895522388059701,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0746268656716418,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0757575757575758,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0769230769230769,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0793650793650794,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0806451612903226,
-                               0.0645161290322581,
-                               0.0655737704918033,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0655737704918033,
-                               0.0666666666666667,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0655737704918033,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0701754385964912,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0925925925925926,
-                               0.0943396226415094,
-                               0.0961538461538462,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.0943396226415094,
-                               0.0943396226415094,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0909090909090909,
-                               0.0925925925925926,
-                               0.0877192982456140,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0892857142857143,
-                               0.0909090909090909,
-                               0.0925925925925926,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.0943396226415094,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0925925925925926,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0943396226415094,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0943396226415094,
-                               0.0943396226415094,
-                               0.0925925925925926,
-                               0.0943396226415094,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0943396226415094,
-                               0.0943396226415094,
-                               0.0943396226415094,
-                               0.0943396226415094,
-                               0.0925925925925926,
-                               0.0943396226415094,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.0980392156862745,
-                               0.0961538461538462,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0816326530612245,
-                               0.0816326530612245,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0833333333333333,
-                               0.0851063829787234,
-                               0.0652173913043478,
-                               0.0652173913043478,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0652173913043478,
-                               0.0652173913043478,
-                               0.0652173913043478,
-                               0.0666666666666667,
-                               0.0697674418604651,
-                               0.0697674418604651,
-                               0.0681818181818182,
-                               0.0666666666666667,
-                               0.0869565217391304,
-                               0.1063829787234040,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1136363636363640,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1041666666666670,
-                               0.1041666666666670,
-                               0.1063829787234040,
-                               0.1063829787234040,
-                               0.1063829787234040,
-                               0.1063829787234040,
-                               0.1063829787234040,
-                               0.1063829787234040,
-                               0.1063829787234040,
-                               0.1086956521739130,
-                               0.0869565217391304,
-                               0.0666666666666667,
-                               0.0625000000000000,
-                               0.0625000000000000,
-                               0.0625000000000000,
-                               0.0625000000000000,
-                               0.0600000000000000,
-                               0.0612244897959184,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0588235294117647,
-                               0.0576923076923077,
-                               0.0576923076923077,
-                               0.0576923076923077,
-                               0.0555555555555556,
-                               0.0555555555555556,
-                               0.0555555555555556,
-                               0.0555555555555556,
-                               0.0555555555555556,
-                               0.0727272727272727,
-                               0.0740740740740741,
-                               0.0740740740740741,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0877192982456140,
-                               0.0714285714285714,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0555555555555556,
-                               0.0555555555555556,
-                               0.0555555555555556,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0714285714285714,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0714285714285714,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0666666666666667,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0517241379310345,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0535714285714286,
-                               0.0535714285714286,
-                               0.0535714285714286,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0862068965517241,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0892857142857143,
-                               0.0925925925925926,
-                               0.0943396226415094,
-                               0.0943396226415094,
-                               0.0943396226415094,
-                               0.0943396226415094,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.0784313725490196,
-                               0.0784313725490196,
-                               0.0754716981132075,
-                               0.0754716981132075,
-                               0.0740740740740741,
-                               0.0740740740740741,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0535714285714286,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0535714285714286,
-                               0.0535714285714286,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0535714285714286,
-                               0.0535714285714286,
-                               0.0535714285714286,
-                               0.0535714285714286,
-                               0.0535714285714286,
-                               0.0535714285714286,
-                               0.0535714285714286,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0555555555555556,
-                               0.0555555555555556,
-                               0.0545454545454545,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0508474576271187,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0500000000000000,
-                               0.0508474576271187,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0517241379310345,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0689655172413793,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0714285714285714,
-                               0.0701754385964912,
-                               0.0862068965517241,
-                               0.0862068965517241,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0847457627118644,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0535714285714286,
-                               0.0535714285714286,
-                               0.0535714285714286,
-                               0.0535714285714286,
-                               0.0535714285714286,
-                               0.0535714285714286,
-                               0.0535714285714286,
-                               0.0535714285714286,
-                               0.0535714285714286,
-                               0.0535714285714286,
-                               0.0526315789473684,
-                               0.0526315789473684,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0517241379310345,
-                               0.0677966101694915,
-                               0.0677966101694915,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0701754385964912,
-                               0.0689655172413793,
-                               0.0689655172413793,
-                               0.0714285714285714,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0555555555555556,
-                               0.0377358490566038,
-                               0.0377358490566038,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0370370370370370,
-                               0.0555555555555556,
-                               0.0555555555555556,
-                               0.0555555555555556,
-                               0.0555555555555556,
-                               0.0566037735849057,
-                               0.0566037735849057,
-                               0.0555555555555556,
-                               0.0740740740740741,
-                               0.0740740740740741,
-                               0.0740740740740741,
-                               0.0566037735849057,
-                               0.0566037735849057,
-                               0.0576923076923077,
-                               0.0576923076923077,
-                               0.0588235294117647,
-                               0.0600000000000000,
-                               0.0600000000000000,
-                               0.0612244897959184,
-                               0.0408163265306122,
-                               0.0408163265306122,
-                               0.0408163265306122,
-                               0.0408163265306122,
-                               0.0400000000000000,
-                               0.0400000000000000,
-                               0.0400000000000000,
-                               0.0400000000000000,
-                               0.0400000000000000,
-                               0.0400000000000000,
-                               0.0400000000000000,
-                               0.0400000000000000,
-                               0.0400000000000000,
-                               0.0400000000000000,
-                               0.0392156862745098,
-                               0.0392156862745098,
-                               0.0392156862745098,
-                               0.0392156862745098,
-                               0.0400000000000000,
-                               0.0204081632653061,
-                               0.0208333333333333,
-                               0.0204081632653061,
-                               0.0200000000000000,
-                               0.0200000000000000,
-                               0.0200000000000000,
-                               0.0392156862745098,
-                               0.0392156862745098,
-                               0.0392156862745098,
-                               0.0392156862745098,
-                               0.0392156862745098,
-                               0.0392156862745098,
-                               0.0384615384615385,
-                               0.0377358490566038,
-                               0.0377358490566038,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0535714285714286,
-                               0.0535714285714286,
-                               0.0535714285714286,
-                               0.0566037735849057,
-                               0.0566037735849057,
-                               0.0566037735849057,
-                               0.0566037735849057,
-                               0.0566037735849057,
-                               0.0576923076923077,
-                               0.0566037735849057,
-                               0.0566037735849057,
-                               0.0555555555555556,
-                               0.0555555555555556,
-                               0.0555555555555556,
-                               0.0555555555555556,
-                               0.0555555555555556,
-                               0.0555555555555556,
-                               0.0555555555555556,
-                               0.0566037735849057,
-                               0.0754716981132075,
-                               0.0754716981132075,
-                               0.0740740740740741,
-                               0.0740740740740741,
-                               0.0727272727272727,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0714285714285714,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0862068965517241,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0877192982456140,
-                               0.0892857142857143,
-                               0.0892857142857143,
-                               0.0892857142857143,
-                               0.0892857142857143,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.1111111111111110,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0943396226415094,
-                               0.0943396226415094,
-                               0.0943396226415094,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.0943396226415094,
-                               0.0943396226415094,
-                               0.0943396226415094,
-                               0.0943396226415094,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.0980392156862745,
-                               0.1153846153846150,
-                               0.1153846153846150,
-                               0.1153846153846150,
-                               0.1153846153846150,
-                               0.1153846153846150,
-                               0.1153846153846150,
-                               0.1153846153846150,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0961538461538462,
-                               0.0980392156862745,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.0800000000000000,
-                               0.0816326530612245,
-                               0.0816326530612245,
-                               0.0816326530612245,
-                               0.0816326530612245,
-                               0.0816326530612245,
-                               0.0833333333333333,
-                               0.0816326530612245,
-                               0.0816326530612245,
-                               0.0816326530612245,
-                               0.0833333333333333,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.1000000000000000,
-                               0.1200000000000000,
-                               0.1224489795918370,
-                               0.1224489795918370,
-                               0.1224489795918370,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1428571428571430,
-                               0.1372549019607840,
-                               0.1372549019607840,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1458333333333330,
-                               0.1458333333333330,
-                               0.1489361702127660,
-                               0.1458333333333330,
-                               0.1489361702127660,
-                               0.1304347826086960,
-                               0.1333333333333330,
-                               0.1333333333333330,
-                               0.1333333333333330,
-                               0.1333333333333330,
-                               0.1521739130434780,
-                               0.1521739130434780,
-                               0.1702127659574470,
-                               0.1739130434782610,
-                               0.1818181818181820,
-                               0.1777777777777780,
-                               0.1818181818181820,
-                               0.1818181818181820,
-                               0.1904761904761900,
-                               0.1860465116279070,
-                               0.1818181818181820,
-                               0.1818181818181820,
-                               0.1860465116279070,
-                               0.2045454545454550,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2272727272727270,
-                               0.2325581395348840,
-                               0.2380952380952380,
-                               0.2380952380952380,
-                               0.2195121951219510,
-                               0.2195121951219510,
-                               0.2142857142857140,
-                               0.2142857142857140,
-                               0.2093023255813950,
-                               0.2093023255813950,
-                               0.2045454545454550,
-                               0.2045454545454550,
-                               0.1860465116279070,
-                               0.1860465116279070,
-                               0.1860465116279070,
-                               0.1860465116279070,
-                               0.1860465116279070,
-                               0.1904761904761900,
-                               0.2093023255813950,
-                               0.2093023255813950,
-                               0.2142857142857140,
-                               0.2142857142857140,
-                               0.2272727272727270,
-                               0.2142857142857140,
-                               0.2045454545454550,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2127659574468080,
-                               0.2173913043478260,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2400000000000000,
-                               0.2400000000000000,
-                               0.2400000000000000,
-                               0.2400000000000000,
-                               0.2549019607843140,
-                               0.2600000000000000,
-                               0.2600000000000000,
-                               0.2600000000000000,
-                               0.2600000000000000,
-                               0.2549019607843140,
-                               0.2692307692307690,
-                               0.2692307692307690,
-                               0.2692307692307690,
-                               0.2830188679245280,
-                               0.2830188679245280,
-                               0.2830188679245280,
-                               0.2830188679245280,
-                               0.2692307692307690,
-                               0.2745098039215690,
-                               0.2745098039215690,
-                               0.2745098039215690,
-                               0.2745098039215690,
-                               0.2448979591836730,
-                               0.2448979591836730,
-                               0.2448979591836730,
-                               0.2448979591836730,
-                               0.2448979591836730,
-                               0.2600000000000000,
-                               0.2600000000000000,
-                               0.2600000000000000,
-                               0.2600000000000000,
-                               0.2600000000000000,
-                               0.2600000000000000,
-                               0.2600000000000000,
-                               0.2653061224489800,
-                               0.2600000000000000,
-                               0.2600000000000000,
-                               0.2600000000000000,
-                               0.2600000000000000,
-                               0.2600000000000000,
-                               0.2600000000000000,
-                               0.2600000000000000,
-                               0.2600000000000000,
-                               0.2448979591836730,
-                               0.2448979591836730,
-                               0.2400000000000000,
-                               0.2244897959183670,
-                               0.2244897959183670,
-                               0.2244897959183670,
-                               0.2244897959183670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2244897959183670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2127659574468080,
-                               0.2127659574468080,
-                               0.2127659574468080,
-                               0.2083333333333330,
-                               0.2083333333333330,
-                               0.2083333333333330,
-                               0.2127659574468080,
-                               0.2127659574468080,
-                               0.2127659574468080,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2600000000000000,
-                               0.2745098039215690,
-                               0.2692307692307690,
-                               0.2692307692307690,
-                               0.2692307692307690,
-                               0.2641509433962260,
-                               0.2830188679245280,
-                               0.2830188679245280,
-                               0.2830188679245280,
-                               0.2830188679245280,
-                               0.2830188679245280,
-                               0.2830188679245280,
-                               0.2641509433962260,
-                               0.2641509433962260,
-                               0.2692307692307690,
-                               0.2692307692307690,
-                               0.2692307692307690,
-                               0.2692307692307690,
-                               0.2549019607843140,
-                               0.2549019607843140,
-                               0.2549019607843140,
-                               0.2549019607843140,
-                               0.2549019607843140,
-                               0.2549019607843140,
-                               0.2549019607843140,
-                               0.2549019607843140,
-                               0.2549019607843140,
-                               0.2549019607843140,
-                               0.2549019607843140,
-                               0.2549019607843140,
-                               0.2400000000000000,
-                               0.2400000000000000,
-                               0.2400000000000000,
-                               0.2400000000000000,
-                               0.2400000000000000,
-                               0.2400000000000000,
-                               0.2400000000000000,
-                               0.2400000000000000,
-                               0.2400000000000000,
-                               0.2400000000000000,
-                               0.2352941176470590,
-                               0.2352941176470590,
-                               0.2200000000000000,
-                               0.2200000000000000,
-                               0.2200000000000000,
-                               0.2156862745098040,
-                               0.2156862745098040,
-                               0.2156862745098040,
-                               0.2156862745098040,
-                               0.2156862745098040,
-                               0.2115384615384620,
-                               0.2115384615384620,
-                               0.2115384615384620,
-                               0.2115384615384620,
-                               0.2075471698113210,
-                               0.2075471698113210,
-                               0.2075471698113210,
-                               0.2075471698113210,
-                               0.2075471698113210,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2181818181818180,
-                               0.2321428571428570,
-                               0.2363636363636360,
-                               0.2363636363636360,
-                               0.2363636363636360,
-                               0.2363636363636360,
-                               0.2500000000000000,
-                               0.2500000000000000,
-                               0.2500000000000000,
-                               0.2500000000000000,
-                               0.2545454545454540,
-                               0.2678571428571430,
-                               0.2678571428571430,
-                               0.2545454545454540,
-                               0.2545454545454540,
-                               0.2545454545454540,
-                               0.2545454545454540,
-                               0.2407407407407410,
-                               0.2407407407407410,
-                               0.2264150943396230,
-                               0.2264150943396230,
-                               0.2264150943396230,
-                               0.2264150943396230,
-                               0.2307692307692310,
-                               0.2156862745098040,
-                               0.2156862745098040,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.1960784313725490,
-                               0.1960784313725490,
-                               0.2264150943396230,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2075471698113210,
-                               0.1960784313725490,
-                               0.1960784313725490,
-                               0.1960784313725490,
-                               0.1960784313725490,
-                               0.1960784313725490,
-                               0.1960784313725490,
-                               0.2075471698113210,
-                               0.2075471698113210,
-                               0.2037037037037040,
-                               0.2037037037037040,
-                               0.2037037037037040,
-                               0.2037037037037040,
-                               0.2037037037037040,
-                               0.2037037037037040,
-                               0.2037037037037040,
-                               0.2037037037037040,
-                               0.2037037037037040,
-                               0.2037037037037040,
-                               0.2075471698113210,
-                               0.2075471698113210,
-                               0.2075471698113210,
-                               0.2075471698113210,
-                               0.2075471698113210,
-                               0.2075471698113210,
-                               0.2075471698113210,
-                               0.2037037037037040,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1896551724137930,
-                               0.1896551724137930,
-                               0.1896551724137930,
-                               0.1896551724137930,
-                               0.1896551724137930,
-                               0.1896551724137930,
-                               0.1896551724137930,
-                               0.1896551724137930,
-                               0.1896551724137930,
-                               0.1896551724137930,
-                               0.1896551724137930,
-                               0.1896551724137930,
-                               0.1896551724137930,
-                               0.1896551724137930,
-                               0.1896551724137930,
-                               0.1896551724137930,
-                               0.1896551724137930,
-                               0.1896551724137930,
-                               0.1896551724137930,
-                               0.1896551724137930,
-                               0.1896551724137930,
-                               0.1896551724137930,
-                               0.1896551724137930,
-                               0.1896551724137930,
-                               0.1754385964912280,
-                               0.1754385964912280,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1481481481481480,
-                               0.1481481481481480,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1454545454545450,
-                               0.1454545454545450,
-                               0.1454545454545450,
-                               0.1454545454545450,
-                               0.1454545454545450,
-                               0.1454545454545450,
-                               0.1454545454545450,
-                               0.1454545454545450,
-                               0.1454545454545450,
-                               0.1454545454545450,
-                               0.1454545454545450,
-                               0.1454545454545450,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1090909090909090,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1132075471698110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1111111111111110,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1272727272727270,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1296296296296300,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1320754716981130,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1372549019607840,
-                               0.1372549019607840,
-                               0.1372549019607840,
-                               0.1372549019607840,
-                               0.1372549019607840,
-                               0.1372549019607840,
-                               0.1176470588235290,
-                               0.1176470588235290,
-                               0.1176470588235290,
-                               0.1176470588235290,
-                               0.1176470588235290,
-                               0.1176470588235290,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1346153846153850,
-                               0.1372549019607840,
-                               0.1372549019607840,
-                               0.1372549019607840,
-                               0.1372549019607840,
-                               0.1372549019607840,
-                               0.1372549019607840,
-                               0.1372549019607840,
-                               0.1372549019607840,
-                               0.1372549019607840,
-                               0.1372549019607840,
-                               0.1372549019607840,
-                               0.1200000000000000,
-                               0.1200000000000000,
-                               0.1224489795918370,
-                               0.1224489795918370,
-                               0.1224489795918370,
-                               0.1224489795918370,
-                               0.1224489795918370,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1224489795918370,
-                               0.1041666666666670,
-                               0.1041666666666670,
-                               0.1041666666666670,
-                               0.1041666666666670,
-                               0.1224489795918370,
-                               0.1224489795918370,
-                               0.1224489795918370,
-                               0.1224489795918370,
-                               0.1224489795918370,
-                               0.1224489795918370,
-                               0.1224489795918370,
-                               0.1224489795918370,
-                               0.1200000000000000,
-                               0.1200000000000000,
-                               0.1200000000000000,
-                               0.1200000000000000,
-                               0.1200000000000000,
-                               0.1200000000000000,
-                               0.1200000000000000,
-                               0.1200000000000000,
-                               0.1200000000000000,
-                               0.1200000000000000,
-                               0.1020408163265310,
-                               0.1020408163265310,
-                               0.1020408163265310,
-                               0.1020408163265310,
-                               0.1020408163265310,
-                               0.1020408163265310,
-                               0.1020408163265310,
-                               0.1020408163265310,
-                               0.1020408163265310,
-                               0.1020408163265310,
-                               0.1020408163265310,
-                               0.1020408163265310,
-                               0.1200000000000000,
-                               0.1372549019607840,
-                               0.1428571428571430,
-                               0.1458333333333330,
-                               0.1458333333333330,
-                               0.1489361702127660,
-                               0.1521739130434780,
-                               0.1521739130434780,
-                               0.1521739130434780,
-                               0.1702127659574470,
-                               0.1875000000000000,
-                               0.2040816326530610,
-                               0.2083333333333330,
-                               0.2083333333333330,
-                               0.2083333333333330,
-                               0.2083333333333330,
-                               0.2083333333333330,
-                               0.2127659574468080,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2340425531914890,
-                               0.2340425531914890,
-                               0.2391304347826090,
-                               0.2391304347826090,
-                               0.2391304347826090,
-                               0.2391304347826090,
-                               0.2553191489361700,
-                               0.2553191489361700,
-                               0.2608695652173910,
-                               0.2608695652173910,
-                               0.2444444444444440,
-                               0.2272727272727270,
-                               0.2093023255813950,
-                               0.2045454545454550,
-                               0.2045454545454550,
-                               0.2045454545454550,
-                               0.2045454545454550,
-                               0.2045454545454550,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2391304347826090,
-                               0.2391304347826090,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2222222222222220,
-                               0.2391304347826090,
-                               0.2391304347826090,
-                               0.2391304347826090,
-                               0.2391304347826090,
-                               0.2391304347826090,
-                               0.2391304347826090,
-                               0.2553191489361700,
-                               0.2708333333333330,
-                               0.2708333333333330,
-                               0.2708333333333330,
-                               0.2708333333333330,
-                               0.2708333333333330,
-                               0.2553191489361700,
-                               0.2553191489361700,
-                               0.2391304347826090,
-                               0.2391304347826090,
-                               0.2391304347826090,
-                               0.2391304347826090,
-                               0.2391304347826090,
-                               0.2391304347826090,
-                               0.2391304347826090,
-                               0.2553191489361700,
-                               0.2553191489361700,
-                               0.2553191489361700,
-                               0.2444444444444440,
-                               0.2391304347826090,
-                               0.2340425531914890,
-                               0.2340425531914890,
-                               0.2500000000000000,
-                               0.2500000000000000,
-                               0.2653061224489800,
-                               0.2708333333333330,
-                               0.2765957446808510,
-                               0.2708333333333330,
-                               0.2857142857142860,
-                               0.2857142857142860,
-                               0.2553191489361700,
-                               0.2553191489361700,
-                               0.2608695652173910,
-                               0.2608695652173910,
-                               0.2608695652173910,
-                               0.2608695652173910,
-                               0.3061224489795920,
-                               0.2978723404255320,
-                               0.2978723404255320,
-                               0.2978723404255320,
-                               0.2978723404255320,
-                               0.3125000000000000,
-                               0.3125000000000000,
-                               0.3125000000000000,
-                               0.3125000000000000,
-                               0.3191489361702130,
-                               0.3191489361702130,
-                               0.3191489361702130,
-                               0.3191489361702130,
-                               0.2888888888888890,
-                               0.2826086956521740,
-                               0.2888888888888890,
-                               0.2727272727272730,
-                               0.2727272727272730,
-                               0.2790697674418600,
-                               0.3111111111111110,
-                               0.3111111111111110,
-                               0.3111111111111110,
-                               0.3111111111111110,
-                               0.3111111111111110,
-                               0.3260869565217390,
-                               0.3260869565217390,
-                               0.3260869565217390,
-                               0.3191489361702130,
-                               0.3043478260869570,
-                               0.3043478260869570,
-                               0.3043478260869570,
-                               0.3191489361702130,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3265306122448980,
-                               0.3333333333333330,
-                               0.3469387755102040,
-                               0.3600000000000000,
-                               0.3600000000000000,
-                               0.3469387755102040,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3265306122448980,
-                               0.3061224489795920,
-                               0.3000000000000000,
-                               0.3000000000000000,
-                               0.3000000000000000,
-                               0.3137254901960780,
-                               0.3137254901960780,
-                               0.3000000000000000,
-                               0.3000000000000000,
-                               0.3000000000000000,
-                               0.3000000000000000,
-                               0.3000000000000000,
-                               0.2916666666666670,
-                               0.2978723404255320,
-                               0.2978723404255320,
-                               0.3125000000000000,
-                               0.3125000000000000,
-                               0.3125000000000000,
-                               0.2978723404255320,
-                               0.2916666666666670,
-                               0.2916666666666670,
-                               0.3061224489795920,
-                               0.3061224489795920,
-                               0.2916666666666670,
-                               0.3061224489795920,
-                               0.3000000000000000,
-                               0.3000000000000000,
-                               0.3137254901960780,
-                               0.3269230769230770,
-                               0.3333333333333330,
-                               0.3269230769230770,
-                               0.3269230769230770,
-                               0.3207547169811320,
-                               0.3207547169811320,
-                               0.3207547169811320,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3207547169811320,
-                               0.3269230769230770,
-                               0.3269230769230770,
-                               0.3207547169811320,
-                               0.3207547169811320,
-                               0.3207547169811320,
-                               0.3207547169811320,
-                               0.3207547169811320,
-                               0.3207547169811320,
-                               0.3207547169811320,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3454545454545450,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3396226415094340,
-                               0.3396226415094340,
-                               0.3396226415094340,
-                               0.3396226415094340,
-                               0.3396226415094340,
-                               0.3461538461538460,
-                               0.3584905660377360,
-                               0.3584905660377360,
-                               0.3584905660377360,
-                               0.3584905660377360,
-                               0.3584905660377360,
-                               0.3518518518518520,
-                               0.3518518518518520,
-                               0.3518518518518520,
-                               0.3396226415094340,
-                               0.3269230769230770,
-                               0.3137254901960780,
-                               0.3137254901960780,
-                               0.3137254901960780,
-                               0.3269230769230770,
-                               0.3269230769230770,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3200000000000000,
-                               0.3061224489795920,
-                               0.3200000000000000,
-                               0.3137254901960780,
-                               0.3137254901960780,
-                               0.3137254901960780,
-                               0.3269230769230770,
-                               0.3269230769230770,
-                               0.3269230769230770,
-                               0.3269230769230770,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3400000000000000,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3400000000000000,
-                               0.3529411764705880,
-                               0.3529411764705880,
-                               0.3529411764705880,
-                               0.3529411764705880,
-                               0.3600000000000000,
-                               0.3600000000000000,
-                               0.3600000000000000,
-                               0.3600000000000000,
-                               0.3469387755102040,
-                               0.3600000000000000,
-                               0.3600000000000000,
-                               0.3600000000000000,
-                               0.3600000000000000,
-                               0.3673469387755100,
-                               0.3800000000000000,
-                               0.3800000000000000,
-                               0.3800000000000000,
-                               0.4000000000000000,
-                               0.4000000000000000,
-                               0.4081632653061220,
-                               0.4081632653061220,
-                               0.4081632653061220,
-                               0.4081632653061220,
-                               0.4081632653061220,
-                               0.3958333333333330,
-                               0.3958333333333330,
-                               0.3958333333333330,
-                               0.3958333333333330,
-                               0.3958333333333330,
-                               0.3958333333333330,
-                               0.3958333333333330,
-                               0.3958333333333330,
-                               0.3958333333333330,
-                               0.3958333333333330,
-                               0.3958333333333330,
-                               0.3958333333333330,
-                               0.3958333333333330,
-                               0.4081632653061220,
-                               0.4081632653061220,
-                               0.4081632653061220,
-                               0.4081632653061220,
-                               0.4042553191489360,
-                               0.4042553191489360,
-                               0.4042553191489360,
-                               0.4042553191489360,
-                               0.4042553191489360,
-                               0.4130434782608700,
-                               0.4042553191489360,
-                               0.4042553191489360,
-                               0.4042553191489360,
-                               0.4042553191489360,
-                               0.4042553191489360,
-                               0.4166666666666670,
-                               0.4375000000000000,
-                               0.4375000000000000,
-                               0.4375000000000000,
-                               0.4375000000000000,
-                               0.4375000000000000,
-                               0.4375000000000000,
-                               0.4468085106382980,
-                               0.4468085106382980,
-                               0.4468085106382980,
-                               0.4347826086956520,
-                               0.4347826086956520,
-                               0.4347826086956520,
-                               0.4347826086956520,
-                               0.4347826086956520,
-                               0.4565217391304350,
-                               0.4565217391304350,
-                               0.4565217391304350,
-                               0.4444444444444440,
-                               0.4444444444444440,
-                               0.4444444444444440,
-                               0.4444444444444440,
-                               0.4444444444444440,
-                               0.4444444444444440,
-                               0.4444444444444440,
-                               0.4444444444444440,
-                               0.4347826086956520,
-                               0.4347826086956520,
-                               0.4347826086956520,
-                               0.4255319148936170,
-                               0.4255319148936170,
-                               0.4255319148936170,
-                               0.4255319148936170,
-                               0.4255319148936170,
-                               0.4130434782608700,
-                               0.4130434782608700,
-                               0.4255319148936170,
-                               0.4255319148936170,
-                               0.4255319148936170,
-                               0.4255319148936170,
-                               0.4042553191489360,
-                               0.4042553191489360,
-                               0.4042553191489360,
-                               0.4042553191489360,
-                               0.4042553191489360,
-                               0.4166666666666670,
-                               0.4166666666666670,
-                               0.4285714285714290,
-                               0.4166666666666670,
-                               0.4166666666666670,
-                               0.4166666666666670,
-                               0.4166666666666670,
-                               0.4166666666666670,
-                               0.4166666666666670,
-                               0.4166666666666670,
-                               0.4166666666666670,
-                               0.4166666666666670,
-                               0.4166666666666670,
-                               0.4166666666666670,
-                               0.4166666666666670,
-                               0.4200000000000000,
-                               0.4081632653061220,
-                               0.4081632653061220,
-                               0.4081632653061220,
-                               0.4081632653061220,
-                               0.4081632653061220,
-                               0.4000000000000000,
-                               0.4117647058823530,
-                               0.4038461538461540,
-                               0.4150943396226420,
-                               0.4074074074074070,
-                               0.4074074074074070,
-                               0.4150943396226420,
-                               0.4150943396226420,
-                               0.4150943396226420,
-                               0.4150943396226420,
-                               0.4150943396226420,
-                               0.4038461538461540,
-                               0.3962264150943400,
-                               0.4038461538461540,
-                               0.4038461538461540,
-                               0.4038461538461540,
-                               0.4038461538461540,
-                               0.4038461538461540,
-                               0.3877551020408160,
-                               0.3921568627450980,
-                               0.3921568627450980,
-                               0.3800000000000000,
-                               0.3800000000000000,
-                               0.3800000000000000,
-                               0.3800000000000000,
-                               0.3725490196078430,
-                               0.3725490196078430,
-                               0.3725490196078430,
-                               0.3725490196078430,
-                               0.3846153846153850,
-                               0.3962264150943400,
-                               0.4038461538461540,
-                               0.4038461538461540,
-                               0.4150943396226420,
-                               0.4150943396226420,
-                               0.4150943396226420,
-                               0.4181818181818180,
-                               0.4181818181818180,
-                               0.4181818181818180,
-                               0.4181818181818180,
-                               0.4181818181818180,
-                               0.4074074074074070,
-                               0.3962264150943400,
-                               0.3962264150943400,
-                               0.3962264150943400,
-                               0.4074074074074070,
-                               0.4074074074074070,
-                               0.4074074074074070,
-                               0.4000000000000000,
-                               0.4107142857142860,
-                               0.4107142857142860,
-                               0.4035087719298250,
-                               0.4035087719298250,
-                               0.4035087719298250,
-                               0.4035087719298250,
-                               0.4035087719298250,
-                               0.4035087719298250,
-                               0.4035087719298250,
-                               0.4035087719298250,
-                               0.4107142857142860,
-                               0.4107142857142860,
-                               0.4107142857142860,
-                               0.4107142857142860,
-                               0.4000000000000000,
-                               0.4000000000000000,
-                               0.4000000000000000,
-                               0.4000000000000000,
-                               0.3928571428571430,
-                               0.3818181818181820,
-                               0.3818181818181820,
-                               0.3818181818181820,
-                               0.3818181818181820,
-                               0.3818181818181820,
-                               0.3703703703703700,
-                               0.3818181818181820,
-                               0.3818181818181820,
-                               0.3818181818181820,
-                               0.3888888888888890,
-                               0.3962264150943400,
-                               0.4074074074074070,
-                               0.4074074074074070,
-                               0.4000000000000000,
-                               0.4000000000000000,
-                               0.3888888888888890,
-                               0.4000000000000000,
-                               0.4000000000000000,
-                               0.4000000000000000,
-                               0.3888888888888890,
-                               0.3888888888888890,
-                               0.3888888888888890,
-                               0.3888888888888890,
-                               0.3962264150943400,
-                               0.3962264150943400,
-                               0.3962264150943400,
-                               0.4074074074074070,
-                               0.4000000000000000,
-                               0.3962264150943400,
-                               0.3846153846153850,
-                               0.3846153846153850,
-                               0.3725490196078430,
-                               0.3725490196078430,
-                               0.3653846153846150,
-                               0.3653846153846150,
-                               0.3773584905660380,
-                               0.3773584905660380,
-                               0.3703703703703700,
-                               0.3703703703703700,
-                               0.3703703703703700,
-                               0.3584905660377360,
-                               0.3773584905660380,
-                               0.3773584905660380,
-                               0.3653846153846150,
-                               0.3653846153846150,
-                               0.3653846153846150,
-                               0.3653846153846150,
-                               0.3600000000000000,
-                               0.3600000000000000,
-                               0.3600000000000000,
-                               0.3600000000000000,
-                               0.3600000000000000,
-                               0.3600000000000000,
-                               0.3529411764705880,
-                               0.3529411764705880,
-                               0.3529411764705880,
-                               0.3529411764705880,
-                               0.3529411764705880,
-                               0.3584905660377360,
-                               0.3584905660377360,
-                               0.3584905660377360,
-                               0.3518518518518520,
-                               0.3518518518518520,
-                               0.3518518518518520,
-                               0.3518518518518520,
-                               0.3584905660377360,
-                               0.3584905660377360,
-                               0.3703703703703700,
-                               0.3703703703703700,
-                               0.3703703703703700,
-                               0.3518518518518520,
-                               0.3454545454545450,
-                               0.3454545454545450,
-                               0.3571428571428570,
-                               0.3571428571428570,
-                               0.3571428571428570,
-                               0.3571428571428570,
-                               0.3508771929824560,
-                               0.3508771929824560,
-                               0.3508771929824560,
-                               0.3508771929824560,
-                               0.3392857142857140,
-                               0.3333333333333330,
-                               0.3396226415094340,
-                               0.3461538461538460,
-                               0.3461538461538460,
-                               0.3461538461538460,
-                               0.3529411764705880,
-                               0.3653846153846150,
-                               0.3653846153846150,
-                               0.3653846153846150,
-                               0.3653846153846150,
-                               0.3653846153846150,
-                               0.3529411764705880,
-                               0.3529411764705880,
-                               0.3265306122448980,
-                               0.3265306122448980,
-                               0.3265306122448980,
-                               0.3265306122448980,
-                               0.3265306122448980,
-                               0.3333333333333330,
-                               0.3265306122448980,
-                               0.3265306122448980,
-                               0.3265306122448980,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3469387755102040,
-                               0.3469387755102040,
-                               0.3469387755102040,
-                               0.3469387755102040,
-                               0.3469387755102040,
-                               0.3541666666666670,
-                               0.3541666666666670,
-                               0.3541666666666670,
-                               0.3541666666666670,
-                               0.3541666666666670,
-                               0.3541666666666670,
-                               0.3541666666666670,
-                               0.3541666666666670,
-                               0.3541666666666670,
-                               0.3541666666666670,
-                               0.3541666666666670,
-                               0.3673469387755100,
-                               0.3673469387755100,
-                               0.3673469387755100,
-                               0.3800000000000000,
-                               0.3673469387755100,
-                               0.3673469387755100,
-                               0.3673469387755100,
-                               0.3600000000000000,
-                               0.3600000000000000,
-                               0.3529411764705880,
-                               0.3529411764705880,
-                               0.3529411764705880,
-                               0.3529411764705880,
-                               0.3653846153846150,
-                               0.3653846153846150,
-                               0.3800000000000000,
-                               0.3800000000000000,
-                               0.3800000000000000,
-                               0.3800000000000000,
-                               0.3800000000000000,
-                               0.3673469387755100,
-                               0.3469387755102040,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3469387755102040,
-                               0.3400000000000000,
-                               0.3400000000000000,
-                               0.3529411764705880,
-                               0.3529411764705880,
-                               0.3529411764705880,
-                               0.3529411764705880,
-                               0.3529411764705880,
-                               0.3600000000000000,
-                               0.3600000000000000,
-                               0.3469387755102040,
-                               0.3469387755102040,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3469387755102040,
-                               0.3469387755102040,
-                               0.3469387755102040,
-                               0.3469387755102040,
-                               0.3600000000000000,
-                               0.3725490196078430,
-                               0.3846153846153850,
-                               0.3846153846153850,
-                               0.3846153846153850,
-                               0.3846153846153850,
-                               0.3962264150943400,
-                               0.3962264150943400,
-                               0.4038461538461540,
-                               0.3962264150943400,
-                               0.3962264150943400,
-                               0.3962264150943400,
-                               0.3962264150943400,
-                               0.4038461538461540,
-                               0.4259259259259260,
-                               0.4259259259259260,
-                               0.4259259259259260,
-                               0.4259259259259260,
-                               0.4150943396226420,
-                               0.4150943396226420,
-                               0.4150943396226420,
-                               0.4150943396226420,
-                               0.4150943396226420,
-                               0.4150943396226420,
-                               0.4150943396226420,
-                               0.4000000000000000,
-                               0.3818181818181820,
-                               0.3818181818181820,
-                               0.3888888888888890,
-                               0.3888888888888890,
-                               0.3888888888888890,
-                               0.3888888888888890,
-                               0.3962264150943400,
-                               0.3888888888888890,
-                               0.3888888888888890,
-                               0.3888888888888890,
-                               0.3888888888888890,
-                               0.3888888888888890,
-                               0.4000000000000000,
-                               0.4000000000000000,
-                               0.4000000000000000,
-                               0.4000000000000000,
-                               0.4000000000000000,
-                               0.3888888888888890,
-                               0.3703703703703700,
-                               0.3703703703703700,
-                               0.3703703703703700,
-                               0.3703703703703700,
-                               0.3703703703703700,
-                               0.3703703703703700,
-                               0.3703703703703700,
-                               0.3584905660377360,
-                               0.3584905660377360,
-                               0.3584905660377360,
-                               0.3584905660377360,
-                               0.3584905660377360,
-                               0.3584905660377360,
-                               0.3584905660377360,
-                               0.3584905660377360,
-                               0.3584905660377360,
-                               0.3584905660377360,
-                               0.3584905660377360,
-                               0.3773584905660380,
-                               0.3773584905660380,
-                               0.3962264150943400,
-                               0.3962264150943400,
-                               0.3888888888888890,
-                               0.3818181818181820,
-                               0.3928571428571430,
-                               0.4035087719298250,
-                               0.4035087719298250,
-                               0.4035087719298250,
-                               0.4137931034482760,
-                               0.4137931034482760,
-                               0.4000000000000000,
-                               0.4000000000000000,
-                               0.4107142857142860,
-                               0.4107142857142860,
-                               0.4107142857142860,
-                               0.4107142857142860,
-                               0.4107142857142860,
-                               0.4107142857142860,
-                               0.4107142857142860,
-                               0.4107142857142860,
-                               0.4107142857142860,
-                               0.4107142857142860,
-                               0.4210526315789470,
-                               0.4107142857142860,
-                               0.4107142857142860,
-                               0.4107142857142860,
-                               0.4107142857142860,
-                               0.4107142857142860,
-                               0.4107142857142860,
-                               0.4210526315789470,
-                               0.4107142857142860,
-                               0.4107142857142860,
-                               0.4107142857142860,
-                               0.4107142857142860,
-                               0.4000000000000000,
-                               0.4000000000000000,
-                               0.4000000000000000,
-                               0.4000000000000000,
-                               0.4000000000000000,
-                               0.3888888888888890,
-                               0.3818181818181820,
-                               0.3818181818181820,
-                               0.3584905660377360,
-                               0.3584905660377360,
-                               0.3461538461538460,
-                               0.3461538461538460,
-                               0.3137254901960780,
-                               0.3000000000000000,
-                               0.3137254901960780,
-                               0.3137254901960780,
-                               0.3137254901960780,
-                               0.3137254901960780,
-                               0.3000000000000000,
-                               0.3000000000000000,
-                               0.3000000000000000,
-                               0.3000000000000000,
-                               0.3000000000000000,
-                               0.3000000000000000,
-                               0.2800000000000000,
-                               0.2653061224489800,
-                               0.3076923076923080,
-                               0.3076923076923080,
-                               0.3076923076923080,
-                               0.3076923076923080,
-                               0.2941176470588230,
-                               0.2941176470588230,
-                               0.2941176470588230,
-                               0.2941176470588230,
-                               0.2941176470588230,
-                               0.2941176470588230,
-                               0.3207547169811320,
-                               0.3207547169811320,
-                               0.3207547169811320,
-                               0.3207547169811320,
-                               0.3207547169811320,
-                               0.3207547169811320,
-                               0.3090909090909090,
-                               0.3090909090909090,
-                               0.2962962962962960,
-                               0.2962962962962960,
-                               0.2962962962962960,
-                               0.2962962962962960,
-                               0.2962962962962960,
-                               0.2962962962962960,
-                               0.2962962962962960,
-                               0.2962962962962960,
-                               0.2962962962962960,
-                               0.2962962962962960,
-                               0.2962962962962960,
-                               0.2909090909090910,
-                               0.2777777777777780,
-                               0.2641509433962260,
-                               0.2777777777777780,
-                               0.2777777777777780,
-                               0.2727272727272730,
-                               0.2857142857142860,
-                               0.2807017543859650,
-                               0.2758620689655170,
-                               0.2758620689655170,
-                               0.2758620689655170,
-                               0.2758620689655170,
-                               0.2758620689655170,
-                               0.2631578947368420,
-                               0.2631578947368420,
-                               0.2631578947368420,
-                               0.2586206896551720,
-                               0.2456140350877190,
-                               0.2456140350877190,
-                               0.2456140350877190,
-                               0.2456140350877190,
-                               0.2321428571428570,
-                               0.2321428571428570,
-                               0.2321428571428570,
-                               0.2321428571428570,
-                               0.2280701754385960,
-                               0.2280701754385960,
-                               0.2241379310344830,
-                               0.2241379310344830,
-                               0.2241379310344830,
-                               0.2241379310344830,
-                               0.2280701754385960,
-                               0.2280701754385960,
-                               0.2280701754385960,
-                               0.2280701754385960,
-                               0.2280701754385960,
-                               0.2280701754385960,
-                               0.2280701754385960,
-                               0.2280701754385960,
-                               0.2142857142857140,
-                               0.2142857142857140,
-                               0.2068965517241380,
-                               0.2068965517241380,
-                               0.2068965517241380,
-                               0.2068965517241380,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1929824561403510,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.1964285714285710,
-                               0.1818181818181820,
-                               0.1818181818181820,
-                               0.1818181818181820,
-                               0.1818181818181820,
-                               0.1818181818181820,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1785714285714290,
-                               0.1754385964912280,
-                               0.1754385964912280,
-                               0.1754385964912280,
-                               0.1754385964912280,
-                               0.1754385964912280,
-                               0.1754385964912280,
-                               0.1754385964912280,
-                               0.1754385964912280,
-                               0.1754385964912280,
-                               0.1754385964912280,
-                               0.1754385964912280,
-                               0.1754385964912280,
-                               0.1754385964912280,
-                               0.1754385964912280,
-                               0.1896551724137930,
-                               0.1896551724137930,
-                               0.1896551724137930,
-                               0.1896551724137930,
-                               0.1896551724137930,
-                               0.1896551724137930,
-                               0.1754385964912280,
-                               0.1754385964912280,
-                               0.1754385964912280,
-                               0.1754385964912280,
-                               0.1754385964912280,
-                               0.1754385964912280,
-                               0.1754385964912280,
-                               0.1754385964912280,
-                               0.1754385964912280,
-                               0.1754385964912280,
-                               0.1754385964912280,
-                               0.1754385964912280,
-                               0.1724137931034480,
-                               0.1724137931034480,
-                               0.1724137931034480,
-                               0.1724137931034480,
-                               0.1724137931034480,
-                               0.1724137931034480,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1578947368421050,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1607142857142860,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1636363636363640,
-                               0.1666666666666670,
-                               0.1666666666666670,
-                               0.1666666666666670,
-                               0.1666666666666670,
-                               0.1698113207547170,
-                               0.1698113207547170,
-                               0.1698113207547170,
-                               0.1698113207547170,
-                               0.1698113207547170,
-                               0.1698113207547170,
-                               0.1698113207547170,
-                               0.1698113207547170,
-                               0.1698113207547170,
-                               0.1698113207547170,
-                               0.1698113207547170,
-                               0.1698113207547170,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1730769230769230,
-                               0.1764705882352940,
-                               0.1764705882352940,
-                               0.1764705882352940,
-                               0.1764705882352940,
-                               0.1764705882352940,
-                               0.1764705882352940,
-                               0.1764705882352940,
-                               0.1764705882352940,
-                               0.1764705882352940,
-                               0.1764705882352940,
-                               0.1764705882352940,
-                               0.1764705882352940,
-                               0.1764705882352940,
-                               0.1764705882352940,
-                               0.1764705882352940,
-                               0.1764705882352940,
-                               0.1764705882352940,
-                               0.1764705882352940,
-                               0.1600000000000000,
-                               0.1600000000000000,
-                               0.1600000000000000,
-                               0.1600000000000000,
-                               0.1600000000000000,
-                               0.1600000000000000,
-                               0.1568627450980390,
-                               0.1568627450980390,
-                               0.1568627450980390,
-                               0.1568627450980390,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1224489795918370,
-                               0.1224489795918370,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1224489795918370,
-                               0.1224489795918370,
-                               0.1224489795918370,
-                               0.1224489795918370,
-                               0.1063829787234040,
-                               0.1063829787234040,
-                               0.1063829787234040,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1400000000000000,
-                               0.1224489795918370,
-                               0.1224489795918370,
-                               0.1224489795918370,
-                               0.1224489795918370,
-                               0.1224489795918370,
-                               0.1224489795918370,
-                               0.1224489795918370,
-                               0.1224489795918370,
-                               0.1224489795918370,
-                               0.1224489795918370,
-                               0.1224489795918370,
-                               0.1224489795918370,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1333333333333330,
-                               0.1333333333333330,
-                               0.1333333333333330,
-                               0.1333333333333330,
-                               0.1333333333333330,
-                               0.1333333333333330,
-                               0.1739130434782610,
-                               0.1739130434782610,
-                               0.1739130434782610,
-                               0.1739130434782610,
-                               0.1777777777777780,
-                               0.1956521739130430,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2244897959183670,
-                               0.2244897959183670,
-                               0.2244897959183670,
-                               0.2244897959183670,
-                               0.2244897959183670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2448979591836730,
-                               0.2448979591836730,
-                               0.2448979591836730,
-                               0.2448979591836730,
-                               0.2448979591836730,
-                               0.2448979591836730,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2653061224489800,
-                               0.2653061224489800,
-                               0.2708333333333330,
-                               0.2708333333333330,
-                               0.2708333333333330,
-                               0.2708333333333330,
-                               0.2708333333333330,
-                               0.2708333333333330,
-                               0.2708333333333330,
-                               0.2708333333333330,
-                               0.2708333333333330,
-                               0.2765957446808510,
-                               0.2916666666666670,
-                               0.2978723404255320,
-                               0.3125000000000000,
-                               0.3265306122448980,
-                               0.3265306122448980,
-                               0.3333333333333330,
-                               0.3191489361702130,
-                               0.3191489361702130,
-                               0.3260869565217390,
-                               0.3260869565217390,
-                               0.3260869565217390,
-                               0.3260869565217390,
-                               0.3333333333333330,
-                               0.3181818181818180,
-                               0.3181818181818180,
-                               0.3181818181818180,
-                               0.3181818181818180,
-                               0.3333333333333330,
-                               0.3260869565217390,
-                               0.3043478260869570,
-                               0.3043478260869570,
-                               0.2954545454545450,
-                               0.2954545454545450,
-                               0.2954545454545450,
-                               0.2790697674418600,
-                               0.2666666666666670,
-                               0.2666666666666670,
-                               0.2826086956521740,
-                               0.2826086956521740,
-                               0.2888888888888890,
-                               0.2888888888888890,
-                               0.2727272727272730,
-                               0.2558139534883720,
-                               0.2558139534883720,
-                               0.2558139534883720,
-                               0.2500000000000000,
-                               0.2666666666666670,
-                               0.2608695652173910,
-                               0.2608695652173910,
-                               0.2553191489361700,
-                               0.2553191489361700,
-                               0.2708333333333330,
-                               0.2500000000000000,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2448979591836730,
-                               0.2448979591836730,
-                               0.2500000000000000,
-                               0.2500000000000000,
-                               0.2500000000000000,
-                               0.2448979591836730,
-                               0.2448979591836730,
-                               0.2400000000000000,
-                               0.2400000000000000,
-                               0.2549019607843140,
-                               0.2549019607843140,
-                               0.2400000000000000,
-                               0.2400000000000000,
-                               0.2400000000000000,
-                               0.2400000000000000,
-                               0.2448979591836730,
-                               0.2448979591836730,
-                               0.2448979591836730,
-                               0.2500000000000000,
-                               0.2500000000000000,
-                               0.2500000000000000,
-                               0.2653061224489800,
-                               0.2653061224489800,
-                               0.2653061224489800,
-                               0.2653061224489800,
-                               0.2653061224489800,
-                               0.2800000000000000,
-                               0.2653061224489800,
-                               0.2653061224489800,
-                               0.2800000000000000,
-                               0.2500000000000000,
-                               0.2500000000000000,
-                               0.2500000000000000,
-                               0.2500000000000000,
-                               0.2500000000000000,
-                               0.2500000000000000,
-                               0.2448979591836730,
-                               0.2500000000000000,
-                               0.2500000000000000,
-                               0.2500000000000000,
-                               0.2500000000000000,
-                               0.2500000000000000,
-                               0.2553191489361700,
-                               0.2608695652173910,
-                               0.2608695652173910,
-                               0.2608695652173910,
-                               0.2608695652173910,
-                               0.2608695652173910,
-                               0.2553191489361700,
-                               0.2708333333333330,
-                               0.2708333333333330,
-                               0.2708333333333330,
-                               0.2708333333333330,
-                               0.2708333333333330,
-                               0.2708333333333330,
-                               0.2708333333333330,
-                               0.2653061224489800,
-                               0.2653061224489800,
-                               0.2653061224489800,
-                               0.2653061224489800,
-                               0.2653061224489800,
-                               0.2800000000000000,
-                               0.2800000000000000,
-                               0.2800000000000000,
-                               0.2800000000000000,
-                               0.2800000000000000,
-                               0.2857142857142860,
-                               0.2916666666666670,
-                               0.2916666666666670,
-                               0.2916666666666670,
-                               0.2916666666666670,
-                               0.2916666666666670,
-                               0.2857142857142860,
-                               0.2916666666666670,
-                               0.2916666666666670,
-                               0.3061224489795920,
-                               0.3061224489795920,
-                               0.2978723404255320,
-                               0.2978723404255320,
-                               0.2826086956521740,
-                               0.2826086956521740,
-                               0.2727272727272730,
-                               0.2727272727272730,
-                               0.2888888888888890,
-                               0.3043478260869570,
-                               0.3043478260869570,
-                               0.3043478260869570,
-                               0.3043478260869570,
-                               0.3043478260869570,
-                               0.3191489361702130,
-                               0.3260869565217390,
-                               0.3260869565217390,
-                               0.3260869565217390,
-                               0.3260869565217390,
-                               0.3260869565217390,
-                               0.3260869565217390,
-                               0.3260869565217390,
-                               0.3260869565217390,
-                               0.3260869565217390,
-                               0.3260869565217390,
-                               0.3260869565217390,
-                               0.3260869565217390,
-                               0.3111111111111110,
-                               0.3181818181818180,
-                               0.3181818181818180,
-                               0.3181818181818180,
-                               0.3181818181818180,
-                               0.3023255813953490,
-                               0.3023255813953490,
-                               0.2790697674418600,
-                               0.2857142857142860,
-                               0.3023255813953490,
-                               0.3023255813953490,
-                               0.3023255813953490,
-                               0.3181818181818180,
-                               0.3333333333333330,
-                               0.3617021276595740,
-                               0.3877551020408160,
-                               0.3877551020408160,
-                               0.4000000000000000,
-                               0.4000000000000000,
-                               0.4117647058823530,
-                               0.4117647058823530,
-                               0.4117647058823530,
-                               0.4117647058823530,
-                               0.4000000000000000,
-                               0.3877551020408160,
-                               0.3750000000000000,
-                               0.3750000000000000,
-                               0.3750000000000000,
-                               0.3750000000000000,
-                               0.3877551020408160,
-                               0.3877551020408160,
-                               0.3800000000000000,
-                               0.3800000000000000,
-                               0.3673469387755100,
-                               0.3673469387755100,
-                               0.3673469387755100,
-                               0.3673469387755100,
-                               0.3673469387755100,
-                               0.3673469387755100,
-                               0.3673469387755100,
-                               0.3541666666666670,
-                               0.3404255319148940,
-                               0.3404255319148940,
-                               0.3404255319148940,
-                               0.3404255319148940,
-                               0.3404255319148940,
-                               0.3404255319148940,
-                               0.3404255319148940,
-                               0.3404255319148940,
-                               0.3404255319148940,
-                               0.3404255319148940,
-                               0.3404255319148940,
-                               0.3478260869565220,
-                               0.3478260869565220,
-                               0.3478260869565220,
-                               0.3404255319148940,
-                               0.3260869565217390,
-                               0.3260869565217390,
-                               0.3260869565217390,
-                               0.3260869565217390,
-                               0.3191489361702130,
-                               0.3191489361702130,
-                               0.3043478260869570,
-                               0.2727272727272730,
-                               0.2727272727272730,
-                               0.2727272727272730,
-                               0.2727272727272730,
-                               0.2727272727272730,
-                               0.2727272727272730,
-                               0.2727272727272730,
-                               0.2727272727272730,
-                               0.2888888888888890,
-                               0.2888888888888890,
-                               0.2826086956521740,
-                               0.2888888888888890,
-                               0.2888888888888890,
-                               0.3043478260869570,
-                               0.3191489361702130,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3409090909090910,
-                               0.3409090909090910,
-                               0.3409090909090910,
-                               0.3409090909090910,
-                               0.3409090909090910,
-                               0.3555555555555560,
-                               0.3555555555555560,
-                               0.3555555555555560,
-                               0.3555555555555560,
-                               0.3555555555555560,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3333333333333330,
-                               0.3478260869565220,
-                               0.3478260869565220,
-                               0.3478260869565220,
-                               0.3555555555555560,
-                               0.3478260869565220,
-                               0.3478260869565220,
-                               0.3617021276595740,
-                               0.3617021276595740,
-                               0.3617021276595740,
-                               0.3617021276595740,
-                               0.3478260869565220,
-                               0.3617021276595740,
-                               0.3617021276595740,
-                               0.3478260869565220,
-                               0.3478260869565220,
-                               0.3404255319148940,
-                               0.3404255319148940,
-                               0.3404255319148940,
-                               0.3404255319148940,
-                               0.3404255319148940,
-                               0.3404255319148940,
-                               0.3541666666666670,
-                               0.3541666666666670,
-                               0.3617021276595740,
-                               0.3617021276595740,
-                               0.3617021276595740,
-                               0.3617021276595740,
-                               0.3541666666666670,
-                               0.3600000000000000,
-                               0.3600000000000000,
-                               0.3600000000000000,
-                               0.3725490196078430,
-                               0.3725490196078430,
-                               0.3725490196078430,
-                               0.3800000000000000,
-                               0.4000000000000000,
-                               0.4000000000000000,
-                               0.4000000000000000,
-                               0.4000000000000000,
-                               0.4000000000000000,
-                               0.3877551020408160,
-                               0.3877551020408160,
-                               0.3877551020408160,
-                               0.3877551020408160,
-                               0.4000000000000000,
-                               0.4000000000000000,
-                               0.4000000000000000,
-                               0.4000000000000000,
-                               0.4000000000000000,
-                               0.4000000000000000,
-                               0.4000000000000000,
-                               0.3877551020408160,
-                               0.3877551020408160,
-                               0.3750000000000000,
-                               0.3750000000000000,
-                               0.3695652173913040,
-                               0.3695652173913040,
-                               0.3695652173913040,
-                               0.3695652173913040,
-                               0.3555555555555560,
-                               0.3555555555555560,
-                               0.3695652173913040,
-                               0.3695652173913040,
-                               0.3695652173913040,
-                               0.3695652173913040,
-                               0.3617021276595740,
-                               0.3695652173913040,
-                               0.3555555555555560,
-                               0.3409090909090910,
-                               0.3555555555555560,
-                               0.3555555555555560,
-                               0.3777777777777780,
-                               0.3863636363636360,
-                               0.3953488372093020,
-                               0.3953488372093020,
-                               0.3953488372093020,
-                               0.3953488372093020,
-                               0.3863636363636360,
-                               0.3863636363636360,
-                               0.3863636363636360,
-                               0.3863636363636360,
-                               0.3863636363636360,
-                               0.3863636363636360,
-                               0.3863636363636360,
-                               0.3863636363636360,
-                               0.3777777777777780,
-                               0.3777777777777780,
-                               0.3777777777777780,
-                               0.3777777777777780,
-                               0.3777777777777780,
-                               0.3777777777777780,
-                               0.3777777777777780,
-                               0.3777777777777780,
-                               0.3777777777777780,
-                               0.3777777777777780,
-                               0.3777777777777780,
-                               0.3777777777777780,
-                               0.3913043478260870,
-                               0.3913043478260870,
-                               0.3913043478260870,
-                               0.3913043478260870,
-                               0.3636363636363640,
-                               0.3777777777777780,
-                               0.3777777777777780,
-                               0.3777777777777780,
-                               0.3777777777777780,
-                               0.3777777777777780,
-                               0.3777777777777780,
-                               0.3636363636363640,
-                               0.3636363636363640,
-                               0.3636363636363640,
-                               0.3636363636363640,
-                               0.3636363636363640,
-                               0.3555555555555560,
-                               0.3555555555555560,
-                               0.3555555555555560,
-                               0.3555555555555560,
-                               0.3409090909090910,
-                               0.3409090909090910,
-                               0.3255813953488370,
-                               0.3255813953488370,
-                               0.3255813953488370,
-                               0.3255813953488370,
-                               0.3414634146341460,
-                               0.3170731707317070,
-                               0.3095238095238100,
-                               0.3255813953488370,
-                               0.3255813953488370,
-                               0.3255813953488370,
-                               0.3095238095238100,
-                               0.3095238095238100,
-                               0.3255813953488370,
-                               0.3255813953488370,
-                               0.3095238095238100,
-                               0.3095238095238100,
-                               0.3095238095238100,
-                               0.3255813953488370,
-                               0.3255813953488370,
-                               0.3255813953488370,
-                               0.3255813953488370,
-                               0.3255813953488370,
-                               0.3095238095238100,
-                               0.3095238095238100,
-                               0.3255813953488370,
-                               0.3255813953488370,
-                               0.3409090909090910,
-                               0.3409090909090910,
-                               0.3555555555555560,
-                               0.3555555555555560,
-                               0.3555555555555560,
-                               0.3555555555555560,
-                               0.3555555555555560,
-                               0.3409090909090910,
-                               0.3409090909090910,
-                               0.3488372093023260,
-                               0.3636363636363640,
-                               0.3636363636363640,
-                               0.3636363636363640,
-                               0.3636363636363640,
-                               0.3636363636363640,
-                               0.3913043478260870,
-                               0.3913043478260870,
-                               0.3913043478260870,
-                               0.3913043478260870,
-                               0.3913043478260870,
-                               0.3913043478260870,
-                               0.3913043478260870,
-                               0.3913043478260870,
-                               0.3913043478260870,
-                               0.3913043478260870,
-                               0.3913043478260870,
-                               0.3913043478260870,
-                               0.3829787234042550,
-                               0.3913043478260870,
-                               0.3913043478260870,
-                               0.3913043478260870,
-                               0.3913043478260870,
-                               0.4042553191489360,
-                               0.4042553191489360,
-                               0.4042553191489360,
-                               0.3913043478260870,
-                               0.4000000000000000,
-                               0.4000000000000000,
-                               0.3863636363636360,
-                               0.3636363636363640,
-                               0.3636363636363640,
-                               0.3636363636363640,
-                               0.3636363636363640,
-                               0.3488372093023260,
-                               0.3488372093023260,
-                               0.3488372093023260,
-                               0.3409090909090910,
-                               0.3255813953488370,
-                               0.3255813953488370,
-                               0.3181818181818180,
-                               0.3181818181818180,
-                               0.3111111111111110,
-                               0.3111111111111110,
-                               0.3111111111111110,
-                               0.3260869565217390,
-                               0.3404255319148940,
-                               0.3404255319148940,
-                               0.3260869565217390,
-                               0.3023255813953490,
-                               0.3181818181818180,
-                               0.3111111111111110,
-                               0.3111111111111110,
-                               0.3043478260869570,
-                               0.3043478260869570,
-                               0.3043478260869570,
-                               0.3043478260869570,
-                               0.3043478260869570,
-                               0.3111111111111110,
-                               0.3111111111111110,
-                               0.3111111111111110,
-                               0.3260869565217390,
-                               0.3260869565217390,
-                               0.3111111111111110,
-                               0.3111111111111110,
-                               0.3111111111111110,
-                               0.3111111111111110,
-                               0.3111111111111110,
-                               0.3111111111111110,
-                               0.3260869565217390,
-                               0.3111111111111110,
-                               0.3111111111111110,
-                               0.2954545454545450,
-                               0.2954545454545450,
-                               0.2954545454545450,
-                               0.2954545454545450,
-                               0.3260869565217390,
-                               0.3191489361702130,
-                               0.3191489361702130,
-                               0.3191489361702130,
-                               0.3191489361702130,
-                               0.3191489361702130,
-                               0.3125000000000000,
-                               0.3125000000000000,
-                               0.3125000000000000,
-                               0.3125000000000000,
-                               0.2978723404255320,
-                               0.2826086956521740,
-                               0.2826086956521740,
-                               0.2765957446808510,
-                               0.2978723404255320,
-                               0.2978723404255320,
-                               0.2916666666666670,
-                               0.2765957446808510,
-                               0.2765957446808510,
-                               0.2765957446808510,
-                               0.2765957446808510,
-                               0.2916666666666670,
-                               0.2916666666666670,
-                               0.3061224489795920,
-                               0.3061224489795920,
-                               0.3061224489795920,
-                               0.3061224489795920,
-                               0.2916666666666670,
-                               0.2916666666666670,
-                               0.2916666666666670,
-                               0.2916666666666670,
-                               0.2708333333333330,
-                               0.2500000000000000,
-                               0.2500000000000000,
-                               0.2500000000000000,
-                               0.2500000000000000,
-                               0.2500000000000000,
-                               0.2340425531914890,
-                               0.2340425531914890,
-                               0.2173913043478260,
-                               0.2173913043478260,
-                               0.1956521739130430,
-                               0.1956521739130430,
-                               0.1956521739130430,
-                               0.1956521739130430,
-                               0.2173913043478260,
-                               0.2173913043478260,
-                               0.2000000000000000,
-                               0.2000000000000000,
-                               0.2173913043478260,
-                               0.2173913043478260,
-                               0.1956521739130430,
-                               0.1956521739130430,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2291666666666670,
-                               0.2244897959183670,
-                               0.2083333333333330,
-                               0.1914893617021280,
-                               0.1914893617021280,
-                               0.1875000000000000,
-                               0.1914893617021280,
-                               0.1914893617021280,
-                               0.1914893617021280,
-                               0.1914893617021280,
-                               0.1914893617021280,
-                               0.1739130434782610,
-                               0.1702127659574470,
-                               0.1666666666666670,
-                               0.1666666666666670,
-                               0.1666666666666670,
-                               0.1666666666666670,
-                               0.1836734693877550,
-                               0.1875000000000000,
-                               0.1914893617021280,
-                               0.1914893617021280,
-                               0.1739130434782610,
-                               0.1739130434782610,
-                               0.1739130434782610,
-                               0.1739130434782610,
-                               0.1739130434782610,
-                               0.1739130434782610,
-                               0.1739130434782610,
-                               0.1739130434782610,
-                               0.1739130434782610,
-                               0.1739130434782610,
-                               0.1777777777777780,
-                               0.1702127659574470,
-                               0.1702127659574470,
-                               0.1702127659574470,
-                               0.1702127659574470,
-                               0.1702127659574470,
-                               0.1875000000000000,
-                               0.1875000000000000,
-                               0.1875000000000000,
-                               0.1875000000000000,
-                               0.1875000000000000,
-                               0.1875000000000000,
-                               0.1875000000000000,
-                               0.1875000000000000,
-                               0.1836734693877550,
-                               0.1836734693877550,
-                               0.1666666666666670,
-                               0.1666666666666670,
-                               0.1666666666666670,
-                               0.1458333333333330,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1428571428571430,
-                               0.1458333333333330,
-                               0.1458333333333330,
-                               0.1458333333333330,
-                               0.1276595744680850,
-                               0.1276595744680850,
-                               0.1276595744680850,
-                               0.1276595744680850,
-                               0.1276595744680850,
-                               0.1276595744680850,
-                               0.1276595744680850,
-                               0.1276595744680850,
-                               0.1276595744680850,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1224489795918370,
-                               0.1224489795918370,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1250000000000000,
-                               0.1224489795918370,
-                               0.1224489795918370,
-                               0.1224489795918370,
-                               0.1224489795918370,
-                               0.1224489795918370,
-                               0.1224489795918370,
-                               0.1041666666666670,
-                               0.1041666666666670,
-                               0.1041666666666670,
-                               0.1041666666666670,
-                               0.1041666666666670,
-                               0.1020408163265310,
-                               0.1020408163265310,
-                               0.1020408163265310,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1020408163265310,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0800000000000000,
-                               0.0800000000000000,
-                               0.0800000000000000,
-                               0.0800000000000000,
-                               0.0800000000000000,
-                               0.0800000000000000,
-                               0.0800000000000000,
-                               0.0800000000000000,
-                               0.0800000000000000,
-                               0.0800000000000000,
-                               0.0800000000000000,
-                               0.0800000000000000,
-                               0.0800000000000000,
-                               0.0800000000000000,
-                               0.0800000000000000,
-                               0.0816326530612245,
-                               0.1000000000000000,
-                               0.1000000000000000,
-                               0.0980392156862745,
-                               0.0980392156862745,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.0961538461538462,
-                               0.0943396226415094,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0909090909090909,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0925925925925926,
-                               0.0909090909090909,
-                               0.0740740740740741,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0727272727272727,
-                               0.0714285714285714,
-                               0.0545454545454545,
-                               0.0545454545454545,
-                               0.0535714285714286,
-                               0.0535714285714286,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0363636363636364,
-                               0.0357142857142857,
-                               0.0357142857142857,
-                               0.0357142857142857,
-                               0.0357142857142857,
-                               0.0357142857142857,
-                               0.0357142857142857,
-                               0.0357142857142857,
-                               0.0357142857142857,
-                               0.0357142857142857,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0350877192982456,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0344827586206897,
-                               0.0175438596491228,
-                               0.0175438596491228,
-                               0.0175438596491228
-                       }
-               }
-       };
-
-}      /* namespace prob_features */
-
-}      /* namespace ctx */
-
-#endif /* End of _CONTEXT_PLACE_RECOGNITION_FEATURES_MODEL_H_ */
diff --git a/src/my-place/visit-categer/VisitCateger.cpp b/src/my-place/visit-categer/VisitCateger.cpp
deleted file mode 100644 (file)
index c122fd9..0000000
+++ /dev/null
@@ -1,424 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include "VisitCateger.h"
-#include "Mahal.h"
-#include <time.h>
-#include "ProbFeaturesModel.h"
-#include <Types.h>
-
-// categorizer model parameters trained offline (implemented in python):
-const std::map<int, ctx::MahalModel> ctx::VisitCateger::__models({
-{
-       PLACE_CATEG_ID_HOME,
-       ctx::MahalModel(
-       {
-               0.588408417316, 0.475154840361, -0.564085141865, 0.077711893790, 0.782630398597, -0.650926403250, -0.101943950378
-       },
-       {
-               0.797977863370, -0.133179879257, 0.242803062646, -0.059448581046, -0.117039646748, 0.097645535057, 0.014250290052,
-               -0.133179879257, 1.028900241400, -0.252245407243, 0.058455883835, -0.283950879851, 0.172204076583, 0.247906065767,
-               0.242803062646, -0.252245407243, 1.832134785177, 0.327188225606, 0.874905851092, -0.371088938012, -1.289816938938,
-               -0.059448581046, 0.058455883835, 0.327188225606, 1.455090164348, 0.138363721074, 0.216985279422, -1.113021128017,
-               -0.117039646748, -0.283950879851, 0.874905851092, 0.138363721074, 1.379674755873, -0.977922749615, -0.738895486376,
-               0.097645535057, 0.172204076583, -0.371088938012, 0.216985279422, -0.977922749615, 0.899928922718, -0.158101631251,
-               0.014250290052, 0.247906065767, -1.289816938938, -1.113021128017, -0.738895486376, -0.158101631251, 2.644105309746
-       })
-},
-{
-       PLACE_CATEG_ID_WORK,
-       ctx::MahalModel(
-       {
-               -0.128092670982, -0.762177819157, 0.262924477521, -0.412038966097, -1.049141893517, 1.104760800499, -0.628939955525
-       },
-       {
-               15.751249839350, 11.389025401325, -9.885346240379, -0.010809392387, -1.308837060762, 0.970778241189, 0.558946631235,
-               11.389025401325, 12.830223040140, -8.517695939156, 0.293693134532, -0.845784968295, 1.418175236596, -2.246658259974,
-               -9.885346240379, -8.517695939156, 10.222750966685, 0.390448668966, 1.095218945062, -0.403733435617, -1.815103304859,
-               -0.010809392387, 0.293693134532, 0.390448668966, 2.256864603458, 0.632080300647, -0.019551779384, -1.751417951792,
-               -1.308837060762, -0.845784968295, 1.095218945062, 0.632080300647, 3.132753467561, -1.427748733399, -4.291958669471,
-               0.970778241189, 1.418175236596, -0.403733435617, -0.019551779384, -1.427748733399, 1.183055586213, 0.200571452172,
-               0.558946631235, -2.246658259974, -1.815103304859, -1.751417951792, -4.291958669471, 0.200571452172, 11.668888615934
-       })
-},
-{
-       PLACE_CATEG_ID_OTHER,
-       ctx::MahalModel(
-       {
-               -0.542340098504, 0.184789511765, 0.387451546413, 0.301902661472, 0.109392397093, -0.310468874039, 0.709513920221
-       },
-       {
-               2.153884992301, -0.129488409324, 0.136236052776, -0.138043678532, -0.227492557156, 0.117810812390, 0.265072329266,
-               -0.129488409324, 3.165213522741, -1.751520714507, 0.467831090302, -0.483916138161, 0.376293684450, 0.149387541935,
-               0.136236052776, -1.751520714507, 2.483475248800, 0.384085303028, 0.338642175318, -0.052000492068, -0.801404345627,
-               -0.138043678532, 0.467831090302, 0.384085303028, 1.972390458477, -0.025332052563, 0.393845805027, -1.225948397955,
-               -0.227492557156, -0.483916138161, 0.338642175318, -0.025332052563, 0.890301343360, -0.549163112351, -0.746838701215,
-               0.117810812390, 0.376293684450, -0.052000492068, 0.393845805027, -0.549163112351, 0.474674836872, 0.012417969474,
-               0.265072329266, 0.149387541935, -0.801404345627, -1.225948397955, -0.746838701215, 0.012417969474, 2.104629121515
-       })
-}});
-
-ctx::PiecewiseLin ctx::VisitCateger::__chiApprox(
-{
-       0.  ,  0.01,  0.02,  0.03,  0.04,  0.05,  0.06,  0.07,  0.08,
-       0.09,  0.1 ,  0.11,  0.12,  0.13,  0.14,  0.15,  0.16,  0.17,
-       0.18,  0.19,  0.2 ,  0.21,  0.22,  0.23,  0.24,  0.25,  0.26,
-       0.27,  0.28,  0.29,  0.3 ,  0.31,  0.32,  0.33,  0.34,  0.35,
-       0.36,  0.37,  0.38,  0.39,  0.4 ,  0.41,  0.42,  0.43,  0.44,
-       0.45,  0.46,  0.47,  0.48,  0.49,  0.5 ,  0.51,  0.52,  0.53,
-       0.54,  0.55,  0.56,  0.57,  0.58,  0.59,  0.6 ,  0.61,  0.62,
-       0.63,  0.64,  0.65,  0.66,  0.67,  0.68,  0.69,  0.7 ,  0.71,
-       0.72,  0.73,  0.74,  0.75,  0.76,  0.77,  0.78,  0.79,  0.8 ,
-       0.81,  0.82,  0.83,  0.84,  0.85,  0.86,  0.87,  0.88,  0.89,
-       0.9 ,  0.91,  0.92,  0.93,  0.94,  0.95,  0.96,  0.97,  0.98,
-       0.99,  1.  ,  1.01,  1.02,  1.03,  1.04,  1.05,  1.06,  1.07,
-       1.08,  1.09,  1.1 ,  1.11,  1.12,  1.13,  1.14,  1.15,  1.16,
-       1.17,  1.18,  1.19,  1.2 ,  1.21,  1.22,  1.23,  1.24,  1.25,
-       1.26,  1.27,  1.28,  1.29,  1.3 ,  1.31,  1.32,  1.33,  1.34,
-       1.35,  1.36,  1.37,  1.38,  1.39,  1.4 ,  1.41,  1.42,  1.43,
-       1.44,  1.45,  1.46,  1.47,  1.48,  1.49,  1.5 ,  1.51,  1.52,
-       1.53,  1.54,  1.55,  1.56,  1.57,  1.58,  1.59,  1.6 ,  1.61,
-       1.62,  1.63,  1.64,  1.65,  1.66,  1.67,  1.68,  1.69,  1.7 ,
-       1.71,  1.72,  1.73,  1.74,  1.75,  1.76,  1.77,  1.78,  1.79,
-       1.8 ,  1.81,  1.82,  1.83,  1.84,  1.85,  1.86,  1.87,  1.88,
-       1.89,  1.9 ,  1.91,  1.92,  1.93,  1.94,  1.95,  1.96,  1.97,
-       1.98,  1.99,  2.  ,  2.01,  2.02,  2.03,  2.04,  2.05,  2.06,
-       2.07,  2.08,  2.09,  2.1 ,  2.11,  2.12,  2.13,  2.14,  2.15,
-       2.16,  2.17,  2.18,  2.19,  2.2 ,  2.21,  2.22,  2.23,  2.24,
-       2.25,  2.26,  2.27,  2.28,  2.29,  2.3 ,  2.31,  2.32,  2.33,
-       2.34,  2.35,  2.36,  2.37,  2.38,  2.39,  2.4 ,  2.41,  2.42,
-       2.43,  2.44,  2.45,  2.46,  2.47,  2.48,  2.49,  2.5 ,  2.51,
-       2.52,  2.53,  2.54,  2.55,  2.56,  2.57,  2.58,  2.59,  2.6 ,
-       2.61,  2.62,  2.63,  2.64,  2.65,  2.66,  2.67,  2.68,  2.69,
-       2.7 ,  2.71,  2.72,  2.73,  2.74,  2.75,  2.76,  2.77,  2.78,
-       2.79,  2.8 ,  2.81,  2.82,  2.83,  2.84,  2.85,  2.86,  2.87,
-       2.88,  2.89,  2.9 ,  2.91,  2.92,  2.93,  2.94,  2.95,  2.96,
-       2.97,  2.98,  2.99,  3.  ,  3.01,  3.02,  3.03,  3.04,  3.05,
-       3.06,  3.07,  3.08,  3.09,  3.1 ,  3.11,  3.12,  3.13,  3.14,
-       3.15,  3.16,  3.17,  3.18,  3.19,  3.2 ,  3.21,  3.22,  3.23,
-       3.24,  3.25,  3.26,  3.27,  3.28,  3.29,  3.3 ,  3.31,  3.32,
-       3.33,  3.34,  3.35,  3.36,  3.37,  3.38,  3.39,  3.4 ,  3.41,
-       3.42,  3.43,  3.44,  3.45,  3.46,  3.47,  3.48,  3.49,  3.5 ,
-       3.51,  3.52,  3.53,  3.54,  3.55,  3.56,  3.57,  3.58,  3.59,
-       3.6 ,  3.61,  3.62,  3.63,  3.64,  3.65,  3.66,  3.67,  3.68,
-       3.69,  3.7 ,  3.71,  3.72,  3.73,  3.74,  3.75,  3.76,  3.77,
-       3.78,  3.79,  3.8 ,  3.81,  3.82,  3.83,  3.84,  3.85,  3.86,
-       3.87,  3.88,  3.89,  3.9 ,  3.91,  3.92,  3.93,  3.94,  3.95,
-       3.96,  3.97,  3.98,  3.99,  4.  ,  4.01,  4.02,  4.03,  4.04,
-       4.05,  4.06,  4.07,  4.08,  4.09,  4.1 ,  4.11,  4.12,  4.13,
-       4.14,  4.15,  4.16,  4.17,  4.18,  4.19,  4.2 ,  4.21,  4.22,
-       4.23,  4.24,  4.25,  4.26,  4.27,  4.28,  4.29,  4.3 ,  4.31,
-       4.32,  4.33,  4.34,  4.35,  4.36,  4.37,  4.38,  4.39,  4.4 ,
-       4.41,  4.42,  4.43,  4.44,  4.45,  4.46,  4.47,  4.48,  4.49,
-       4.5 ,  4.51,  4.52,  4.53,  4.54,  4.55,  4.56,  4.57,  4.58,
-       4.59,  4.6 ,  4.61,  4.62,  4.63,  4.64,  4.65,  4.66,  4.67,
-       4.68,  4.69,  4.7 ,  4.71,  4.72,  4.73,  4.74,  4.75,  4.76,
-       4.77,  4.78,  4.79,  4.8 ,  4.81,  4.82,  4.83,  4.84,  4.85,
-       4.86,  4.87,  4.88,  4.89,  4.9 ,  4.91,  4.92,  4.93,  4.94,
-       4.95,  4.96,  4.97,  4.98,  4.99,  5.  ,  5.01,  5.02,  5.03,
-       5.04,  5.05,  5.06,  5.07,  5.08,  5.09,  5.1 ,  5.11,  5.12,
-       5.13,  5.14,  5.15,  5.16,  5.17,  5.18,  5.19,  5.2 ,  5.21,
-       5.22,  5.23,  5.24,  5.25,  5.26,  5.27,  5.28,  5.29,  5.3 ,
-       5.31,  5.32,  5.33,  5.34,  5.35,  5.36,  5.37,  5.38,  5.39,
-       5.4 ,  5.41,  5.42,  5.43,  5.44,  5.45,  5.46,  5.47,  5.48,
-       5.49,  5.5 ,  5.51,  5.52,  5.53,  5.54,  5.55,  5.56,  5.57,
-       5.58,  5.59,  5.6 ,  5.61,  5.62,  5.63,  5.64,  5.65,  5.66,
-       5.67,  5.68,  5.69,  5.7 ,  5.71,  5.72,  5.73,  5.74,  5.75,
-       5.76,  5.77,  5.78,  5.79,  5.8 ,  5.81,  5.82,  5.83,  5.84,
-       5.85,  5.86,  5.87,  5.88,  5.89,  5.9 ,  5.91,  5.92,  5.93,
-       5.94,  5.95,  5.96,  5.97,  5.98,  5.99,  6.  ,  6.01,  6.02,
-       6.03,  6.04,  6.05,  6.06,  6.07,  6.08,  6.09,  6.1 ,  6.11,
-       6.12,  6.13,  6.14,  6.15,  6.16,  6.17,  6.18,  6.19,  6.2 ,
-       6.21,  6.22,  6.23,  6.24,  6.25,  6.26,  6.27,  6.28,  6.29,
-       6.3 ,  6.31,  6.32,  6.33,  6.34,  6.35,  6.36,  6.37,  6.38,
-       6.39,  6.4 ,  6.41,  6.42,  6.43,  6.44,  6.45,  6.46,  6.47,
-       6.48,  6.49,  6.5 ,  6.51,  6.52,  6.53,  6.54,  6.55,  6.56,
-       6.57,  6.58,  6.59,  6.6 ,  6.61,  6.62,  6.63,  6.64,  6.65,
-       6.66,  6.67,  6.68,  6.69,  6.7 ,  6.71,  6.72,  6.73,  6.74,
-       6.75,  6.76,  6.77,  6.78,  6.79,  6.8 ,  6.81,  6.82,  6.83,
-       6.84,  6.85,  6.86,  6.87,  6.88,  6.89,  6.9 ,  6.91,  6.92,
-       6.93,  6.94,  6.95,  6.96,  6.97,  6.98,  6.99,  7.
-},
-{
-       0.      ,  0.      ,  0.      ,  0.      ,  0.      ,  0.      ,
-       0.      ,  0.      ,  0.      ,  0.      ,  0.      ,  0.      ,
-       0.      ,  0.      ,  0.      ,  0.      ,  0.      ,  0.      ,
-       0.      ,  0.      ,  0.      ,  0.      ,  0.      ,  0.      ,
-       0.      ,  0.      ,  0.000001,  0.000001,  0.000001,  0.000001,
-       0.000002,  0.000002,  0.000003,  0.000003,  0.000004,  0.000005,
-       0.000006,  0.000007,  0.000008,  0.00001 ,  0.000012,  0.000014,
-       0.000016,  0.000019,  0.000023,  0.000026,  0.000031,  0.000035,
-       0.000041,  0.000047,  0.000054,  0.000062,  0.00007 ,  0.00008 ,
-       0.000091,  0.000103,  0.000116,  0.000131,  0.000147,  0.000165,
-       0.000185,  0.000207,  0.000231,  0.000257,  0.000285,  0.000316,
-       0.00035 ,  0.000387,  0.000427,  0.000471,  0.000518,  0.000569,
-       0.000624,  0.000683,  0.000747,  0.000816,  0.00089 ,  0.00097 ,
-       0.001055,  0.001147,  0.001245,  0.001349,  0.001461,  0.00158 ,
-       0.001708,  0.001843,  0.001987,  0.002141,  0.002303,  0.002476,
-       0.002659,  0.002854,  0.003059,  0.003276,  0.003506,  0.003748,
-       0.004004,  0.004274,  0.004558,  0.004857,  0.005171,  0.005502,
-       0.00585 ,  0.006215,  0.006597,  0.006999,  0.007419,  0.007859,
-       0.00832 ,  0.008802,  0.009305,  0.009831,  0.01038 ,  0.010953,
-       0.01155 ,  0.012172,  0.01282 ,  0.013495,  0.014197,  0.014927,
-       0.015686,  0.016473,  0.017291,  0.01814 ,  0.019021,  0.019933,
-       0.020879,  0.021858,  0.022872,  0.023921,  0.025006,  0.026127,
-       0.027285,  0.028482,  0.029717,  0.030992,  0.032306,  0.033662,
-       0.035059,  0.036497,  0.037979,  0.039504,  0.041073,  0.042687,
-       0.044345,  0.04605 ,  0.047801,  0.049599,  0.051445,  0.053339,
-       0.055282,  0.057273,  0.059315,  0.061406,  0.063548,  0.065742,
-       0.067986,  0.070283,  0.072632,  0.075034,  0.077488,  0.079996,
-       0.082558,  0.085174,  0.087843,  0.090568,  0.093346,  0.09618 ,
-       0.099069,  0.102013,  0.105012,  0.108066,  0.111176,  0.114342,
-       0.117563,  0.120839,  0.124171,  0.127558,  0.131001,  0.134499,
-       0.138052,  0.141659,  0.145322,  0.149039,  0.15281 ,  0.156635,
-       0.160514,  0.164446,  0.168431,  0.172469,  0.176559,  0.180701,
-       0.184894,  0.189138,  0.193432,  0.197776,  0.202169,  0.206611,
-       0.211101,  0.215639,  0.220223,  0.224853,  0.229528,  0.234248,
-       0.239012,  0.24382 ,  0.248669,  0.25356 ,  0.258492,  0.263464,
-       0.268474,  0.273523,  0.278608,  0.283731,  0.288888,  0.29408 ,
-       0.299305,  0.304562,  0.309851,  0.31517 ,  0.320519,  0.325895,
-       0.331299,  0.336729,  0.342185,  0.347664,  0.353166,  0.35869 ,
-       0.364234,  0.369798,  0.375381,  0.38098 ,  0.386596,  0.392227,
-       0.397871,  0.403529,  0.409197,  0.414876,  0.420565,  0.426261,
-       0.431964,  0.437673,  0.443387,  0.449103,  0.454822,  0.460543,
-       0.466263,  0.471981,  0.477698,  0.483411,  0.48912 ,  0.494822,
-       0.500518,  0.506206,  0.511886,  0.517554,  0.523212,  0.528858,
-       0.53449 ,  0.540108,  0.545711,  0.551297,  0.556866,  0.562417,
-       0.567948,  0.573459,  0.578949,  0.584417,  0.589861,  0.595282,
-       0.600677,  0.606048,  0.611391,  0.616707,  0.621995,  0.627254,
-       0.632483,  0.637681,  0.642848,  0.647984,  0.653086,  0.658155,
-       0.66319 ,  0.66819 ,  0.673155,  0.678084,  0.682976,  0.687831,
-       0.692649,  0.697428,  0.702168,  0.70687 ,  0.711531,  0.716153,
-       0.720733,  0.725273,  0.729772,  0.734228,  0.738643,  0.743015,
-       0.747344,  0.75163 ,  0.755873,  0.760072,  0.764227,  0.768339,
-       0.772406,  0.776428,  0.780406,  0.784339,  0.788228,  0.792071,
-       0.795869,  0.799622,  0.80333 ,  0.806992,  0.810609,  0.814181,
-       0.817707,  0.821188,  0.824624,  0.828015,  0.83136 ,  0.83466 ,
-       0.837916,  0.841126,  0.844292,  0.847413,  0.85049 ,  0.853522,
-       0.85651 ,  0.859455,  0.862355,  0.865212,  0.868026,  0.870796,
-       0.873524,  0.876209,  0.878852,  0.881452,  0.884011,  0.886528,
-       0.889005,  0.89144 ,  0.893834,  0.896189,  0.898503,  0.900778,
-       0.903014,  0.90521 ,  0.907369,  0.909488,  0.911571,  0.913615,
-       0.915623,  0.917594,  0.919528,  0.921427,  0.92329 ,  0.925118,
-       0.926911,  0.92867 ,  0.930395,  0.932086,  0.933745,  0.93537 ,
-       0.936963,  0.938525,  0.940055,  0.941554,  0.943022,  0.94446 ,
-       0.945869,  0.947248,  0.948598,  0.949919,  0.951213,  0.952478,
-       0.953717,  0.954928,  0.956113,  0.957273,  0.958406,  0.959514,
-       0.960598,  0.961657,  0.962692,  0.963703,  0.964692,  0.965657,
-       0.9666  ,  0.967521,  0.968421,  0.969299,  0.970156,  0.970993,
-       0.97181 ,  0.972607,  0.973385,  0.974144,  0.974884,  0.975605,
-       0.976309,  0.976996,  0.977665,  0.978317,  0.978953,  0.979572,
-       0.980176,  0.980764,  0.981337,  0.981895,  0.982438,  0.982967,
-       0.983482,  0.983984,  0.984472,  0.984947,  0.985409,  0.985858,
-       0.986296,  0.986721,  0.987135,  0.987537,  0.987929,  0.988309,
-       0.988678,  0.989038,  0.989387,  0.989726,  0.990056,  0.990376,
-       0.990687,  0.990989,  0.991282,  0.991566,  0.991843,  0.992111,
-       0.992371,  0.992624,  0.992869,  0.993106,  0.993337,  0.99356 ,
-       0.993777,  0.993988,  0.994191,  0.994389,  0.99458 ,  0.994766,
-       0.994946,  0.99512 ,  0.995289,  0.995452,  0.99561 ,  0.995764,
-       0.995912,  0.996056,  0.996195,  0.996329,  0.99646 ,  0.996586,
-       0.996708,  0.996825,  0.996939,  0.99705 ,  0.997156,  0.99726 ,
-       0.997359,  0.997456,  0.997549,  0.997639,  0.997726,  0.99781 ,
-       0.997891,  0.997969,  0.998045,  0.998118,  0.998189,  0.998257,
-       0.998323,  0.998386,  0.998447,  0.998506,  0.998563,  0.998618,
-       0.998671,  0.998723,  0.998772,  0.998819,  0.998865,  0.998909,
-       0.998952,  0.998993,  0.999033,  0.999071,  0.999107,  0.999143,
-       0.999177,  0.99921 ,  0.999241,  0.999272,  0.999301,  0.999329,
-       0.999356,  0.999382,  0.999407,  0.999431,  0.999455,  0.999477,
-       0.999498,  0.999519,  0.999539,  0.999558,  0.999576,  0.999594,
-       0.999611,  0.999627,  0.999643,  0.999658,  0.999672,  0.999686,
-       0.999699,  0.999712,  0.999724,  0.999736,  0.999747,  0.999758,
-       0.999769,  0.999779,  0.999788,  0.999797,  0.999806,  0.999815,
-       0.999823,  0.99983 ,  0.999838,  0.999845,  0.999852,  0.999858,
-       0.999865,  0.999871,  0.999876,  0.999882,  0.999887,  0.999892,
-       0.999897,  0.999902,  0.999906,  0.99991 ,  0.999915,  0.999918,
-       0.999922,  0.999926,  0.999929,  0.999932,  0.999936,  0.999938,
-       0.999941,  0.999944,  0.999947,  0.999949,  0.999952,  0.999954,
-       0.999956,  0.999958,  0.99996 ,  0.999962,  0.999964,  0.999965,
-       0.999967,  0.999969,  0.99997 ,  0.999972,  0.999973,  0.999974,
-       0.999975,  0.999977,  0.999978,  0.999979,  0.99998 ,  0.999981,
-       0.999982,  0.999983,  0.999984,  0.999984,  0.999985,  0.999986,
-       0.999987,  0.999987,  0.999988,  0.999988,  0.999989,  0.99999 ,
-       0.99999 ,  0.999991,  0.999991,  0.999992,  0.999992,  0.999992,
-       0.999993,  0.999993,  0.999993,  0.999994,  0.999994,  0.999994,
-       0.999995,  0.999995,  0.999995,  0.999995,  0.999996,  0.999996,
-       0.999996,  0.999996,  0.999997,  0.999997,  0.999997,  0.999997,
-       0.999997,  0.999997,  0.999998,  0.999998,  0.999998,  0.999998,
-       0.999998,  0.999998,  0.999998,  0.999998,  0.999998,  0.999998,
-       0.999999,  0.999999,  0.999999,  0.999999,  0.999999,  0.999999,
-       0.999999,  0.999999,  0.999999,  0.999999,  0.999999,  0.999999,
-       0.999999,  0.999999,  0.999999,  0.999999,  0.999999,  0.999999,
-       0.999999,  1.      ,  1.      ,  1.      ,  1.      ,  1.      ,
-       1.      ,  1.      ,  1.      ,  1.      ,  1.      ,  1.      ,
-       1.      ,  1.      ,  1.      ,  1.      ,  1.      ,  1.      ,
-       1.      ,  1.      ,  1.      ,  1.      ,  1.      ,  1.      ,
-       1.      ,  1.      ,  1.      ,  1.      ,  1.      ,  1.      ,
-       1.      ,  1.      ,  1.      ,  1.      ,  1.      ,  1.      ,
-       1.      ,  1.      ,  1.      ,  1.      ,  1.      ,  1.      ,
-       1.      ,  1.      ,  1.      ,  1.      ,  1.      ,  1.      ,
-       1.      ,  1.      ,  1.      ,  1.      ,  1.
-} // this is chi cdf for 7 degrees of freedom (because we have 7 features)
-);
-
-const std::vector<ctx::num_t> ctx::VisitCateger::__featuresMean(
-{
-       344.542975696503,
-       894.178423236515,
-       868.300533491405,
-       2.820391227030,
-       0.511747454052,
-       0.348669092762,
-       0.139583453187
-});
-
-const std::vector<ctx::num_t> ctx::VisitCateger::__featuresStd(
-{
-       416.061437196941,
-       301.401812101781,
-       300.774466281622,
-       1.916233112930,
-       0.314254748759,
-       0.360707461975,
-       0.109386661911
-});
-
-ctx::TimeFeatures ctx::VisitCateger::__timeFeatures(const time_t &time)
-{
-       struct tm timeinfo;
-       struct tm *result;
-       tzset();
-       result = localtime_r(&time, &timeinfo);
-       if (result == NULL)
-               return {0, 0, 0, false};
-       int minutesSinceMidnight = 60 * timeinfo.tm_hour + timeinfo.tm_min;
-       int weekday = (timeinfo.tm_wday + 6) % 7; // Monday is 0, Sunday is 6
-       bool weekend = weekday > 4;
-       int minutesSinceBeginingOfTheWeek = 24 * 60 * weekday + minutesSinceMidnight;
-       return {
-               minutesSinceMidnight,
-               minutesSinceBeginingOfTheWeek,
-               weekday,
-               weekend
-       };
-}
-
-int ctx::VisitCateger::__weeksScope(const TimeFeatures &startF, const Interval &interval)
-{
-       int durationMinutes = (interval.end - interval.start) / 60;
-       int scopeMinutes = startF.minutesSinceBeginingOfTheWeek + durationMinutes;
-       int weeksScope = scopeMinutes / __MINUTES_IN_WEEK;
-       if (scopeMinutes % __MINUTES_IN_WEEK > 0)
-               weeksScope++;
-       return weeksScope;
-}
-
-ctx::num_t ctx::VisitCateger::__sum(const std::vector<num_t> model, const size_t &from, const size_t &to)
-{
-       size_t toSecure = to;
-       if (to >= model.size()) {
-               _E("'to' exceeds model size");
-               toSecure = model.size() - 1;
-       }
-       if (from > to)
-               _E("'from' greater than 'to'");
-       num_t result = 0.0;
-       for (size_t i = from; i <= toSecure; i++) {
-               result += model[i];
-       }
-       return result;
-}
-
-ctx::num_t ctx::VisitCateger::__weekModelMeanValue(PlaceCategId categ, const Interval &interval,
-               const TimeFeatures &startF, const TimeFeatures &endF)
-{
-       num_t ret = 0.0;
-       int minutes = 0;
-       int ws = __weeksScope(startF, interval);
-       for (int week = 1; week <= ws; week++) {
-               size_t startIndex = (week == 1)
-                               ? static_cast<size_t>(startF.minutesSinceBeginingOfTheWeek)
-                               : 0;
-               size_t endIndex = (week == ws)
-                               ? static_cast<size_t>(endF.minutesSinceBeginingOfTheWeek)
-                               : static_cast<size_t>(__MINUTES_IN_WEEK - 1);
-               ret += __sum(prob_features::weekModel[categ], startIndex, endIndex);
-               minutes += endIndex - startIndex + 1;
-       }
-       if (minutes > 0)
-               return ret / minutes;
-       return ret;
-}
-
-ctx::Categs ctx::VisitCateger::__weekModelFeatures(const Interval &interval, const TimeFeatures &startF, const TimeFeatures &endF)
-{
-       ctx::Categs categs;
-       for (const auto &item : prob_features::weekModel) {
-               categs[item.first] = __weekModelMeanValue(item.first, interval, startF, endF);
-       }
-       _D("categs: H=%.12f, W=%.12f, O=%.12f",
-                       categs[PLACE_CATEG_ID_HOME],
-                       categs[PLACE_CATEG_ID_WORK],
-                       categs[PLACE_CATEG_ID_OTHER]);
-       return categs;
-}
-
-ctx::IntervalFeatures ctx::VisitCateger::__intervalFeatures(const Interval &interval)
-{
-       num_t durationMinutes = 1.0 * (interval.end - interval.start) / 60;
-       TimeFeatures startFeatures = __timeFeatures(interval.start);
-       TimeFeatures endFeatures = __timeFeatures(interval.end);
-       Categs weekFeatures = __weekModelFeatures(interval, startFeatures, endFeatures);
-       return {
-               durationMinutes,
-               (num_t) startFeatures.minutesSinceMidnight,
-               (num_t) endFeatures.minutesSinceMidnight,
-               (num_t) startFeatures.weekday,
-               weekFeatures[PLACE_CATEG_ID_HOME],
-               weekFeatures[PLACE_CATEG_ID_WORK],
-               weekFeatures[PLACE_CATEG_ID_OTHER]
-       };
-}
-
-void ctx::VisitCateger::__normalize(std::vector<ctx::num_t> &features)
-{
-       size_t n = features.size();
-       for (size_t i = 0; i < n; i++) {
-               features[i] -= __featuresMean[i];
-               features[i] /= __featuresStd[i];
-       }
-}
-
-void ctx::VisitCateger::categorize(ctx::Visit &visit)
-{
-       _D("");
-       IntervalFeatures features = __intervalFeatures(visit.interval);
-       __normalize(features);
-
-       for (auto &modelPair : __models) {
-               int categId = modelPair.first;
-               MahalModel model = modelPair.second;
-
-               num_t distance = model.distance(features);
-               num_t probability = 1 - __chiApprox.value(distance); // sth like probability but not exactly
-               visit.categs[categId] = probability;
-       }
-}
-
-extern "C" SO_EXPORT void categorize(ctx::Visit &visit)
-{
-       _D("");
-       ctx::VisitCateger::categorize(visit);
-}
diff --git a/src/my-place/visit-categer/VisitCateger.h b/src/my-place/visit-categer/VisitCateger.h
deleted file mode 100644 (file)
index 3edfb93..0000000
+++ /dev/null
@@ -1,94 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef _CONTEXT_PLACE_RECOGNITION_VISIT_CATEGER_H_
-#define _CONTEXT_PLACE_RECOGNITION_VISIT_CATEGER_H_
-
-#include <UserPlacesTypes.h>
-#include "Mahal.h"
-#include "PiecewiseLin.h"
-#include <map>
-#include <Types.h>
-
-namespace ctx {
-
-       struct TimeFeatures {
-           int minutesSinceMidnight;
-           int minutesSinceBeginingOfTheWeek;
-           int weekday;
-           bool weekend;
-       };
-
-       typedef std::vector<num_t> IntervalFeatures;
-
-       /*
-        * visit categorizer class
-        */
-       class VisitCateger {
-
-       private:
-               static const int __MINUTES_IN_WEEK = 60 * 24 * 7;
-               static const std::map<int, MahalModel> __models;
-               static const std::vector<num_t> __featuresMean;
-               static const std::vector<num_t> __featuresStd;
-               static num_t __sum(const std::vector<num_t> model, const size_t &from, const size_t &to);
-               static num_t __weekModelMeanValue(PlaceCategId categ, const Interval &interval,
-                               const TimeFeatures &startF, const TimeFeatures &endF);
-               static void __normalize(std::vector<num_t> &features);
-               static PiecewiseLin __chiApprox; // tabled chi function approximator
-
-               /**
-                * Function interpret time in timestamp input argument,
-                *
-                * @param  time          timestamp
-                * @return TimeFeatures  structure with interpretations of timestamp
-                */
-               static TimeFeatures __timeFeatures(const time_t &time);
-
-               static int __weeksScope(const TimeFeatures &startF, const Interval &interval);
-
-               /**
-                * Function interpret time interval input argument and calculates scores
-                * that argument interval is home, work or other based on whole week model.
-                *
-                * @param  interval  time interval
-                * @param  startF        start time features
-                * @param  endF      end time features
-                * @return Categs    score that argument interval is home, work or other
-                */
-               static Categs __weekModelFeatures(const Interval &interval, const TimeFeatures &startF,
-                               const TimeFeatures &endF);
-
-               /**
-                * Function interpret time interval input argument,
-                *
-                * @param  interval          time interval
-                * @return IntervalFeatures  vector with interpretations of input time interval
-                */
-               static IntervalFeatures __intervalFeatures(const Interval &interval);
-
-       public:
-
-               /**
-                * Function categorize visit based on visits time interval and fill its categories values.
-                */
-               static void categorize(ctx::Visit &visit);
-
-       };      /* class VisitCateger */
-
-}      /* namespace ctx */
-
-#endif /* End of _CONTEXT_PLACE_RECOGNITION_VISIT_CATEGER_H_ */
diff --git a/src/my-place/visit-detector/LocationListenerIface.h b/src/my-place/visit-detector/LocationListenerIface.h
deleted file mode 100644 (file)
index 7d2aef2..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef _CONTEXT_PLACE_RECOGNITION_LOCATION_LISTENER_IFACE_H_
-#define _CONTEXT_PLACE_RECOGNITION_LOCATION_LISTENER_IFACE_H_
-
-#include <UserPlacesTypes.h>
-
-namespace ctx {
-
-       class ILocationListener {
-
-       public:
-               virtual ~ILocationListener() {};
-               virtual void onNewLocation(LocationEvent location) = 0;
-
-       };      /* class ILocationListener */
-
-}      /* namespace ctx */
-
-#endif /* End of _CONTEXT_PLACE_RECOGNITION_LOCATION_LISTENER_IFACE_H_ */
diff --git a/src/my-place/visit-detector/LocationLogger.cpp b/src/my-place/visit-detector/LocationLogger.cpp
deleted file mode 100644 (file)
index cf4ce95..0000000
+++ /dev/null
@@ -1,578 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <sstream>
-#include <Types.h>
-#include <Json.h>
-#include <DatabaseManager.h>
-#include <UserPlacesTypes.h>
-#include <UserPlacesParams.h>
-#include <DebugUtils.h>
-#include "LocationLogger.h"
-
-#define __LOCATION_CREATE_TABLE_COLUMNS \
-       LOCATION_COLUMN_LATITUDE " REAL NOT NULL, "\
-       LOCATION_COLUMN_LONGITUDE " REAL NOT NULL, "\
-       LOCATION_COLUMN_ACCURACY " REAL, "\
-       LOCATION_COLUMN_TIMESTAMP " timestamp NOT NULL "
-
-#define __LOCATION_ERROR_LOG(error) { \
-       if (error != LOCATIONS_ERROR_NONE) { \
-               _E("ERROR == %s", __locationError2Str(error)); \
-       } else { \
-               _D("SUCCESS"); \
-       } \
-}
-
-void ctx::LocationLogger::__locationServiceStateChangedCb(location_service_state_e state, void *userData)
-{
-       ctx::LocationLogger* locationLogger = (ctx::LocationLogger *)userData;
-       locationLogger->__locationServiceState = state;
-       if (state == LOCATIONS_SERVICE_ENABLED) {
-               _D("LOCATIONS_SERVICE_ENABLED");
-               switch (locationLogger->__timerPurpose) {
-               case LOCATION_LOGGER_WAITING_FOR_SERVICE_START:
-                       _D("Waiting for location service start FINISHED");
-                       locationLogger->__timerStop();
-                       locationLogger->__locationRequest();
-                       break;
-               case LOCATION_LOGGER_WAITING_FOR_ACTIVE_REQUEST:
-               case LOCATION_LOGGER_WAITING_FOR_LOCATION_METHOD_SETTING_ON:
-               case LOCATION_LOGGER_WAITING_FOR_ACTIVE_INTERVAL:
-               case LOCATION_LOGGER_WAITING_FOR_PASSIVE_INTERVAL:
-               default:
-                       // Do nothing
-                       break;
-               }
-       } else {
-               _D("LOCATIONS_SERVICE_DISABLED");
-//             locationLogger->__timerStop();
-       }
-}
-
-void ctx::LocationLogger::__locationSettingChangedCb(location_method_e method, bool enable, void *userData)
-{
-       ctx::LocationLogger* locationLogger = (ctx::LocationLogger *)userData;
-       locationLogger->__locationMethodState = enable;
-       if (method == locationLogger->__locationMethod) {
-               if (enable) {
-                       _D("Location method settings ON");
-                       switch (locationLogger->__timerPurpose) {
-                       case LOCATION_LOGGER_WAITING_FOR_LOCATION_METHOD_SETTING_ON:
-                               _D("Waiting for location method settings on FINISHED");
-                               if (locationLogger->__locationServiceState == LOCATIONS_SERVICE_ENABLED) {
-                                       locationLogger->__timerStop();
-                                       locationLogger->__locationRequest();
-                               } else {
-                                       locationLogger->__locationManagerStart();
-                               }
-                               break;
-                       case LOCATION_LOGGER_WAITING_FOR_SERVICE_START:
-                       case LOCATION_LOGGER_WAITING_FOR_ACTIVE_REQUEST:
-                       case LOCATION_LOGGER_WAITING_FOR_ACTIVE_INTERVAL:
-                       case LOCATION_LOGGER_WAITING_FOR_PASSIVE_INTERVAL:
-                       default:
-                               // Do nothing
-                               break;
-                       }
-               } else {
-                       _D("Location method settings OFF");
-//                     locationLogger->__timerStop();
-               }
-       }
-}
-
-void ctx::LocationLogger::__positionUpdatedCb(double latitude, double longitude,
-               double altitude, time_t timestamp, void *userData)
-{
-       _D("");
-       ctx::LocationLogger* locationLogger = (ctx::LocationLogger *)userData;
-       double horizontal = locationLogger->__locationManagerGetHorizontalAccuracy();
-       ctx::LocationEvent location(latitude, longitude, horizontal, timestamp);
-       locationLogger->__broadcast(location);
-       locationLogger->__onActiveRequestSucceeded();
-}
-
-void ctx::LocationLogger::__locationUpdatedCb(location_error_e error, double latitude, double longitude,
-               double altitude, time_t timestamp, double speed, double direction, double climb, void *userData)
-{
-       _D("");
-       __positionUpdatedCb(latitude, longitude, altitude, timestamp, userData);
-}
-
-const char* ctx::LocationLogger::__locationError2Str(int error)
-{
-       switch (error) {
-       case LOCATIONS_ERROR_NONE:
-               return "LOCATIONS_ERROR_NONE";
-       case LOCATIONS_ERROR_OUT_OF_MEMORY:
-               return "LOCATIONS_ERROR_OUT_OF_MEMORY";
-       case LOCATIONS_ERROR_INVALID_PARAMETER:
-               return "LOCATIONS_ERROR_INVALID_PARAMETER";
-       case LOCATIONS_ERROR_ACCESSIBILITY_NOT_ALLOWED:
-               return "LOCATIONS_ERROR_ACCESSIBILITY_NOT_ALLOWED";
-       case LOCATIONS_ERROR_NOT_SUPPORTED:
-               return "LOCATIONS_ERROR_NOT_SUPPORTED";
-       case LOCATIONS_ERROR_INCORRECT_METHOD:
-               return "LOCATIONS_ERROR_INCORRECT_METHOD";
-       case LOCATIONS_ERROR_NETWORK_FAILED:
-               return "LOCATIONS_ERROR_NETWORK_FAILED";
-       case LOCATIONS_ERROR_SERVICE_NOT_AVAILABLE:
-               return "LOCATIONS_ERROR_SERVICE_NOT_AVAILABLE";
-       case LOCATIONS_ERROR_GPS_SETTING_OFF:
-               return "LOCATIONS_ERROR_GPS_SETTING_OFF";
-       case LOCATIONS_ERROR_SECURITY_RESTRICTED:
-               return "LOCATIONS_ERROR_SECURITY_RESTRICTED";
-       default:
-               return "unknown location error code";
-       }
-}
-
-
-void ctx::LocationLogger::__log(location_accessibility_state_e state)
-{
-       switch (state) {
-       case LOCATIONS_ACCESS_STATE_NONE : // Access state is not determined
-               _D("LOCATIONS_ACCESS_STATE_NONE ");
-               break;
-       case LOCATIONS_ACCESS_STATE_DENIED: // Access denied
-               _D("LOCATIONS_ACCESS_STATE_DENIED");
-               break;
-       case LOCATIONS_ACCESS_STATE_ALLOWED: // Access authorized
-               _D("LOCATIONS_ACCESS_STATE_ALLOWED");
-               break;
-       default:
-               break;
-       }
-}
-
-int ctx::LocationLogger::__dbCreateTable()
-{
-       DatabaseManager dbManager;
-       bool ret = dbManager.createTableSync(LOCATION_TABLE, __LOCATION_CREATE_TABLE_COLUMNS);
-       _D("%s -> Table Creation Request", ret ? "SUCCESS" : "FAIL");
-       return 0;
-}
-
-int ctx::LocationLogger::__dbInsertLog(LocationEvent locationEvent)
-{
-       Json data;
-       data.set(NULL, LOCATION_COLUMN_LATITUDE, locationEvent.coordinates.latitude);
-       data.set(NULL, LOCATION_COLUMN_LONGITUDE, locationEvent.coordinates.longitude);
-       data.set(NULL, LOCATION_COLUMN_ACCURACY, locationEvent.coordinates.accuracy);
-       data.set(NULL, LOCATION_COLUMN_TIMESTAMP, static_cast<int>(locationEvent.timestamp));
-
-       DatabaseManager dbManager;
-       int64_t rowId;
-       bool ret = dbManager.insertSync(LOCATION_TABLE, data, &rowId);
-       _D("%s -> DB: location table insert result", ret ? "SUCCESS" : "FAIL");
-       return ret;
-}
-
-ctx::LocationLogger::LocationLogger(ILocationListener *listener) :
-       __listener(listener),
-       __activeRequestAttempts(0),
-       __activeAttempts(0),
-       __allAttempts(0),
-       __locationCount(0),
-       __activeRequestSucceeded(false),
-       __activeLocationSucceeded(false),
-       __timerId(-1),
-       __timerTimestamp(0),
-       __timerPurpose(LOCATION_LOGGER_WAITING_FOR_PASSIVE_INTERVAL),
-       __locationServiceState(LOCATIONS_SERVICE_DISABLED),
-       __locationMethod(LOCATION_LOGGER_METHOD),
-       __locationMethodState(false)
-{
-       _D("CONSTRUCTOR");
-
-       __locationManagerCreate();
-
-       if (LOCATION_LOGGER_DATABASE)
-               __dbCreateTable();
-
-       __locationManagerSetServiceStateChangedCb();
-       __locationManagerSetSettingChangedCb();
-       __locationMethodState = __locationManagerIsEnabledMethod(__locationMethod);
-}
-
-ctx::LocationLogger::~LocationLogger()
-{
-       _D("DESTRUCTOR");
-       __stopLogging();
-       __locationManagerUnsetServiceStateChangedCb();
-       __locationManagerUnsetSettingChangedCb();
-       __locationManagerDestroy();
-}
-
-void ctx::LocationLogger::__locationManagerCreate()
-{
-       int ret = location_manager_create(__locationMethod, &__locationManager);
-       __LOCATION_ERROR_LOG(ret);
-}
-
-void ctx::LocationLogger::__locationManagerDestroy()
-{
-       int ret = location_manager_destroy(__locationManager);
-       __LOCATION_ERROR_LOG(ret);
-}
-
-void ctx::LocationLogger::__locationManagerSetServiceStateChangedCb()
-{
-       int ret = location_manager_set_service_state_changed_cb(__locationManager, __locationServiceStateChangedCb, this);
-       __LOCATION_ERROR_LOG(ret);
-}
-
-void ctx::LocationLogger::__locationManagerUnsetServiceStateChangedCb()
-{
-       int ret = location_manager_unset_service_state_changed_cb(__locationManager);
-       __LOCATION_ERROR_LOG(ret);
-}
-
-void ctx::LocationLogger::__locationManagerStart()
-{
-       int ret = location_manager_start(__locationManager);
-       __LOCATION_ERROR_LOG(ret);
-       __startServiceTimerStart();
-}
-
-void ctx::LocationLogger::__locationManagerStop()
-{
-       int ret = location_manager_stop(__locationManager);
-       __LOCATION_ERROR_LOG(ret);
-}
-
-double ctx::LocationLogger::__locationManagerGetHorizontalAccuracy()
-{
-       location_accuracy_level_e accuracyLevel;
-       double horizontal, vertical;
-       int ret = location_manager_get_accuracy(__locationManager, &accuracyLevel, &horizontal, &vertical);
-       __LOCATION_ERROR_LOG(ret);
-       return horizontal;
-}
-
-location_accessibility_state_e ctx::LocationLogger::__locationManagerGetAccessibilityState()
-{
-       location_accessibility_state_e state;
-       int ret = location_manager_get_accessibility_state(&state);
-       __LOCATION_ERROR_LOG(ret);
-       return state;
-}
-
-void ctx::LocationLogger::__locationManagerSetSettingChangedCb()
-{
-       int ret = location_manager_set_setting_changed_cb(__locationMethod, __locationSettingChangedCb, this);
-       __LOCATION_ERROR_LOG(ret);
-}
-
-void ctx::LocationLogger::__locationManagerUnsetSettingChangedCb()
-{
-       int ret = location_manager_unset_setting_changed_cb(__locationMethod);
-       __LOCATION_ERROR_LOG(ret);
-}
-
-bool ctx::LocationLogger::__locationManagerRequestSingleLocation()
-{
-       int ret = location_manager_request_single_location(__locationManager,
-                       LOCATION_LOGGER_ACTIVE_REQUEST_TIMEOUT_SECONDS, __locationUpdatedCb, this);
-       _D("%s (seconds=%d) ----- ATTEMPTS: REQ[%d/%d], ACT[%d/%d], ALL[%d/%d]; ----- LOCATIONS:[%d/%d]",
-                       ret == LOCATIONS_ERROR_NONE ? "SUCCESS" : "ERROR",
-                       LOCATION_LOGGER_ACTIVE_REQUEST_TIMEOUT_SECONDS,
-                       __activeRequestAttempts,
-                       LOCATION_LOGGER_MAX_ACTIVE_REQUEST_ATTEMPTS,
-                       __activeAttempts,
-                       LOCATION_LOGGER_MAX_ACTIVE_LOCATION_ATTEMPTS,
-                       __allAttempts,
-                       LOCATION_LOGGER_MAX_LOCATION_ATTEMPTS,
-                       __locationCount,
-                       LOCATION_LOGGER_MAX_LOCATION_COUNT);
-       __LOCATION_ERROR_LOG(ret);
-       __activeRequestAttempts++;
-       __activeAttempts++;
-       __allAttempts++;
-       if (ret == LOCATIONS_ERROR_NONE) {
-               __activeRequestTimerStart();
-               return true;
-       } else {
-               return false;
-       }
-}
-
-bool ctx::LocationLogger::__locationManagerGetLocation()
-{
-       double altitude, latitude, longitude, climb, direction, speed, horizontal, vertical;
-       location_accuracy_level_e level;
-       time_t timestamp;
-       int ret = location_manager_get_location(__locationManager, &altitude, &latitude, &longitude,
-                       &climb, &direction, &speed, &level, &horizontal, &vertical, &timestamp);
-       _D("%s ----- ATTEMPTS: REQ[%d/%d], ACT[%d/%d], ALL[%d/%d]; ----- LOCATIONS:[%d/%d]",
-                       ret == LOCATIONS_ERROR_NONE ? "SUCCESS" : "ERROR",
-                       __activeRequestAttempts,
-                       LOCATION_LOGGER_MAX_ACTIVE_REQUEST_ATTEMPTS,
-                       __activeAttempts,
-                       LOCATION_LOGGER_MAX_ACTIVE_LOCATION_ATTEMPTS,
-                       __allAttempts,
-                       LOCATION_LOGGER_MAX_LOCATION_ATTEMPTS,
-                       __locationCount,
-                       LOCATION_LOGGER_MAX_LOCATION_COUNT);
-       __LOCATION_ERROR_LOG(ret);
-       __activeAttempts++;
-       __allAttempts++;
-       if (ret == LOCATIONS_ERROR_NONE) {
-               ctx::LocationEvent location(latitude, longitude, horizontal, timestamp);
-               __broadcast(location);
-               __onActiveLocationSucceeded();
-               return true;
-       } else {
-               return false;
-       }
-}
-
-void ctx::LocationLogger::__locationManagerGetLastLocation()
-{
-       double altitude, latitude, longitude, climb, direction, speed, horizontal, vertical;
-       location_accuracy_level_e level;
-       time_t timestamp;
-       int ret = location_manager_get_last_location(__locationManager, &altitude, &latitude, &longitude,
-                       &climb, &direction, &speed, &level, &horizontal, &vertical, &timestamp);
-       _D("%s ----- ATTEMPTS: REQ[%d/%d], ACT[%d/%d], ALL[%d/%d]; ----- LOCATIONS:[%d/%d]",
-                       ret == LOCATIONS_ERROR_NONE ? "SUCCESS" : "ERROR",
-                       __activeRequestAttempts,
-                       LOCATION_LOGGER_MAX_ACTIVE_REQUEST_ATTEMPTS,
-                       __activeAttempts,
-                       LOCATION_LOGGER_MAX_ACTIVE_LOCATION_ATTEMPTS,
-                       __allAttempts,
-                       LOCATION_LOGGER_MAX_LOCATION_ATTEMPTS,
-                       __locationCount,
-                       LOCATION_LOGGER_MAX_LOCATION_COUNT);
-       __LOCATION_ERROR_LOG(ret);
-       __allAttempts++;
-       if (ret == LOCATIONS_ERROR_NONE) {
-               ctx::LocationEvent location(latitude, longitude, horizontal, timestamp);
-               __broadcast(location);
-       }
-}
-
-bool ctx::LocationLogger::__locationManagerIsEnabledMethod(location_method_e method)
-{
-       bool enable;
-       int ret = location_manager_is_enabled_method(method, &enable);
-       __LOCATION_ERROR_LOG(ret);
-       return enable;
-}
-
-bool ctx::LocationLogger::__checkGeneralLimits()
-{
-       return (__locationCount < LOCATION_LOGGER_MAX_LOCATION_COUNT
-                       && __allAttempts < LOCATION_LOGGER_MAX_LOCATION_ATTEMPTS);
-}
-
-bool ctx::LocationLogger::__checkActiveLimits()
-{
-       return (!__activeLocationSucceeded
-                       && __activeAttempts < LOCATION_LOGGER_MAX_ACTIVE_LOCATION_ATTEMPTS);
-}
-
-bool ctx::LocationLogger::__checkActiveRequestLimits()
-{
-       return (!__activeRequestSucceeded
-                       && __activeRequestAttempts < LOCATION_LOGGER_MAX_ACTIVE_REQUEST_ATTEMPTS);
-}
-
-void ctx::LocationLogger::__locationRequest()
-{
-       _D("");
-       bool requestSingleLocationRet = false;
-       bool getLocationRet = false;
-       if (__checkGeneralLimits() && __checkActiveLimits() && __checkActiveRequestLimits()) {
-               requestSingleLocationRet = __locationManagerRequestSingleLocation();
-       }
-       if (__checkGeneralLimits() && __checkActiveLimits() && !requestSingleLocationRet) {
-               getLocationRet = __locationManagerGetLocation();
-       }
-       if (__checkGeneralLimits() && !requestSingleLocationRet && !getLocationRet
-                       && __activeAttempts >= LOCATION_LOGGER_MAX_ACTIVE_LOCATION_ATTEMPTS) {
-               __locationManagerGetLastLocation();
-       }
-       if (!requestSingleLocationRet) {
-               __locationManagerStop();
-               __setNextTimer();
-       }
-}
-
-void ctx::LocationLogger::__setNextTimer()
-{
-       _D("ATTEMPTS: REQ[%d/%d], ACT[%d/%d], ALL[%d/%d]; ----- LOCATIONS:[%d/%d])",
-                       __activeRequestAttempts,
-                       LOCATION_LOGGER_MAX_ACTIVE_REQUEST_ATTEMPTS,
-                       __activeAttempts,
-                       LOCATION_LOGGER_MAX_ACTIVE_LOCATION_ATTEMPTS,
-                       __allAttempts,
-                       LOCATION_LOGGER_MAX_LOCATION_ATTEMPTS,
-                       __locationCount,
-                       LOCATION_LOGGER_MAX_LOCATION_COUNT);
-       if (__checkGeneralLimits()) {
-               if (__checkActiveLimits()) {
-                       __activeIntervalTimerStart();
-               } else {
-                       __passiveIntervalTimerStart();
-               }
-       }
-}
-
-void ctx::LocationLogger::__onActiveRequestSucceeded()
-{
-       _D("");
-       __locationManagerStop();
-       __activeRequestSucceeded = true;
-       __onActiveLocationSucceeded();
-}
-
-void ctx::LocationLogger::__onActiveLocationSucceeded()
-{
-       _D("");
-       __activeLocationSucceeded = true;
-}
-
-void ctx::LocationLogger::__broadcast(ctx::LocationEvent locationEvent)
-{
-       _D("");
-       __locationCount++;
-       if (__listener)
-               __listener->onNewLocation(locationEvent);
-       if (LOCATION_LOGGER_DATABASE)
-               __dbInsertLog(locationEvent);
-}
-
-bool ctx::LocationLogger::onTimerExpired(int id)
-{
-       time_t now = time(nullptr);
-       double seconds = difftime(now, __timerTimestamp);
-
-       switch (__timerPurpose) {
-       case LOCATION_LOGGER_WAITING_FOR_ACTIVE_REQUEST:
-               _D("Active request FAILED, timerId = %d[%d], from start = %.1fs", id, __timerId, seconds);
-               __locationManagerStop();
-               __setNextTimer();
-               return false;
-       case LOCATION_LOGGER_WAITING_FOR_SERVICE_START:
-               _D("Service start in timeout time FAILED, timerId = %d[%d], from start = %.1fs", id, __timerId, seconds);
-               // Waiting for service start FAILURE is also some kind of active request attempt
-               __activeRequestAttempts++;
-               __activeAttempts++;
-               __allAttempts++;
-               __locationManagerStop();
-               __setNextTimer();
-               return false;
-       case LOCATION_LOGGER_WAITING_FOR_LOCATION_METHOD_SETTING_ON:
-               _D("Still waiting for Location method settings on, timerId = %d[%d], from start = %.1fs", id, __timerId, seconds);
-               // Do nothing
-               return false;
-       case LOCATION_LOGGER_WAITING_FOR_ACTIVE_INTERVAL:
-               _D("Active interval time expired, timerId = %d[%d], from start = %.1fs", id, __timerId, seconds);
-               break;
-       case LOCATION_LOGGER_WAITING_FOR_PASSIVE_INTERVAL:
-               _D("Passive interval time expired, timerId = %d[%d], from start = %.1fs", id, __timerId, seconds);
-               break;
-       default:
-               _D("Do nothing, timerId = %d[%d], from start = %.1fs", id, __timerId, seconds);
-               return false;
-       }
-       if (__locationMethodState) {
-               __locationManagerStart();
-       } else {
-               __timerPurpose = LOCATION_LOGGER_WAITING_FOR_LOCATION_METHOD_SETTING_ON;
-               _D("LOCATION_LOGGER_WAITING_FOR_LOCATION_METHOD_SETTING_ON");
-       }
-       return false;
-}
-
-void ctx::LocationLogger::__activeRequestTimerStart()
-{
-       int minutes = LOCATION_LOGGER_ACTIVE_REQUEST_TIMEOUT_SECONDS / 60;
-       if (LOCATION_LOGGER_ACTIVE_REQUEST_TIMEOUT_SECONDS % 60)
-               minutes++;
-       __timerPurpose = LOCATION_LOGGER_WAITING_FOR_ACTIVE_REQUEST;
-       _D("LOCATION_LOGGER_WAITING_FOR_ACTIVE_REQUEST (minutes=%d)", minutes);
-       __timerStart(minutes);
-}
-
-void ctx::LocationLogger::__startServiceTimerStart()
-{
-       __timerPurpose = LOCATION_LOGGER_WAITING_FOR_SERVICE_START;
-       _D("LOCATION_LOGGER_WAITING_FOR_SERVICE_START");
-       __timerStart(LOCATION_LOGGER_SERVICE_START_TIMEOUT_MINUTES);
-}
-
-void ctx::LocationLogger::__activeIntervalTimerStart()
-{
-       __timerPurpose = LOCATION_LOGGER_WAITING_FOR_ACTIVE_INTERVAL;
-       _D("LOCATION_LOGGER_WAITING_FOR_ACTIVE_INTERVAL");
-       __timerStart(LOCATION_LOGGER_ACTIVE_INTERVAL_MINUTES);
-}
-
-void ctx::LocationLogger::__passiveIntervalTimerStart()
-{
-       __timerPurpose = LOCATION_LOGGER_WAITING_FOR_PASSIVE_INTERVAL;
-       _D("LOCATION_LOGGER_WAITING_FOR_PASSIVE_INTERVAL");
-       __timerStart(LOCATION_LOGGER_PASSIVE_INTERVAL_MINUTES);
-}
-
-void ctx::LocationLogger::__timerStart(time_t minutes)
-{
-       __timerTimestamp = time(nullptr);
-       __timerId = __timerManager.setFor(minutes, this);
-       _D("%s (minutes=%d) timerId = %d", __timerId >= 0 ? "SUCCESS" : "ERROR", minutes, __timerId);
-}
-
-void ctx::LocationLogger::__timerStop()
-{
-       _D("");
-       __timerManager.remove(__timerId);
-}
-
-void ctx::LocationLogger::__startLogging()
-{
-       _D("");
-       __activeRequestAttempts = 0;
-       __activeAttempts = 0;
-       __allAttempts = 0;
-       __locationCount = 0;
-       __activeRequestSucceeded = false;;
-       __activeLocationSucceeded = false;
-       __locationManagerStart();
-}
-
-void ctx::LocationLogger::__stopLogging()
-{
-       _D("");
-       __timerStop();
-       __locationManagerStop();
-}
-
-void ctx::LocationLogger::onVisitStart()
-{
-       _D("");
-       __startLogging();
-}
-
-void ctx::LocationLogger::onVisitEnd()
-{
-       _D("");
-       __stopLogging();
-}
-
-#undef __LOCATION_ERROR_LOG
diff --git a/src/my-place/visit-detector/LocationLogger.h b/src/my-place/visit-detector/LocationLogger.h
deleted file mode 100644 (file)
index c0c3dc8..0000000
+++ /dev/null
@@ -1,166 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef _CONTEXT_PLACE_RECOGNITION_LOCATION_LOGGER_H_
-#define _CONTEXT_PLACE_RECOGNITION_LOCATION_LOGGER_H_
-
-#include <locations.h>
-#include <TimerManager.h>
-#include "VisitListenerIface.h"
-#include "LocationListenerIface.h"
-
-/* Database usage flag */
-#define LOCATION_LOGGER_DATABASE false
-
-/* Locations measure method */
-#define LOCATION_LOGGER_METHOD LOCATIONS_METHOD_HYBRID
-
-/* TIMEOUTS: Location active measure request timeout (in seconds). */
-#define LOCATION_LOGGER_ACTIVE_REQUEST_TIMEOUT_SECONDS 100
-
-/* TIMEOUTS: Location service start timeout (in minutes). */
-#define LOCATION_LOGGER_SERVICE_START_TIMEOUT_MINUTES 2
-
-/* FREQUENCIES/INTERVALS: "Active" measure attempts frequency (in minutes) */
-#define LOCATION_LOGGER_ACTIVE_INTERVAL_MINUTES 5
-
-/* FREQUENCIES/INTERVALS: "Passive" measure attempts frequency (in minutes) */
-#define LOCATION_LOGGER_PASSIVE_INTERVAL_MINUTES 30
-
-/* ATTEMTS LIMITS: "Active" request attempts limit (must be <= than active location attempts) */
-#define LOCATION_LOGGER_MAX_ACTIVE_REQUEST_ATTEMPTS 0
-
-/* ATTEMTS LIMITS: "Active" measures attempts limit (must be <= than all attempts limit) */
-#define LOCATION_LOGGER_MAX_ACTIVE_LOCATION_ATTEMPTS 2
-
-/* ATTEMTS LIMITS: All attempts ("active" + "passive") limit */
-#define LOCATION_LOGGER_MAX_LOCATION_ATTEMPTS 3
-
-/* LOCATION LIMIT: Location count limit per visit */
-#define LOCATION_LOGGER_MAX_LOCATION_COUNT 3
-
-namespace ctx {
-
-       enum TimerPurpose {
-               LOCATION_LOGGER_WAITING_FOR_ACTIVE_REQUEST = 0,
-               LOCATION_LOGGER_WAITING_FOR_SERVICE_START = 1,
-               LOCATION_LOGGER_WAITING_FOR_LOCATION_METHOD_SETTING_ON = 2,
-               LOCATION_LOGGER_WAITING_FOR_ACTIVE_INTERVAL = 3,
-               LOCATION_LOGGER_WAITING_FOR_PASSIVE_INTERVAL = 4
-       };
-
-       class LocationLogger : public ITimerListener, public IVisitListener {
-
-       private:
-               /* INPUT */
-               void onVisitStart();
-               void onVisitEnd();
-
-               /* OUTPUT */
-               ILocationListener * const __listener;
-               void __broadcast(LocationEvent locationEvent);
-
-               /* INTERNAL */
-               void __startLogging();
-               void __stopLogging();
-               void __locationRequest();
-               void __onActiveRequestSucceeded();
-               void __onActiveLocationSucceeded();
-
-               /* INTERNAL : COUNTERS (LIMITS) */
-               int __activeRequestAttempts;
-               int __activeAttempts;
-               int __allAttempts;
-               int __locationCount;
-               bool __checkGeneralLimits();
-               bool __checkActiveLimits();
-               bool __checkActiveRequestLimits();
-
-               /* INTERNAL : FLAGS */
-               bool __activeRequestSucceeded;
-               bool __activeLocationSucceeded;
-
-               /* TIMER */
-               int __timerId;
-               time_t __timerTimestamp;
-               TimerManager __timerManager;
-               TimerPurpose __timerPurpose;
-               void __setNextTimer();
-               void __activeRequestTimerStart();
-               void __startServiceTimerStart();
-               void __activeIntervalTimerStart();
-               void __passiveIntervalTimerStart();
-               void __timerStart(time_t minutes);
-               void __timerStop();
-               bool onTimerExpired(int timerId);
-
-               /* DATABASE */
-               static int __dbCreateTable();
-               int __dbInsertLog(LocationEvent locationEvent);
-
-               /* DEBUG */
-               static const char* __locationError2Str(int error);
-               static void __log(location_accessibility_state_e state);
-
-               /* LOCATION MANAGER */
-               location_manager_h __locationManager;
-               void __locationManagerCreate();
-               void __locationManagerDestroy();
-               void __locationManagerStart();
-               void __locationManagerStop();
-               location_accessibility_state_e __locationManagerGetAccessibilityState();
-
-               /* LOCATION MANAGER : LOCATION SERVICE STATE */
-               location_service_state_e __locationServiceState;
-               static void __locationServiceStateChangedCb(location_service_state_e state, void *userData);
-               void __locationManagerSetServiceStateChangedCb();
-               void __locationManagerUnsetServiceStateChangedCb();
-
-               /* LOCATION MANAGER : LOCATION METHOD SETTINGS */
-               location_method_e __locationMethod;
-               bool __locationMethodState;
-               bool __locationManagerIsEnabledMethod(location_method_e method);
-               static void __locationSettingChangedCb(location_method_e method, bool enable, void *userData);
-               void __locationManagerSetSettingChangedCb();
-               void __locationManagerUnsetSettingChangedCb();
-
-               /* LOCATION MANAGER : LOCATION */
-               double __locationManagerGetHorizontalAccuracy();
-
-               /* LOCATION MANAGER : LOCATION : SYNCHRONOUS */
-               bool __locationManagerGetLocation();
-               void __locationManagerGetLastLocation();
-
-               /* LOCATION MANAGER : LOCATION : ASYNCHRONOUS */
-               static void __positionUpdatedCb(double latitude, double longitude,
-                               double altitude, time_t timestamp, void *userData);
-               static void __locationUpdatedCb(location_error_e error, double latitude,
-                               double longitude, double altitude, time_t timestamp, double speed,
-                               double direction, double climb, void *userData);
-               bool __locationManagerRequestSingleLocation();
-
-               LocationLogger(const LocationLogger&) = delete;
-               LocationLogger& operator=(const LocationLogger&) = delete;
-
-       public:
-               LocationLogger(ILocationListener *listener = nullptr);
-               ~LocationLogger();
-
-       };      /* class LocationLogger */
-
-}      /* namespace ctx */
-
-#endif /* End of _CONTEXT_PLACE_RECOGNITION_LOCATION_LOGGER_H_ */
diff --git a/src/my-place/visit-detector/VisitDetector.cpp b/src/my-place/visit-detector/VisitDetector.cpp
deleted file mode 100644 (file)
index 5fbc5cb..0000000
+++ /dev/null
@@ -1,502 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <set>
-#include <iostream>
-#include <iomanip>
-#include <sstream>
-#include <Types.h>
-#include <Json.h>
-#include <UserPlacesTypes.h>
-#include "VisitDetector.h"
-#include <UserPlacesParams.h>
-#include <Similarity.h>
-#include <Median.h>
-#include <DebugUtils.h>
-#include <gmodule.h>
-#include <DatabaseManager.h>
-
-#define SO_PATH _LIBDIR_ "/context-service/libctx-prvd-my-place-visit-categer.so"
-
-typedef void (*visit_categer_t)(ctx::Visit &visit);
-
-#define __VISIT_TABLE_COLUMNS \
-       VISIT_COLUMN_WIFI_APS " TEXT, "\
-       VISIT_COLUMN_START_TIME " timestamp, "\
-       VISIT_COLUMN_END_TIME " timestamp, "\
-       VISIT_COLUMN_LOCATION_VALID " INTEGER, "\
-       VISIT_COLUMN_LOCATION_LATITUDE " REAL, "\
-       VISIT_COLUMN_LOCATION_LONGITUDE " REAL, "\
-       VISIT_COLUMN_LOCATION_ACCURACY " REAL, "\
-       VISIT_COLUMN_CATEG_HOME " REAL, "\
-       VISIT_COLUMN_CATEG_WORK " REAL, "\
-       VISIT_COLUMN_CATEG_OTHER " REAL"
-
-#define __WIFI_APS_MAP_TABLE_COLUMNS \
-       WIFI_APS_MAP_COLUMN_MAC " TEXT NOT NULL UNIQUE, "\
-       WIFI_APS_MAP_COLUMN_NETWORK_NAME " TEXT NOT NULL, "\
-       WIFI_APS_MAP_COLUMN_INSERT_TIME " timestamp"
-
-ctx::VisitDetector::VisitDetector(time_t startScan, PlaceRecogMode energyMode, bool testMode) :
-       __testMode(testMode),
-       __locationLogger(testMode ? nullptr : new(std::nothrow) LocationLogger(this)),
-       __wifiLogger(testMode ? nullptr : new(std::nothrow) WifiLogger(this, energyMode)),
-       __currentInterval(startScan, startScan + VISIT_DETECTOR_PERIOD_SECONDS_HIGH_ACCURACY),
-       __stableCounter(0),
-       __tolerance(VISIT_DETECTOR_TOLERANCE_DEPTH),
-       __entranceToPlace(false),
-       __periodSeconds(VISIT_DETECTOR_PERIOD_SECONDS_HIGH_ACCURACY),
-       __entranceTime(0),
-       __departureTime(0)
-{
-       _D("CONSTRUCTOR");
-       __setPeriod(energyMode);
-       __currentInterval = Interval(startScan, startScan + __periodSeconds);
-       __currentMacEvents = std::make_shared<MacEvents>();
-       __stayMacs = std::make_shared<MacSet>();
-
-       if (__testMode) {
-               __detectedVisits = std::make_shared<ctx::Visits>();
-               return;
-       }
-
-       __listeners.push_back(__locationLogger);
-       __listeners.push_back(__wifiLogger);
-
-       __dbCreateTables();
-       __wifiLogger->startLogging();
-}
-
-ctx::VisitDetector::~VisitDetector()
-{
-       _D("DESTRUCTOR");
-       if (__locationLogger)
-               delete __locationLogger;
-       if (__wifiLogger)
-               delete __wifiLogger;
-}
-
-bool ctx::VisitDetector::__isValid(const ctx::Mac &mac)
-{
-       return mac != "00:00:00:00:00:00";
-}
-
-void ctx::VisitDetector::onWifiScan(ctx::MacEvent e)
-{
-       _D("timestamp=%d, current_interval.end=%d, mac=%s, network=%s",
-                       e.timestamp,
-                       __currentInterval.end,
-                       std::string(e.mac).c_str(),
-                       e.networkName.c_str());
-       if (__isValid(e.mac)) {
-               while (e.timestamp > __currentInterval.end) {
-                       __processCurrentLogger();
-                       __shiftCurrentInterval();
-               }
-               __currentMacEvents->push_back(e);
-       }
-}
-
-void ctx::VisitDetector::__processCurrentLogger()
-{
-       _D("");
-       std::shared_ptr<ctx::Frame> frame = __makeFrame(__currentMacEvents, __currentInterval);
-       __detectEntranceOrDeparture(frame);
-       __currentMacEvents->clear();
-}
-
-std::shared_ptr<ctx::Frame> ctx::VisitDetector::__makeFrame(std::shared_ptr<ctx::MacEvents> logger, ctx::Interval interval)
-{
-       std::set<time_t> timestamps;
-       std::shared_ptr<Frame> frame = std::make_shared<Frame>(interval);
-       for (auto log : *logger) {
-               timestamps.insert(log.timestamp);
-               if (frame->macs2Counts.find(log.mac) == frame->macs2Counts.end()) {
-                       frame->macs2Counts[log.mac] = 1;
-               } else {
-                       frame->macs2Counts[log.mac] += 1;
-               }
-       }
-       frame->numberOfTimestamps = timestamps.size();
-       return frame;
-}
-
-void ctx::VisitDetector::__shiftCurrentInterval()
-{
-       __currentInterval.end += __periodSeconds;
-       __currentInterval.start += __periodSeconds;
-}
-
-void ctx::VisitDetector::__detectEntranceOrDeparture(std::shared_ptr<ctx::Frame> frame)
-{
-       __entranceToPlace ? __detectDeparture(frame) : __detectEntrance(frame);
-       if (__entranceToPlace) {
-               for (MacEvent e : *__currentMacEvents) {
-                       __wifiAPsMap.insert(std::pair<std::string, std::string>(e.mac, e.networkName));
-               }
-       }
-}
-
-bool ctx::VisitDetector::__isDisjoint(const ctx::Macs2Counts &macs2Counts, const ctx::MacSet &macSet)
-{
-       for (auto &mac : macSet) {
-               if (macs2Counts.find(mac) != macs2Counts.end())
-                       return false;
-       }
-       return true;
-}
-
-bool ctx::VisitDetector::__protrudesFrom(const ctx::Macs2Counts &macs2Counts, const ctx::MacSet &macSet)
-{
-       for (auto &macCount : macs2Counts) {
-               if (macSet.find(macCount.first) == macSet.end())
-                       return true;
-       }
-       return false;
-}
-
-void ctx::VisitDetector::__detectDeparture(std::shared_ptr<ctx::Frame> frame)
-{
-       if (__tolerance == VISIT_DETECTOR_TOLERANCE_DEPTH) {
-               __departureTime = frame->interval.start;
-               __bufferedFrames.clear();
-       } else { // __tolerance < VISIT_DETECTOR_TOLERANCE_DEPTH
-               __bufferedFrames.push_back(frame);
-       }
-       if (__isDisjoint(frame->macs2Counts, *__representativesMacs)) {
-               if (frame->macs2Counts.empty() || __protrudesFrom(frame->macs2Counts, *__stayMacs)) {
-                       __tolerance--;
-               } else { // no new macs
-                       __bufferedFrames.clear();
-               }
-               if (__tolerance == 0) { // departure detected
-                       __visitEndDetected();
-                       __processBuffer(frame);
-               }
-       } else if (__tolerance < VISIT_DETECTOR_TOLERANCE_DEPTH) {
-               __tolerance++;
-       }
-}
-
-void ctx::VisitDetector::__visitStartDetected()
-{
-       __entranceToPlace = true;
-
-       __locationEvents.clear();
-       if (!__testMode) {
-               for (IVisitListener* listener : __listeners) {
-                       listener->onVisitStart();
-               }
-       }
-       __representativesMacs = __selectRepresentatives(__historyFrames);
-       __entranceTime = __historyFrames[0]->interval.start;
-       _D("Entrance detected, timestamp: %d", __entranceTime);
-       __resetHistory();
-}
-
-void ctx::VisitDetector::__visitEndDetected()
-{
-       if (!__testMode) {
-               for (IVisitListener* listener : __listeners) {
-                       listener->onVisitEnd();
-               }
-       }
-       _D("Departure detected, timestamp: %d", __departureTime);
-
-       Interval interval(__entranceTime, __departureTime);
-       Visit visit(interval, __representativesMacs);
-       __categorize(visit);
-
-       __putLocationToVisit(visit);
-
-       if (__testMode) {
-               __detectedVisits->push_back(visit);
-       } else {
-               __dbInsertVisit(visit);
-               __dbInsertWifiAPsMap(visit);
-       }
-
-       // cleaning
-       __entranceToPlace = false;
-       __representativesMacs.reset();
-       __tolerance = VISIT_DETECTOR_TOLERANCE_DEPTH;
-}
-
-void ctx::VisitDetector::__putLocationToVisit(ctx::Visit &visit)
-{
-       // TODO: filter out small accuracy locations?
-       std::vector<double> latitudes;
-       std::vector<double> longitudes;
-       std::vector<double> accuracy;
-       visit.locationValid = false;
-       for (LocationEvent &location : __locationEvents) {
-               if (location.timestamp >= __entranceTime && location.timestamp <= __departureTime) {
-                       latitudes.push_back(location.coordinates.latitude);
-                       longitudes.push_back(location.coordinates.longitude);
-                       accuracy.push_back(location.coordinates.accuracy);
-                       visit.locationValid = true;
-               }
-       }
-       if (visit.locationValid) {
-               visit.location = medianLocation(latitudes, longitudes, accuracy);
-               _D("visit location set: lat=%.8f, lon=%.8f, acc=%.8f",
-                               visit.location.latitude,
-                               visit.location.longitude,
-                               visit.location.accuracy);
-       } else {
-               _D("visit location not set");
-       }
-}
-
-void ctx::VisitDetector::__processBuffer(std::shared_ptr<ctx::Frame> frame)
-{
-       if (__bufferedFrames.empty()) {
-               __historyFrames.push_back(frame);
-       } else {
-               __historyFrames.push_back(__bufferedFrames[0]);
-               for (size_t i = 1; i < __bufferedFrames.size(); i++) {
-                       __detectEntrance(__bufferedFrames[i]);
-                       if (__entranceToPlace)
-                               break;
-               }
-       }
-}
-
-void ctx::VisitDetector::__detectEntrance(std::shared_ptr<ctx::Frame> currentFrame)
-{
-       if (currentFrame->macs2Counts.empty() || __historyFrames.empty()) {
-               __resetHistory(currentFrame);
-               return;
-       }
-
-       if (__stableCounter == 0) {
-               std::shared_ptr<Frame> oldestHistoryFrame = __historyFrames[0];
-               __stayMacs = macSetFromMacs2Counts(oldestHistoryFrame->macs2Counts);
-       }
-
-       std::shared_ptr<MacSet> currentBeacons = macSetFromMacs2Counts(currentFrame->macs2Counts);
-
-       if (similarity::overlapBiggerOverSmaller(*currentBeacons, *__stayMacs) > VISIT_DETECTOR_OVERLAP) {
-               __stableCounter++;
-               __historyFrames.push_back(currentFrame);
-               if (__stableCounter == VISIT_DETECTOR_STABLE_DEPTH) // entrance detected
-                       __visitStartDetected();
-       } else {
-               __resetHistory(currentFrame);
-       }
-       return;
-}
-
-void ctx::VisitDetector::__resetHistory()
-{
-       __stableCounter = 0;
-       __historyFrames.clear();
-}
-
-void ctx::VisitDetector::__resetHistory(std::shared_ptr<Frame> frame)
-{
-       __resetHistory();
-       __historyFrames.push_back(frame);
-}
-
-std::shared_ptr<ctx::MacSet> ctx::VisitDetector::__selectRepresentatives(const std::vector<std::shared_ptr<Frame>> &frames)
-{
-       Macs2Counts reprs2Counts;
-       count_t allCount = 0;
-
-       for (auto frame : frames) {
-               allCount += frame->numberOfTimestamps;
-               for (auto &c : frame->macs2Counts) {
-                       reprs2Counts[c.first] += c.second;
-               }
-       }
-
-       std::shared_ptr<Macs2Shares> reprs2Shares = __macSharesFromCounts(reprs2Counts, allCount);
-
-       share_t maxShare = __calcMaxShare(*reprs2Shares);
-       share_t threshold = maxShare < VISIT_DETECTOR_REP_THRESHOLD ? maxShare : VISIT_DETECTOR_REP_THRESHOLD;
-
-       std::shared_ptr<MacSet> reprsMacSet = __macSetOfGreaterOrEqualShare(*reprs2Shares, threshold);
-
-       return reprsMacSet;
-}
-
-ctx::share_t ctx::VisitDetector::__calcMaxShare(const ctx::Macs2Shares &macs2Shares)
-{
-       ctx::share_t maxShare = 0.0;
-       for (auto &macShare : macs2Shares) {
-               if (macShare.second > maxShare)
-                       maxShare = macShare.second;
-       }
-       return maxShare;
-}
-
-std::shared_ptr<ctx::MacSet> ctx::VisitDetector::__macSetOfGreaterOrEqualShare(const ctx::Macs2Shares &macs2Shares, ctx::share_t threshold)
-{
-       std::shared_ptr<MacSet> macSet = std::make_shared<MacSet>();
-       for (auto &macShare : macs2Shares) {
-               if (macShare.second >= threshold)
-                       macSet->insert(macShare.first);
-       }
-       return macSet;
-}
-
-std::shared_ptr<ctx::Macs2Shares> ctx::VisitDetector::__macSharesFromCounts(ctx::Macs2Counts const &macs2Counts, ctx::count_t denominator)
-{
-       std::shared_ptr<Macs2Shares> macs2Shares(std::make_shared<Macs2Shares>());
-       for (auto macCount : macs2Counts) {
-               (*macs2Shares)[macCount.first] = (share_t) macCount.second / denominator;
-       }
-       return macs2Shares;
-}
-
-std::shared_ptr<ctx::Visits> ctx::VisitDetector::__getVisits()
-{
-       return __detectedVisits;
-}
-
-void ctx::VisitDetector::__dbCreateTables()
-{
-       DatabaseManager dbManager;
-       bool ret = dbManager.createTableSync(VISIT_TABLE, __VISIT_TABLE_COLUMNS);
-       _D("db: Visit Table Creation Result: %s", ret ? "SUCCESS" : "FAIL");
-
-       ret = dbManager.createTableSync(WIFI_APS_MAP_TABLE, __WIFI_APS_MAP_TABLE_COLUMNS);
-       _D("db: Wifi AP Map Table Creation Result: %s", ret ? "SUCCESS" : "FAIL");
-}
-
-void ctx::VisitDetector::__putVisitCategToJson(const char* key, const Categs &categs, int categType, Json &data)
-{
-       auto categ = categs.find(categType);
-       if (categ == categs.end()) {
-               _E("json_put_visit no type %d in categs", categType);
-       } else {
-               data.set(NULL, key, categ->second);
-       }
-}
-
-void ctx::VisitDetector::__putVisitCategsToJson(const Categs &categs, Json &data)
-{
-       __putVisitCategToJson(VISIT_COLUMN_CATEG_HOME, categs, PLACE_CATEG_ID_HOME, data);
-       __putVisitCategToJson(VISIT_COLUMN_CATEG_WORK, categs, PLACE_CATEG_ID_WORK, data);
-       __putVisitCategToJson(VISIT_COLUMN_CATEG_OTHER, categs, PLACE_CATEG_ID_OTHER, data);
-}
-
-int ctx::VisitDetector::__dbInsertVisit(Visit visit)
-{
-       std::stringstream ss;
-       ss << *visit.macSet;
-
-       Json data;
-       data.set(NULL, VISIT_COLUMN_WIFI_APS, ss.str().c_str());
-
-       data.set(NULL, VISIT_COLUMN_LOCATION_VALID, visit.locationValid);
-       data.set(NULL, VISIT_COLUMN_LOCATION_LATITUDE, visit.location.latitude);
-       data.set(NULL, VISIT_COLUMN_LOCATION_LONGITUDE, visit.location.longitude);
-       data.set(NULL, VISIT_COLUMN_LOCATION_ACCURACY, visit.location.accuracy);
-
-       data.set(NULL, VISIT_COLUMN_START_TIME, static_cast<int>(visit.interval.start));
-       data.set(NULL, VISIT_COLUMN_END_TIME, static_cast<int>(visit.interval.end));
-
-#ifdef DEBUG_MODE
-       std::string startTimeHuman = DebugUtils::humanReadableDateTime(visit.interval.start, "%F %T", 80);
-       std::string endTimeHuman = DebugUtils::humanReadableDateTime(visit.interval.end, "%F %T", 80);
-       _D("db: visit table insert interval: (%d, %d): (%s, %s)",
-                       visit.interval.start, visit.interval.end, startTimeHuman.c_str(), endTimeHuman.c_str());
-#else
-       _D("db: visit table insert interval: (%d, %d)", visit.interval.start, visit.interval.end);
-#endif /* DEBUG_MODE */
-
-       __putVisitCategsToJson(visit.categs, data);
-
-       int64_t rowId;
-       DatabaseManager dbManager;
-       bool ret = dbManager.insertSync(VISIT_TABLE, data, &rowId);
-       _D("db: visit table insert result: %s", ret ? "SUCCESS" : "FAIL");
-       return ret;
-}
-
-int ctx::VisitDetector::__dbInsertWifiAPsMap(Visit visit)
-{
-       std::stringstream query;
-       time_t now = time(nullptr);
-       const char* separator = " ";
-       query << "BEGIN TRANSACTION; \
-                       REPLACE INTO " WIFI_APS_MAP_TABLE " \
-                       ( " WIFI_APS_MAP_COLUMN_MAC ", " WIFI_APS_MAP_COLUMN_NETWORK_NAME ", " WIFI_APS_MAP_COLUMN_INSERT_TIME " ) \
-                       VALUES";
-       for (Mac mac : *visit.macSet) {
-               // TODO: Add protection from SQL injection in network name!!
-               query << separator << "( '" << mac << "', '" << __wifiAPsMap.find(mac)->second << "', '" << now << "' )";
-               separator = ", ";
-       }
-       __wifiAPsMap.clear();
-       query << "; \
-                       END TRANSACTION;";
-       std::vector<Json> records;
-       DatabaseManager dbManager;
-       bool ret = dbManager.executeSync(query.str().c_str(), &records);
-       _D("DB Wifi APs map insert request: %s", ret ? "SUCCESS" : "FAIL");
-       return ret;
-}
-
-void ctx::VisitDetector::onNewLocation(LocationEvent locationEvent)
-{
-       _D("");
-       locationEvent.log();
-       __locationEvents.push_back(locationEvent);
-};
-
-void ctx::VisitDetector::__setPeriod(PlaceRecogMode energyMode)
-{
-       switch (energyMode) {
-       case PLACE_RECOG_LOW_POWER_MODE:
-               __periodSeconds = VISIT_DETECTOR_PERIOD_SECONDS_LOW_POWER;
-               break;
-       case PLACE_RECOG_HIGH_ACCURACY_MODE:
-               __periodSeconds = VISIT_DETECTOR_PERIOD_SECONDS_HIGH_ACCURACY;
-               break;
-       default:
-               _E("Incorrect energy mode");
-       }
-}
-
-void ctx::VisitDetector::setMode(PlaceRecogMode energyMode)
-{
-       _D("");
-       __setPeriod(energyMode);
-       if (__wifiLogger)
-               __wifiLogger->setMode(energyMode);
-}
-
-void ctx::VisitDetector::__categorize(ctx::Visit &visit)
-{
-       _D("");
-       GModule *soHandle = g_module_open(SO_PATH, G_MODULE_BIND_LAZY);
-       IF_FAIL_VOID_TAG(soHandle, _E, "%s", g_module_error());
-
-       gpointer symbol;
-       if (!g_module_symbol(soHandle, "categorize", &symbol) || symbol == NULL) {
-               _E("%s", g_module_error());
-               g_module_close(soHandle);
-               return;
-       }
-
-       visit_categer_t categorize = reinterpret_cast<visit_categer_t>(symbol);
-
-       categorize(visit);
-       g_module_close(soHandle);
-}
diff --git a/src/my-place/visit-detector/VisitDetector.h b/src/my-place/visit-detector/VisitDetector.h
deleted file mode 100644 (file)
index b476942..0000000
+++ /dev/null
@@ -1,108 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef _CONTEXT_PLACE_RECOGNITION_VISIT_DETECTOR_H_
-#define _CONTEXT_PLACE_RECOGNITION_VISIT_DETECTOR_H_
-
-#include <memory>
-#include <vector>
-#include <map>
-#include <unordered_map>
-#include <unordered_set>
-#include <UserPlacesTypes.h>
-#include <Json.h>
-#include "VisitListenerIface.h"
-#include "LocationLogger.h"
-#include "LocationListenerIface.h"
-#include "WifiListenerIface.h"
-#include "WifiLogger.h"
-
-namespace ctx {
-
-       class VisitDetector : public IWifiListener, ILocationListener {
-
-       private:
-               bool __testMode;
-               std::map<std::string, std::string> __wifiAPsMap;
-               std::shared_ptr<Visits> __detectedVisits; // only used in test mode
-               LocationLogger *__locationLogger;
-               WifiLogger *__wifiLogger;
-               std::vector<IVisitListener*> __listeners;
-               std::shared_ptr<MacEvents> __currentMacEvents;
-               Interval __currentInterval;
-               std::vector<LocationEvent> __locationEvents;
-               std::vector<std::shared_ptr<Frame>> __historyFrames;  // python: history_scans  + history_times
-               std::vector<std::shared_ptr<Frame>> __bufferedFrames; // python: buffered_scans + buffered_times
-               int __stableCounter;
-               int __tolerance;
-               bool __entranceToPlace;
-               int __periodSeconds;
-
-               // fields that  are used only in case of entrance detection
-               std::shared_ptr<MacSet> __representativesMacs; // macs that represent the current place
-               std::shared_ptr<MacSet> __stayMacs; // macs that can appear in the current place
-               time_t __entranceTime;
-               time_t __departureTime;
-
-               bool __isValid(const Mac &mac);
-               void __shiftCurrentInterval();
-               void __detectEntranceOrDeparture(std::shared_ptr<Frame> frame);
-               void __detectEntrance(std::shared_ptr<Frame> frame);
-               void __detectDeparture(std::shared_ptr<Frame> frame);
-               void __processBuffer(std::shared_ptr<Frame> frame); // python: buffer_analysing
-               std::shared_ptr<Frame> __makeFrame(std::shared_ptr<MacEvents> macEvents, Interval interval);  // python: scans2fingerprint
-               void __resetHistory();
-               void __resetHistory(std::shared_ptr<Frame> frame);
-               void __visitStartDetected();
-               void __visitEndDetected();
-               void __putLocationToVisit(Visit &visit);
-               std::shared_ptr<MacSet> __selectRepresentatives(const std::vector<std::shared_ptr<Frame>> &frames);
-               std::shared_ptr<MacSet> __macSetOfGreaterOrEqualShare(const Macs2Shares &macs2Shares, share_t threshold);
-               std::shared_ptr<Macs2Shares> __macSharesFromCounts(Macs2Counts const &macs2Counts, count_t denominator); // python: response_rate
-               share_t __calcMaxShare(const Macs2Shares &macs2Shares);
-               bool __isDisjoint(const Macs2Counts &macs2Counts, const MacSet &macSet);
-               bool __protrudesFrom(const Macs2Counts &macs2Counts, const MacSet &macSet);
-               void __setPeriod(PlaceRecogMode mode);
-               void __processCurrentLogger();
-               std::shared_ptr<Visits> __getVisits();
-
-               /* DATABASE */
-               void __dbCreateTables();
-               int __dbInsertVisit(Visit visit);
-               int __dbInsertWifiAPsMap(Visit visit);
-               void __putVisitCategToJson(const char* key, const Categs &categs, int categType, Json &data);
-               void __putVisitCategsToJson(const Categs &categs, Json &data);
-
-               /* INPUT */
-               void onWifiScan(MacEvent event);
-               void onNewLocation(LocationEvent location);
-
-               void __categorize(Visit &visit);
-
-               VisitDetector(const VisitDetector&) = delete;
-               VisitDetector& operator=(const VisitDetector&) = delete;
-
-       public:
-               VisitDetector(time_t startScan, PlaceRecogMode energyMode = PLACE_RECOG_HIGH_ACCURACY_MODE, bool testMode = false);
-               ~VisitDetector();
-
-               void setMode(PlaceRecogMode energyMode);
-
-       };      /* class VisitDetector */
-
-}      /* namespace ctx */
-
-#endif /* End of _CONTEXT_PLACE_RECOGNITION_VISIT_DETECTOR_H_ */
diff --git a/src/my-place/visit-detector/VisitListenerIface.h b/src/my-place/visit-detector/VisitListenerIface.h
deleted file mode 100644 (file)
index 03f5f20..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef _CONTEXT_PLACE_RECOGNITION_VISIT_LISTENER_IFACE_H_
-#define _CONTEXT_PLACE_RECOGNITION_VISIT_LISTENER_IFACE_H_
-
-namespace ctx {
-
-       class IVisitListener {
-
-       public:
-               virtual ~IVisitListener() {};
-               virtual void onVisitStart() = 0;
-               virtual void onVisitEnd() = 0;
-
-       };      /* class IVisitListener */
-
-}      /* namespace ctx */
-
-#endif /* End of _CONTEXT_PLACE_RECOGNITION_VISIT_LISTENER_IFACE_H_ */
diff --git a/src/my-place/visit-detector/WifiListenerIface.h b/src/my-place/visit-detector/WifiListenerIface.h
deleted file mode 100644 (file)
index 84ef489..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef _CONTEXT_PLACE_RECOGNITION_WIFI_LISTENER_IFACE_H_
-#define _CONTEXT_PLACE_RECOGNITION_WIFI_LISTENER_IFACE_H_
-
-#include <UserPlacesTypes.h>
-
-namespace ctx {
-
-       class IWifiListener {
-
-       public:
-               virtual ~IWifiListener() {};
-               virtual void onWifiScan(ctx::MacEvent macEvent) = 0;
-
-       };      /* IWifiListener */
-
-}      /* namespace ctx */
-
-#endif /* End of _CONTEXT_PLACE_RECOGNITION_WIFI_LISTENER_IFACE_H_ */
diff --git a/src/my-place/visit-detector/WifiLogger.cpp b/src/my-place/visit-detector/WifiLogger.cpp
deleted file mode 100644 (file)
index 785aecc..0000000
+++ /dev/null
@@ -1,470 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <sstream>
-#include <Types.h>
-#include <DatabaseManager.h>
-#include <UserPlacesTypes.h>
-#include <DebugUtils.h>
-#include "WifiLogger.h"
-
-#define __WIFI_CREATE_TABLE_COLUMNS \
-       WIFI_COLUMN_TIMESTAMP " timestamp NOT NULL, "\
-       WIFI_COLUMN_BSSID " TEXT NOT NULL, "\
-       WIFI_COLUMN_ESSID " TEXT NOT NULL"
-
-#define __WIFI_ERROR_LOG(error) { \
-       if (error != WIFI_ERROR_NONE) { \
-               _E("ERROR == %s", __wifiError2Str(error)); \
-       } else { \
-               _D("SUCCESS"); \
-       } \
-}
-
-int ctx::WifiLogger::__dbCreateTable()
-{
-       DatabaseManager dbManager;
-       bool ret = dbManager.createTableSync(WIFI_TABLE, __WIFI_CREATE_TABLE_COLUMNS);
-       _D("Table Creation Request: %s", ret ? "SUCCESS" : "FAIL");
-       return ret;
-}
-
-int ctx::WifiLogger::__dbInsertLogs()
-{
-       if (__logs.size() > 0) {
-               std::stringstream query;
-               const char* separator = " ";
-               query << "BEGIN TRANSACTION; \
-                               INSERT INTO " WIFI_TABLE " \
-                               ( " WIFI_COLUMN_BSSID ", " WIFI_COLUMN_ESSID ", " WIFI_COLUMN_TIMESTAMP " ) \
-                               VALUES";
-               for (MacEvent mac_event : __logs) {
-                       query << separator << "( '" << mac_event.mac << "', '" << mac_event.networkName << "', '" << mac_event.timestamp << "' )";
-                       separator = ", ";
-               }
-               __logs.clear();
-               query << "; \
-                               END TRANSACTION;";
-               std::vector<Json> records;
-               DatabaseManager dbManager;
-               bool ret = dbManager.executeSync(query.str().c_str(), &records);
-               _D("DB insert request: %s", ret ? "SUCCESS" : "FAIL");
-               return ret;
-       }
-       _D("__logs vector empty -> nothing to insert");
-       return 0;
-}
-
-ctx::WifiLogger::WifiLogger(IWifiListener *listener, PlaceRecogMode energyMode) :
-       __timerOn(false),
-       __timerId(-1),
-       __intervalMinutes(WIFI_LOGGER_INTERVAL_MINUTES_HIGH_ACCURACY),
-       __listener(listener),
-       __lastScanTime(time_t(0)),
-       __lasTimerCallbackTime(time_t(0)),
-       __duringVisit(false),
-       __connectedToWifiAp(false),
-       __started(false),
-       __running(false)
-{
-       _D("CONSTRUCTOR");
-
-       __setInterval(energyMode);
-
-       if (WIFI_LOGGER_DATABASE)
-               __dbCreateTable();
-
-       __logs = std::vector<MacEvent>();
-
-       __wifiSetDeviceStateChangedCbRequest();
-
-       if (WIFI_LOGGER_LOW_POWER_MODE)
-               __wifiSetConnectionStateChangedCbRequest();
-
-       wifi_connection_state_e state = __wifiGetConnectionStateRequest();
-       __connectedToWifiAp = (state == WIFI_CONNECTION_STATE_CONNECTED);
-       _D("__connectedToWifiAp = %d, __duringVisit = %d IN CONSTRUCTOR",
-                               static_cast<int>(__connectedToWifiAp),
-                               static_cast<int>(__duringVisit));
-}
-
-ctx::WifiLogger::~WifiLogger()
-{
-       _D("DESTRUCTOR");
-       stopLogging();
-}
-
-void ctx::WifiLogger::__wifiDeviceStateChangedCb(wifi_device_state_e state, void *userData)
-{
-       ctx::WifiLogger* wifiLogger = (ctx::WifiLogger *)userData;
-       switch (state) {
-       case WIFI_DEVICE_STATE_DEACTIVATED:
-               _D("WIFI setting OFF");
-               if (wifiLogger->__started)
-                       wifiLogger->__stopLogging();
-               break;
-       case WIFI_DEVICE_STATE_ACTIVATED:
-               _D("WIFI setting ON");
-               if (wifiLogger->__started)
-                       wifiLogger->__startLogging();
-               break;
-       default:
-               break;
-       }
-}
-
-void ctx::WifiLogger::__wifiConnectionStateChangedCb(wifi_connection_state_e state, wifi_ap_h ap, void *userData)
-{
-       ctx::WifiLogger* wifiLogger = (ctx::WifiLogger *)userData;
-       switch (state) {
-       case WIFI_CONNECTION_STATE_CONNECTED:
-               _D("connected to AP");
-               wifiLogger->__connectedToWifiAp = true;
-               break;
-       default:
-               _D("disconnected from AP -> __lastScansPool.clear()");
-               wifiLogger->__connectedToWifiAp = false;
-               wifiLogger->__lastScansPool.clear();
-               break;
-       }
-       // TODO: Check if AP bssid (MAC Address) will be helpful somehow in LOW_POWER mode
-}
-
-bool ctx::WifiLogger::__wifiFoundApCb(wifi_ap_h ap, void *userData)
-{
-       ctx::WifiLogger* wifiLogger = (ctx::WifiLogger *)userData;
-
-       std::string bssid;
-       int ret = wifiLogger->__wifiApGetBssidRequest(ap, bssid);
-       if (ret != WIFI_ERROR_NONE)
-               return false;
-
-       std::string essid;
-       ret = wifiLogger->__wifiApGetEssidRequest(ap, essid);
-       if (ret != WIFI_ERROR_NONE)
-               return false;
-
-       Mac mac;
-       try {
-               mac = Mac(bssid);
-       } catch (std::runtime_error &e) {
-               _E("Cannot create mac_event. Exception: %s", e.what());
-               return false;
-       }
-
-       MacEvent log(wifiLogger->__lastScanTime, mac, essid);
-       if (wifiLogger->__listener) {
-               wifiLogger->__listener->onWifiScan(log);
-               if (WIFI_LOGGER_LOW_POWER_MODE
-                               && (wifiLogger->__connectedToWifiAp || wifiLogger->__duringVisit) ) {
-                       // Add to last scans AP's set
-                       wifiLogger->__lastScansPool.insert(std::pair<std::string, std::string>(bssid, essid));
-               }
-       }
-       if (WIFI_LOGGER_DATABASE)
-               wifiLogger->__logs.push_back(log);
-
-       return true;
-}
-
-const char* ctx::WifiLogger::__wifiError2Str(int error)
-{
-       switch (error) {
-       case WIFI_ERROR_INVALID_PARAMETER:
-               return "WIFI_ERROR_INVALID_PARAMETER";
-       case WIFI_ERROR_OUT_OF_MEMORY:
-               return "WIFI_ERROR_OUT_OF_MEMORY";
-       case WIFI_ERROR_INVALID_OPERATION:
-               return "WIFI_ERROR_INVALID_OPERATION";
-       case WIFI_ERROR_ADDRESS_FAMILY_NOT_SUPPORTED:
-               return "WIFI_ERROR_ADDRESS_FAMILY_NOT_SUPPORTED";
-       case WIFI_ERROR_OPERATION_FAILED:
-               return "WIFI_ERROR_OPERATION_FAILED";
-       case WIFI_ERROR_NO_CONNECTION:
-               return "WIFI_ERROR_NO_CONNECTION";
-       case WIFI_ERROR_NOW_IN_PROGRESS:
-               return "WIFI_ERROR_NOW_IN_PROGRESS";
-       case WIFI_ERROR_ALREADY_EXISTS:
-               return "WIFI_ERROR_ALREADY_EXISTS";
-       case WIFI_ERROR_OPERATION_ABORTED:
-               return "WIFI_ERROR_OPERATION_ABORTED";
-       case WIFI_ERROR_DHCP_FAILED:
-               return "WIFI_ERROR_DHCP_FAILED";
-       case WIFI_ERROR_INVALID_KEY:
-               return "WIFI_ERROR_INVALID_KEY";
-       case WIFI_ERROR_NO_REPLY:
-               return "WIFI_ERROR_NO_REPLY";
-       case WIFI_ERROR_SECURITY_RESTRICTED:
-               return "WIFI_ERROR_SECURITY_RESTRICTED";
-       case WIFI_ERROR_PERMISSION_DENIED:
-               return "WIFI_ERROR_PERMISSION_DENIED";
-       default:
-               return "unknown wifi error code";
-       }
-}
-
-void ctx::WifiLogger::__wifiScanFinishedCb(wifi_error_e errorCode, void *userData)
-{
-       ctx::WifiLogger* wifiLogger = (ctx::WifiLogger *)userData;
-
-       time_t now = time(nullptr);
-#ifdef DEBUG_MODE
-       double seconds = 0;
-       if (wifiLogger->__lastScanTime > 0) {
-               seconds = difftime(now, wifiLogger->__lastScanTime);
-       }
-       std::string timeStr = DebugUtils::humanReadableDateTime(now, "%T", 9);
-       _D("__connectedToWifiAp = %d, __duringVisit = %d, __lastScansPool.size() = %d -> scan %s (from last : %.1fs)",
-                       static_cast<int>(wifiLogger->__connectedToWifiAp),
-                       static_cast<int>(wifiLogger->__duringVisit),
-                       wifiLogger->__lastScansPool.size(),
-                       timeStr.c_str(),
-                       seconds);
-#endif /* DEBUG_MODE */
-       wifiLogger->__lastScanTime = now;
-
-       int ret = wifiLogger->__wifiForeachFoundApsRequest(userData);
-       if (ret != WIFI_ERROR_NONE)
-               return;
-       if (WIFI_LOGGER_DATABASE)
-               wifiLogger->__dbInsertLogs();
-}
-
-bool ctx::WifiLogger::__checkWifiIsActivated()
-{
-       bool wifiActivated = true;
-       int ret = __wifiWrapper.isActivated(&wifiActivated);
-       __WIFI_ERROR_LOG(ret);
-       _D("Wi-Fi is %s", wifiActivated ? "ON" : "OFF");
-       return wifiActivated;
-}
-
-void ctx::WifiLogger::__wifiScanRequest()
-{
-       int ret = __wifiWrapper.scan(__wifiScanFinishedCb, this);
-       __WIFI_ERROR_LOG(ret);
-}
-
-int ctx::WifiLogger::__wifiForeachFoundApsRequest(void *userData)
-{
-       int ret = __wifiWrapper.foreachFoundAP(__wifiFoundApCb, userData);
-       __WIFI_ERROR_LOG(ret);
-       return ret;
-}
-
-wifi_connection_state_e ctx::WifiLogger::__wifiGetConnectionStateRequest()
-{
-       wifi_connection_state_e connectionState;
-       int ret = __wifiWrapper.getConnectionState(&connectionState);
-       __WIFI_ERROR_LOG(ret);
-       return connectionState;
-}
-
-void ctx::WifiLogger::__wifiSetBackgroundScanCbRequest()
-{
-       int ret = __wifiWrapper.setBackgroundScanCb(__wifiScanFinishedCb, this);
-       __WIFI_ERROR_LOG(ret);
-}
-
-void ctx::WifiLogger::__wifiSetDeviceStateChangedCbRequest()
-{
-       int ret = __wifiWrapper.setDeviceStateChangedCb(__wifiDeviceStateChangedCb, this);
-       __WIFI_ERROR_LOG(ret);
-}
-
-void ctx::WifiLogger::__wifiSetConnectionStateChangedCbRequest()
-{
-       int ret = __wifiWrapper.setConnectionStateChangedCb(__wifiConnectionStateChangedCb, this);
-       __WIFI_ERROR_LOG(ret);
-}
-
-int ctx::WifiLogger::__wifiApGetEssidRequest(wifi_ap_h ap, std::string &essid)
-{
-       char *_essid = NULL;
-       int ret = __wifiWrapper.getEssidFromAP(ap, &_essid);
-       __WIFI_ERROR_LOG(ret);
-
-       if (ret == WIFI_ERROR_NONE && _essid)
-               essid = _essid;
-
-       free(_essid);
-       return ret;
-}
-
-int ctx::WifiLogger::__wifiApGetBssidRequest(wifi_ap_h ap, std::string &bssid)
-{
-       char *_bssid = NULL;
-       int ret = __wifiWrapper.getBssidFromAP(ap, &_bssid);
-       __WIFI_ERROR_LOG(ret);
-
-       if (ret == WIFI_ERROR_NONE && _bssid)
-               bssid = _bssid;
-
-       free(_bssid);
-       return ret;
-}
-
-bool ctx::WifiLogger::__checkTimerId(int id)
-{
-       _D("id == %d, __timerId == %d", id, __timerId);
-       return id == __timerId;
-}
-
-/*
- * Accepted time from last callback is >= than minimum interval
- */
-bool ctx::WifiLogger::__checkTimerTime(time_t now)
-{
-       double seconds = 0;
-       if (__lasTimerCallbackTime > 0) {
-               seconds = difftime(now, __lasTimerCallbackTime);
-               if (seconds < WIFI_LOGGER_ACTIVE_SCANNING_MIN_INTERVAL) {
-                       _D("last == %d, now == %d, diff = %.1fs -> Incorrect timer callback", __lasTimerCallbackTime, now, seconds);
-                       return false;
-               } else {
-                       _D("last == %d, now == %d, diff = %.1fs -> Correct timer callback", __lasTimerCallbackTime, now, seconds);
-               }
-       } else {
-               _D("last == %d, now == %d -> First callback", __lasTimerCallbackTime, now);
-       }
-       __lasTimerCallbackTime = now;
-       return true;
-}
-
-bool ctx::WifiLogger::onTimerExpired(int id)
-{
-       time_t now = time(nullptr);
-       _D("");
-       if (__checkTimerId(id) == false) // Incorrect callback call
-               return false;
-       if (__checkTimerTime(now) == false) // Prevention from double callback call bug
-               return __timerOn;
-       _D("__connectedToWifiAp = %d, __duringVisit = %d, __lastScansPool.size() = %d",
-                       static_cast<int>(__connectedToWifiAp),
-                       static_cast<int>(__duringVisit),
-                       __lastScansPool.size());
-       if (WIFI_LOGGER_LOW_POWER_MODE
-                       && __duringVisit
-                       && __connectedToWifiAp
-                       && __lastScansPool.size() > 0) {
-               _D("trying to send fake scan");
-               if (__listener) {
-                       _D("__listener != false -> CORRECT");
-                       for (std::pair<std::string, std::string> ap : __lastScansPool) {
-                               Mac mac(ap.first);
-                               MacEvent scan(now, mac, ap.second);
-                               _D("send fake scan (%s, %s)", ap.first.c_str(), ap.second.c_str());
-                               __listener->onWifiScan(scan);
-                       }
-               }
-       } else {
-               __wifiScanRequest();
-       }
-       return __timerOn;
-}
-
-void ctx::WifiLogger::startLogging()
-{
-       _D("");
-       __started = true;
-       __startLogging();
-}
-
-void ctx::WifiLogger::__startLogging()
-{
-       _D("");
-       if (!__checkWifiIsActivated() || __running)
-               return;
-       __running = true;
-
-       if (WIFI_LOGGER_ACTIVE_SCANNING) {
-               __timerStart(__intervalMinutes);
-               __wifiScanRequest();
-       }
-       if (WIFI_LOGGER_PASSIVE_SCANNING)
-               __wifiSetBackgroundScanCbRequest();
-}
-
-void ctx::WifiLogger::stopLogging()
-{
-       _D("");
-       __started = false;
-       __stopLogging();
-}
-
-void ctx::WifiLogger::__stopLogging()
-{
-       _D("");
-       if (!__running)
-               return;
-       if (WIFI_LOGGER_ACTIVE_SCANNING) {
-               // Unset timer
-               __timerOn = false;
-               // Remove timer
-               __timerManager.remove(__timerId);
-       }
-       if (WIFI_LOGGER_PASSIVE_SCANNING)
-               __wifiWrapper.unsetBackgroundScanCb();
-       __running = false;
-}
-
-void ctx::WifiLogger::__timerStart(time_t minutes)
-{
-       __timerOn = true;
-       __timerId = __timerManager.setFor(minutes, this);
-       _D("%s (minutes=%d)", __timerId >= 0 ? "SUCCESS" : "ERROR", minutes);
-}
-
-void ctx::WifiLogger::onVisitStart()
-{
-       _D("");
-       __duringVisit = true;
-}
-
-void ctx::WifiLogger::onVisitEnd()
-{
-       _D("__lastScansPool.clear()");
-       __duringVisit = false;
-       __lastScansPool.clear();
-}
-
-void ctx::WifiLogger::__setInterval(PlaceRecogMode energyMode)
-{
-       switch (energyMode) {
-       case PLACE_RECOG_LOW_POWER_MODE:
-               __intervalMinutes = WIFI_LOGGER_INTERVAL_MINUTES_LOW_POWER;
-               break;
-       case PLACE_RECOG_HIGH_ACCURACY_MODE:
-               __intervalMinutes = WIFI_LOGGER_INTERVAL_MINUTES_HIGH_ACCURACY;
-               break;
-       default:
-               _E("Incorrect energy mode");
-       }
-}
-
-void ctx::WifiLogger::__timerRestart()
-{
-       __timerManager.remove(__timerId);
-       __timerStart(__intervalMinutes);
-}
-
-void ctx::WifiLogger::setMode(PlaceRecogMode energyMode)
-{
-       _D("");
-       __setInterval(energyMode);
-       if (WIFI_LOGGER_ACTIVE_SCANNING && __timerOn)
-               __timerRestart();
-}
diff --git a/src/my-place/visit-detector/WifiLogger.h b/src/my-place/visit-detector/WifiLogger.h
deleted file mode 100644 (file)
index cc052fc..0000000
+++ /dev/null
@@ -1,119 +0,0 @@
-/*
- * Copyright (c) 2016 Samsung Electronics Co., Ltd.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef _CONTEXT_PLACE_RECOGNITION_WIFI_LOGGER_H_
-#define _CONTEXT_PLACE_RECOGNITION_WIFI_LOGGER_H_
-
-#include <WifiWrapper.h>
-#include <time.h>
-#include <vector>
-#include <map>
-#include <TimerManager.h>
-#include "WifiListenerIface.h"
-#include "VisitListenerIface.h"
-#include <UserPlacesParams.h>
-
-/* Database usage flag */
-#define WIFI_LOGGER_DATABASE false
-
-/* Active scanning usage flag */
-#define WIFI_LOGGER_ACTIVE_SCANNING true
-
-/* Passive scanning usage flag */
-#define WIFI_LOGGER_PASSIVE_SCANNING true
-
-/* Active scanning minimum interval in seconds */
-#define WIFI_LOGGER_ACTIVE_SCANNING_MIN_INTERVAL 10
-
-/*
- * Low power scanning usage flag
- * (When phone is connected to some WiFi Access Point
- * last scan data is returned instead of new scan triggering)
- */
-#define WIFI_LOGGER_LOW_POWER_MODE false
-
-namespace ctx {
-
-       class WifiLogger : public ITimerListener, public IVisitListener {
-
-       public:
-               WifiLogger(IWifiListener * listener = nullptr,
-                               PlaceRecogMode energyMode = PLACE_RECOG_HIGH_ACCURACY_MODE);
-               ~WifiLogger();
-
-               void startLogging();
-               void stopLogging();
-               void setMode(PlaceRecogMode energyMode);
-
-       private:
-               /* INPUT */
-               void onVisitStart();
-               void onVisitEnd();
-
-               bool onTimerExpired(int timerId);
-
-               /* TIMER */
-               bool __timerOn;
-               int __timerId;
-               int __intervalMinutes;
-               TimerManager __timerManager;
-               void __setInterval(PlaceRecogMode energyMode);
-               bool __checkTimerId(int id);
-               bool __checkTimerTime(time_t now);
-               void __timerStart(time_t minutes);
-               void __timerRestart();
-
-               /* DATABASE */
-               static int __dbCreateTable();
-               int __dbInsertLogs();
-
-               /* SYSTEM CAPI WRAPPERS */
-               WifiWrapper __wifiWrapper;
-               void __wifiSetBackgroundScanCbRequest();
-               void __wifiSetDeviceStateChangedCbRequest();
-               void __wifiSetConnectionStateChangedCbRequest();
-               bool __checkWifiIsActivated();
-               void __wifiScanRequest();
-               int __wifiForeachFoundApsRequest(void *userData);
-               wifi_connection_state_e __wifiGetConnectionStateRequest();
-               int __wifiApGetEssidRequest(wifi_ap_h ap, std::string &essid);
-               int __wifiApGetBssidRequest(wifi_ap_h ap, std::string &bssid);
-
-               /* SYSTEM CAPI CALLBACKS */
-               static void __wifiDeviceStateChangedCb(wifi_device_state_e state, void *userData);
-               static void __wifiConnectionStateChangedCb(wifi_connection_state_e state, wifi_ap_h ap, void *userData);
-               static bool __wifiFoundApCb(wifi_ap_h ap, void *userData);
-               static void __wifiScanFinishedCb(wifi_error_e errorCode, void *userData);
-
-               IWifiListener * const __listener;
-               std::vector<MacEvent> __logs;
-               std::map<std::string, std::string> __lastScansPool; // Mac address to network name map
-               time_t __lastScanTime;
-               time_t __lasTimerCallbackTime;
-               bool __duringVisit;
-               bool __connectedToWifiAp;
-               bool __started;
-               bool __running;
-
-               void __startLogging();
-               void __stopLogging();
-               static const char* __wifiError2Str(int error);
-
-       };      /* class WifiLogger */
-
-}      /* namespace ctx */
-
-#endif /* End of _CONTEXT_PLACE_RECOGNITION_WIFI_LOGGER_H_ */
index 6c5955d..8988a9d 100644 (file)
@@ -62,13 +62,13 @@ ClientInfo::~ClientInfo()
        __uninstallMonitor = NULL;
 }
 
-int ClientInfo::get(std::string subject, std::string pkgId, Json& option)
+int ClientInfo::get(std::string subject, std::string pkgId, CtxJson1& option)
 {
        IF_FAIL_RETURN_TAG(__dbMgr, ERR_OPERATION_FAILED, _W, "DB not initialized");
 
        bool ret;
        std::string optStr;
-       std::vector<Json> records;
+       std::vector<CtxJson1> records;
        char *query = sqlite3_mprintf(
                        "SELECT " KEY_OPTION " FROM " CLIENT_INFO " WHERE " \
                        KEY_SUBJECT "='%q' AND " KEY_PKG_ID "='%q'",
@@ -86,13 +86,13 @@ int ClientInfo::get(std::string subject, std::string pkgId, Json& option)
        return ERR_NONE;
 }
 
-int ClientInfo::get(std::string subject, std::vector<Json>& options)
+int ClientInfo::get(std::string subject, std::vector<CtxJson1>& options)
 {
        IF_FAIL_RETURN_TAG(__dbMgr, ERR_OPERATION_FAILED, _W, "DB not initialized");
 
        bool ret;
        std::string optStr;
-       std::vector<Json> records;
+       std::vector<CtxJson1> records;
        char *query = sqlite3_mprintf(
                        "SELECT " KEY_OPTION " FROM " CLIENT_INFO " WHERE " \
                        KEY_SUBJECT "='%q'",
@@ -104,10 +104,10 @@ int ClientInfo::get(std::string subject, std::vector<Json>& options)
        IF_FAIL_RETURN(ret, ERR_OPERATION_FAILED);
        IF_FAIL_RETURN(!records.empty(), ERR_NO_DATA);
 
-       for (Json& jObj : records) {
+       for (CtxJson1& jObj : records) {
                if (!jObj.get(NULL, KEY_OPTION, &optStr))
                        continue;
-               options.push_back(Json(optStr));
+               options.push_back(CtxJson1(optStr));
        }
 
        return ERR_NONE;
@@ -118,7 +118,7 @@ bool ClientInfo::exist(std::string subject)
        IF_FAIL_RETURN_TAG(__dbMgr, ERR_OPERATION_FAILED, _W, "DB not initialized");
 
        bool ret;
-       std::vector<Json> records;
+       std::vector<CtxJson1> records;
        char *query = sqlite3_mprintf(
                        "SELECT " KEY_PKG_ID " FROM " CLIENT_INFO " WHERE " \
                        KEY_SUBJECT "='%q' LIMIT 1",
@@ -133,7 +133,7 @@ bool ClientInfo::exist(std::string subject)
        return true;
 }
 
-bool ClientInfo::set(std::string subject, std::string pkgId, Json option, int retentionPeriod)
+bool ClientInfo::set(std::string subject, std::string pkgId, CtxJson1 option, int retentionPeriod)
 {
        IF_FAIL_RETURN_TAG(__dbMgr, false, _W, "DB not initialized");
 
@@ -164,11 +164,11 @@ bool ClientInfo::remove(std::string subject, std::string pkgId)
        return ret;
 }
 
-void ClientInfo::getParam(std::vector<Json> &options, const char *key, float *min, float *max)
+void ClientInfo::getParam(std::vector<CtxJson1> &options, const char *key, float *min, float *max)
 {
        double val;
 
-       for (Json& opt : options) {
+       for (CtxJson1& opt : options) {
                if (!opt.get(NULL, key, &val))
                        continue;
                if (min)
@@ -184,7 +184,7 @@ void ClientInfo::purgeClient(std::string pkgId)
 
        bool ret;
        std::string subject;
-       std::vector<Json> records;
+       std::vector<CtxJson1> records;
 
        char *query = sqlite3_mprintf(
                        "SELECT " KEY_SUBJECT " FROM " CLIENT_INFO " WHERE " KEY_PKG_ID "='%q'",
@@ -194,7 +194,7 @@ void ClientInfo::purgeClient(std::string pkgId)
        sqlite3_free(query);
        IF_FAIL_VOID(ret);
 
-       for (Json& jObj : records) {
+       for (CtxJson1& jObj : records) {
                if (!jObj.get(NULL, KEY_SUBJECT, &subject))
                        continue;
                _I("Stop recording '%s' for '%s'", subject.c_str(), pkgId.c_str());
index e3ee643..0ea724a 100644 (file)
@@ -19,7 +19,7 @@
 
 #include <string>
 #include <vector>
-#include <Json.h>
+#include <CtxJson1.h>
 #include <DatabaseManager.h>
 #include "UninstallMonitor.h"
 
@@ -30,14 +30,14 @@ namespace ctx {
                ClientInfo();
                ~ClientInfo();
 
-               int get(std::string subject, std::string pkgId, Json& option);
-               int get(std::string subject, std::vector<Json>& options);
+               int get(std::string subject, std::string pkgId, CtxJson1& option);
+               int get(std::string subject, std::vector<CtxJson1>& options);
                bool exist(std::string subject);
 
-               bool set(std::string subject, std::string pkgId, Json option, int retentionPeriod);
+               bool set(std::string subject, std::string pkgId, CtxJson1 option, int retentionPeriod);
                bool remove(std::string subject, std::string pkgId);
 
-               void getParam(std::vector<Json>& options, const char *key, float *min, float *max);
+               void getParam(std::vector<CtxJson1>& options, const char *key, float *min, float *max);
 
                static void purgeClient(std::string pkgId);
 
index feec0b3..a053255 100644 (file)
@@ -20,7 +20,7 @@
 
 using namespace ctx;
 
-Querier::Querier(ContextProvider *provider, Json option) :
+Querier::Querier(ContextProvider *provider, CtxJson1 option) :
        __provider(provider),
        __option(option)
 {
@@ -59,22 +59,22 @@ void Querier::onInserted(unsigned int queryId, int error, int64_t rowId)
 {
 }
 
-void Querier::onExecuted(unsigned int queryId, int error, std::vector<Json>& records)
+void Querier::onExecuted(unsigned int queryId, int error, std::vector<CtxJson1>& records)
 {
-       Json response;
+       CtxJson1 response;
        __convertToResponse(records, response);
        __provider->replyToRead(__option, error, response);
        delete this;
 }
 
-void Querier::__convertToResponse(std::vector<Json> &sqlResult, Json &response)
+void Querier::__convertToResponse(std::vector<CtxJson1> &sqlResult, CtxJson1 &response)
 {
        std::list<std::string> keys;
        std::string val;
 
        response.set(NULL, KEY_RESULT_SIZE, static_cast<int>(sqlResult.size()));
 
-       for (Json &tuple : sqlResult) {
+       for (CtxJson1 &tuple : sqlResult) {
                tuple.getKeys(&keys);
                for (std::string &key : keys) {
                        tuple.get(NULL, key.c_str(), &val);
index 0eed203..44dc376 100644 (file)
@@ -24,7 +24,7 @@ namespace ctx {
 
        class Querier : public IDatabaseListener {
        public:
-               Querier(ContextProvider *provider, Json option);
+               Querier(ContextProvider *provider, CtxJson1 option);
                virtual ~Querier();
 
                virtual int queryRaw(int startTime, int endTime);
@@ -35,14 +35,14 @@ namespace ctx {
                int query(const char *sql);
                void onTableCreated(unsigned int queryId, int error);
                void onInserted(unsigned int queryId, int error, int64_t rowId);
-               void onExecuted(unsigned int queryId, int error, std::vector<Json>& records);
+               void onExecuted(unsigned int queryId, int error, std::vector<CtxJson1>& records);
 
        private:
-               void __convertToResponse(std::vector<Json> &sqlResult, Json &response);
+               void __convertToResponse(std::vector<CtxJson1> &sqlResult, CtxJson1 &response);
 
                DatabaseManager __dbMgr;
                ContextProvider *__provider;
-               Json __option;
+               CtxJson1 __option;
        };
 }
 
index 47d5269..6bf6ee5 100644 (file)
@@ -37,17 +37,17 @@ SensorProvider::~SensorProvider()
        delete sensorLogger;
 }
 
-int SensorProvider::subscribe(Json option, Json *requestResult)
+int SensorProvider::subscribe(CtxJson1 option, CtxJson1 *requestResult)
 {
        return ERR_NONE;
 }
 
-int SensorProvider::unsubscribe(Json option)
+int SensorProvider::unsubscribe(CtxJson1 option)
 {
        return ERR_NONE;
 }
 
-int SensorProvider::read(Json option, Json *requestResult)
+int SensorProvider::read(CtxJson1 option, CtxJson1 *requestResult)
 {
        int endTime = static_cast<int>(time(NULL)) + 1;
        int startTime = endTime - DEFAULT_QUERY_PERIOD - 1;
@@ -94,13 +94,13 @@ int SensorProvider::read(Json option, Json *requestResult)
        return ret;
 }
 
-int SensorProvider::write(Json data, Json *requestResult)
+int SensorProvider::write(CtxJson1 data, CtxJson1 *requestResult)
 {
        IF_FAIL_RETURN(sensorLogger, ERR_OPERATION_FAILED);
 
        std::string operation;
        std::string pkgId;
-       Json option;
+       CtxJson1 option;
        int retentionPeriod = DEFAULT_RETENTION;
 
        _J("Data", data);
@@ -125,16 +125,16 @@ int SensorProvider::write(Json data, Json *requestResult)
        return ERR_NOT_SUPPORTED;
 }
 
-bool SensorProvider::verifyOption(Json option)
+bool SensorProvider::verifyOption(CtxJson1 option)
 {
        std::list<std::string> keys;
        option.getKeys(&keys);
        return keys.size() == 0;
 }
 
-int SensorProvider::__addClient(std::string pkgId, int retentionPeriod, Json option)
+int SensorProvider::__addClient(std::string pkgId, int retentionPeriod, CtxJson1 option)
 {
-       Json tmp;
+       CtxJson1 tmp;
        int ret;
 
        /* Validate the retention period */
@@ -157,7 +157,7 @@ int SensorProvider::__addClient(std::string pkgId, int retentionPeriod, Json opt
 
 int SensorProvider::__removeClient(std::string pkgId)
 {
-       std::vector<Json> options;
+       std::vector<CtxJson1> options;
        int ret;
 
        /* Remove the app's request first */
index 5b806a0..1fc7933 100644 (file)
@@ -30,21 +30,21 @@ namespace ctx {
                SensorProvider(const char *subject);
                virtual ~SensorProvider();
 
-               virtual int subscribe(Json option, Json *requestResult);
-               virtual int unsubscribe(Json option);
-               virtual int read(Json option, Json *requestResult);
-               virtual int write(Json data, Json *requestResult);
+               virtual int subscribe(CtxJson1 option, CtxJson1 *requestResult);
+               virtual int unsubscribe(CtxJson1 option);
+               virtual int read(CtxJson1 option, CtxJson1 *requestResult);
+               virtual int write(CtxJson1 data, CtxJson1 *requestResult);
 
                static void removeClient(std::string subject, std::string pkgId);
 
        protected:
-               virtual Querier* getQuerier(Json option) = 0;
-               virtual bool verifyOption(Json option);
+               virtual Querier* getQuerier(CtxJson1 option) = 0;
+               virtual bool verifyOption(CtxJson1 option);
 
                SensorLogger *sensorLogger;
 
        private:
-               int __addClient(std::string pkgId, int retentionPeriod, Json option);
+               int __addClient(std::string pkgId, int retentionPeriod, CtxJson1 option);
                int __removeClient(std::string pkgId);
 
                ClientInfo __clientInfo;
index 3afa98e..64709a0 100644 (file)
@@ -46,14 +46,14 @@ bool HeartRateProvider::isSupported()
        return util::getSystemInfoBool("tizen.org/feature/sensor.heart_rate_monitor");
 }
 
-Querier* HeartRateProvider::getQuerier(Json option)
+Querier* HeartRateProvider::getQuerier(CtxJson1 option)
 {
        HeartRateQuerier *querier = new(std::nothrow) HeartRateQuerier(this, option);
        IF_FAIL_RETURN_TAG(querier, NULL, _E, "Memory allocation failed");
        return querier;
 }
 
-bool HeartRateProvider::verifyOption(Json option)
+bool HeartRateProvider::verifyOption(CtxJson1 option)
 {
        std::list<std::string> keys;
        option.getKeys(&keys);
index 71f0812..63a0b62 100644 (file)
@@ -30,8 +30,8 @@ namespace ctx {
                void getPrivilege(std::vector<const char*> &privilege);
 
        protected:
-               Querier* getQuerier(Json option);
-               bool verifyOption(Json option);
+               Querier* getQuerier(CtxJson1 option);
+               bool verifyOption(CtxJson1 option);
        };
 }
 
index 8ef6895..9e9dcb1 100644 (file)
@@ -58,7 +58,7 @@ HeartRateLogger::~HeartRateLogger()
 
 bool HeartRateLogger::start()
 {
-       std::vector<Json> options;
+       std::vector<CtxJson1> options;
        ClientInfo clientInfo;
        float interval = MAX_MEASURING_INTERVAL;
 
index 1bae5a6..425b0b3 100644 (file)
@@ -26,7 +26,7 @@
 
 using namespace ctx;
 
-HeartRateQuerier::HeartRateQuerier(ContextProvider *provider, Json option) :
+HeartRateQuerier::HeartRateQuerier(ContextProvider *provider, CtxJson1 option) :
        Querier(provider, option)
 {
 }
index 335d902..113c792 100644 (file)
@@ -23,7 +23,7 @@ namespace ctx {
 
        class HeartRateQuerier : public Querier {
        public:
-               HeartRateQuerier(ContextProvider *provider, Json option);
+               HeartRateQuerier(ContextProvider *provider, CtxJson1 option);
                ~HeartRateQuerier();
 
                int queryRaw(int startTime, int endTime);
index 8752754..e0f6db2 100644 (file)
@@ -46,7 +46,7 @@ bool PedometerProvider::isSupported()
        return util::getSystemInfoBool("tizen.org/feature/sensor.pedometer");
 }
 
-Querier* PedometerProvider::getQuerier(Json option)
+Querier* PedometerProvider::getQuerier(CtxJson1 option)
 {
        PedometerQuerier *querier = new(std::nothrow) PedometerQuerier(this, option);
        IF_FAIL_RETURN_TAG(querier, NULL, _E, "Memory allocation failed");
index 7fee01f..8f43711 100644 (file)
@@ -30,7 +30,7 @@ namespace ctx {
                void getPrivilege(std::vector<const char*> &privilege);
 
        protected:
-               Querier* getQuerier(Json option);
+               Querier* getQuerier(CtxJson1 option);
        };
 }
 
index 3abf121..092d47e 100644 (file)
@@ -39,7 +39,7 @@
 
 using namespace ctx;
 
-PedometerQuerier::PedometerQuerier(ContextProvider *provider, Json option) :
+PedometerQuerier::PedometerQuerier(ContextProvider *provider, CtxJson1 option) :
        Querier(provider, option)
 {
 }
index 21af1e1..f77de6c 100644 (file)
@@ -23,7 +23,7 @@ namespace ctx {
 
        class PedometerQuerier : public Querier {
        public:
-               PedometerQuerier(ContextProvider *provider, Json option);
+               PedometerQuerier(ContextProvider *provider, CtxJson1 option);
                ~PedometerQuerier();
 
                int queryRaw(int startTime, int endTime);
index 76b60f4..c21cdd2 100644 (file)
@@ -41,7 +41,7 @@ bool PressureProvider::isSupported()
        return util::getSystemInfoBool("tizen.org/feature/sensor.barometer");
 }
 
-Querier* PressureProvider::getQuerier(Json option)
+Querier* PressureProvider::getQuerier(CtxJson1 option)
 {
        PressureQuerier *querier = new(std::nothrow) PressureQuerier(this, option);
        IF_FAIL_RETURN_TAG(querier, NULL, _E, "Memory allocation failed");
index 419cfba..4be6f6f 100644 (file)
@@ -29,7 +29,7 @@ namespace ctx {
                bool isSupported();
 
        protected:
-               Querier* getQuerier(Json option);
+               Querier* getQuerier(CtxJson1 option);
        };
 }
 
index 8d19638..1e7dd9f 100644 (file)
@@ -37,7 +37,7 @@
 
 using namespace ctx;
 
-PressureQuerier::PressureQuerier(ContextProvider *provider, Json option) :
+PressureQuerier::PressureQuerier(ContextProvider *provider, CtxJson1 option) :
        Querier(provider, option)
 {
 }
index 1bd9aa6..2114de4 100644 (file)
@@ -23,7 +23,7 @@ namespace ctx {
 
        class PressureQuerier : public Querier {
        public:
-               PressureQuerier(ContextProvider *provider, Json option);
+               PressureQuerier(ContextProvider *provider, CtxJson1 option);
                ~PressureQuerier();
 
                int queryRaw(int startTime, int endTime);
index 3ae40c9..688d587 100644 (file)
@@ -46,7 +46,7 @@ bool SleepProvider::isSupported()
        return util::getSystemInfoBool("tizen.org/feature/sensor.sleep_monitor");
 }
 
-Querier* SleepProvider::getQuerier(Json option)
+Querier* SleepProvider::getQuerier(CtxJson1 option)
 {
        SleepQuerier *querier = new(std::nothrow) SleepQuerier(this, option);
        IF_FAIL_RETURN_TAG(querier, NULL, _E, "Memory allocation failed");
index c93310e..7d69758 100644 (file)
@@ -30,7 +30,7 @@ namespace ctx {
                bool isSupported();
 
        protected:
-               Querier* getQuerier(Json option);
+               Querier* getQuerier(CtxJson1 option);
        };
 }
 
index 1a8f8dc..e841c53 100644 (file)
@@ -26,7 +26,7 @@
 
 using namespace ctx;
 
-SleepQuerier::SleepQuerier(ContextProvider *provider, Json option) :
+SleepQuerier::SleepQuerier(ContextProvider *provider, CtxJson1 option) :
        Querier(provider, option)
 {
 }
index 7ba674f..aad94b7 100644 (file)
@@ -23,7 +23,7 @@ namespace ctx {
 
        class SleepQuerier : public Querier {
        public:
-               SleepQuerier(ContextProvider *provider, Json option);
+               SleepQuerier(ContextProvider *provider, CtxJson1 option);
                ~SleepQuerier();
 
                int queryRaw(int startTime, int endTime);
index cae85ab..f736cd7 100644 (file)
@@ -34,7 +34,7 @@ bool BasicProvider::isSupported()
        return true;
 }
 
-int BasicProvider::subscribe(Json option, Json *requestResult)
+int BasicProvider::subscribe(CtxJson1 option, CtxJson1 *requestResult)
 {
        IF_FAIL_RETURN(!__beingSubscribed, ERR_NONE);
 
@@ -46,7 +46,7 @@ int BasicProvider::subscribe(Json option, Json *requestResult)
        return ret;
 }
 
-int BasicProvider::unsubscribe(Json option)
+int BasicProvider::unsubscribe(CtxJson1 option)
 {
        int ret = ERR_NONE;
 
@@ -56,12 +56,12 @@ int BasicProvider::unsubscribe(Json option)
        return ret;
 }
 
-int BasicProvider::read(Json option, Json *requestResult)
+int BasicProvider::read(CtxJson1 option, CtxJson1 *requestResult)
 {
        return read();
 }
 
-int BasicProvider::write(Json data, Json *requestResult)
+int BasicProvider::write(CtxJson1 data, CtxJson1 *requestResult)
 {
        return write(data);
 }
@@ -81,7 +81,7 @@ int BasicProvider::read()
        return ERR_NOT_SUPPORTED;
 }
 
-int BasicProvider::write(Json &data)
+int BasicProvider::write(CtxJson1 &data)
 {
        return ERR_NOT_SUPPORTED;
 }
index 7ce9f02..5cb5930 100644 (file)
@@ -26,10 +26,10 @@ namespace ctx {
           parameter to reply to clients' requests immediately. */
        class SO_EXPORT BasicProvider : public ContextProvider {
        public:
-               int subscribe(Json option, Json *requestResult);
-               int unsubscribe(Json option);
-               int read(Json option, Json *requestResult);
-               int write(Json data, Json *requestResult);
+               int subscribe(CtxJson1 option, CtxJson1 *requestResult);
+               int unsubscribe(CtxJson1 option);
+               int read(CtxJson1 option, CtxJson1 *requestResult);
+               int write(CtxJson1 data, CtxJson1 *requestResult);
 
                virtual bool isSupported();
 
@@ -42,7 +42,7 @@ namespace ctx {
                virtual int subscribe();
                virtual int unsubscribe();
                virtual int read();
-               virtual int write(Json &data);
+               virtual int write(CtxJson1 &data);
        };
 }
 
index 0bf238c..c55a3c1 100644 (file)
@@ -67,7 +67,7 @@ int StatsDbHandleBase::generateQid()
        return qid;
 }
 
-bool StatsDbHandleBase::executeQuery(Json filter, const char* query)
+bool StatsDbHandleBase::executeQuery(CtxJson1 filter, const char* query)
 {
        bool ret = __dbManager.execute(generateQid(), query, this);
        IF_FAIL_RETURN(ret, false);
@@ -77,7 +77,7 @@ bool StatsDbHandleBase::executeQuery(Json filter, const char* query)
        return true;
 }
 
-std::string StatsDbHandleBase::createWhereClause(Json filter)
+std::string StatsDbHandleBase::createWhereClause(CtxJson1 filter)
 {
        std::stringstream whereClause;
        int week = 0;
@@ -167,7 +167,7 @@ std::string StatsDbHandleBase::createWhereClause(Json filter)
        return whereClause.str();
 }
 
-std::string StatsDbHandleBase::createSqlPeakTime(Json filter, const char* tableName, std::string whereClause)
+std::string StatsDbHandleBase::createSqlPeakTime(CtxJson1 filter, const char* tableName, std::string whereClause)
 {
        std::stringstream query;
        int limit = DEFAULT_LIMIT;
@@ -186,7 +186,7 @@ std::string StatsDbHandleBase::createSqlPeakTime(Json filter, const char* tableN
        return query.str();
 }
 
-std::string StatsDbHandleBase::createSqlCommonSetting(Json filter, const char* tableName, std::string whereClause)
+std::string StatsDbHandleBase::createSqlCommonSetting(CtxJson1 filter, const char* tableName, std::string whereClause)
 {
        std::stringstream query;
 
@@ -222,28 +222,28 @@ void StatsDbHandleBase::onInserted(unsigned int queryId, int error, int64_t rowI
        delete this;
 }
 
-void StatsDbHandleBase::__jsonVectorToArray(std::vector<Json> &vecJson, Json &jsonResult)
+void StatsDbHandleBase::__jsonVectorToArray(std::vector<CtxJson1> &vecJson, CtxJson1 &jsonResult)
 {
-       std::vector<Json>::iterator vecJsonEnd = vecJson.end();
+       std::vector<CtxJson1>::iterator vecJsonEnd = vecJson.end();
 
        for(auto vecJsonPos = vecJson.begin(); vecJsonPos != vecJsonEnd; ++vecJsonPos) {
-               Json originJson = *vecJsonPos;
+               CtxJson1 originJson = *vecJsonPos;
                jsonResult.append(NULL, KEY_QUERY_RESULT, originJson);
        }
 }
 
-void StatsDbHandleBase::onExecuted(unsigned int queryId, int error, std::vector<Json>& records)
+void StatsDbHandleBase::onExecuted(unsigned int queryId, int error, std::vector<CtxJson1>& records)
 {
        if (isTriggerItem) {
                if (records.size() == 1) {
                        replyTriggerItem(error, records[0]);
                } else {
                        _E("Invalid query result");
-                       Json dummy;
+                       CtxJson1 dummy;
                        reqProvider->replyToRead(reqFilter, ERR_OPERATION_FAILED, dummy);
                }
        } else {
-               Json results = "{\"" KEY_QUERY_RESULT "\":[]}";
+               CtxJson1 results = "{\"" KEY_QUERY_RESULT "\":[]}";
                __jsonVectorToArray(records, results);
                reqProvider->replyToRead(reqFilter, error, results);
        }
index 3404821..579e1eb 100644 (file)
@@ -26,25 +26,25 @@ namespace ctx {
        protected:
                bool isTriggerItem;
                ContextProvider *reqProvider;
-               Json reqFilter;
+               CtxJson1 reqFilter;
 
                StatsDbHandleBase(ContextProvider *provider);
                ~StatsDbHandleBase();
 
-               std::string createWhereClause(Json filter);
-               std::string createSqlPeakTime(Json filter, const char* tableName, std::string whereClause);
-               std::string createSqlCommonSetting(Json filter, const char* tableName, std::string whereClause);
+               std::string createWhereClause(CtxJson1 filter);
+               std::string createSqlPeakTime(CtxJson1 filter, const char* tableName, std::string whereClause);
+               std::string createSqlCommonSetting(CtxJson1 filter, const char* tableName, std::string whereClause);
 
-               bool executeQuery(Json filter, const char* query);
-               virtual void replyTriggerItem(int error, Json &jsonResult) = 0;
+               bool executeQuery(CtxJson1 filter, const char* query);
+               virtual void replyTriggerItem(int error, CtxJson1 &jsonResult) = 0;
                static int generateQid();
 
        private:
-               void __jsonVectorToArray(std::vector<Json> &vecJson, Json &jsonResult);
+               void __jsonVectorToArray(std::vector<CtxJson1> &vecJson, CtxJson1 &jsonResult);
 
                void onTableCreated(unsigned int queryId, int error);
                void onInserted(unsigned int queryId, int error, int64_t rowId);
-               void onExecuted(unsigned int queryId, int error, std::vector<Json>& records);
+               void onExecuted(unsigned int queryId, int error, std::vector<CtxJson1>& records);
 
                DatabaseManager __dbManager;
        };
index 7e1b6cc..e9e498d 100644 (file)
@@ -31,7 +31,7 @@ SocialDbHandle::~SocialDbHandle()
 {
 }
 
-int SocialDbHandle::read(Json filter)
+int SocialDbHandle::read(CtxJson1 filter)
 {
        std::string query;
        const char *subject = reqProvider->getSubject();
@@ -52,7 +52,7 @@ int SocialDbHandle::read(Json filter)
        return ERR_NONE;
 }
 
-std::string SocialDbHandle::createWhereClause(Json filter)
+std::string SocialDbHandle::createWhereClause(CtxJson1 filter)
 {
        std::stringstream whereClause;
        int commType = -1;
@@ -79,7 +79,7 @@ std::string SocialDbHandle::createWhereClause(Json filter)
        return whereClause.str();
 }
 
-std::string SocialDbHandle::createSqlFreqAddress(Json filter)
+std::string SocialDbHandle::createSqlFreqAddress(CtxJson1 filter)
 {
        std::stringstream query;
        int limit = DEFAULT_LIMIT;
@@ -100,9 +100,9 @@ std::string SocialDbHandle::createSqlFreqAddress(Json filter)
        return query.str();
 }
 
-std::string SocialDbHandle::createSqlFrequency(Json filter)
+std::string SocialDbHandle::createSqlFrequency(CtxJson1 filter)
 {
-       Json filterCleaned;
+       CtxJson1 filterCleaned;
        std::string weekStr;
        std::string timeOfDay;
        std::string address;
@@ -145,11 +145,11 @@ std::string SocialDbHandle::createSqlFrequency(Json filter)
        return query.str();
 }
 
-void SocialDbHandle::replyTriggerItem(int error, Json &jsonResult)
+void SocialDbHandle::replyTriggerItem(int error, CtxJson1 &jsonResult)
 {
        IF_FAIL_VOID_TAG(STR_EQ(reqProvider->getSubject(), SOCIAL_SUBJ_FREQUENCY), _E, "Invalid subject");
 
-       Json results;
+       CtxJson1 results;
        std::string valStr;
        int val;
 
index 576c6a1..15629bb 100644 (file)
@@ -18,7 +18,7 @@
 #define _CONTEXT_STATS_SOCIAL_DB_HANDLE_H_
 
 #include <string>
-#include <Json.h>
+#include <CtxJson1.h>
 #include "../shared/DbHandleBase.h"
 
 namespace ctx {
@@ -27,13 +27,13 @@ namespace ctx {
                SocialDbHandle(ContextProvider *provider);
                ~SocialDbHandle();
 
-               int read(Json filter);
+               int read(CtxJson1 filter);
 
        protected:
-               std::string createWhereClause(Json filter);
-               std::string createSqlFreqAddress(Json filter);
-               std::string createSqlFrequency(Json filter);
-               void replyTriggerItem(int error, Json &jsonResult);
+               std::string createWhereClause(CtxJson1 filter);
+               std::string createSqlFreqAddress(CtxJson1 filter);
+               std::string createSqlFrequency(CtxJson1 filter);
+               void replyTriggerItem(int error, CtxJson1 &jsonResult);
        };
 }
 
index fc7576f..dffc67f 100644 (file)
@@ -15,7 +15,7 @@
  */
 
 #include <sstream>
-#include <Json.h>
+#include <CtxJson1.h>
 #include <Types.h>
 #include "SocialStatisticsTypes.h"
 #include "LogAggregator.h"
@@ -46,7 +46,7 @@ void ctx::ContactLogAggregator::__aggregateContactLog()
                        " FROM " SOCIAL_TABLE_CONTACT_LOG, this);
 }
 
-void ctx::ContactLogAggregator::onExecuted(unsigned int queryId, int error, std::vector<Json>& records)
+void ctx::ContactLogAggregator::onExecuted(unsigned int queryId, int error, std::vector<CtxJson1>& records)
 {
        IF_FAIL_VOID_TAG(!records.empty(), _E, "Invalid query result");
 
@@ -128,7 +128,7 @@ void ctx::ContactLogAggregator::__insertContactLogList(contacts_list_h list)
                contacts_list_get_current_record_p(list, &record);
                if (record == NULL) break;
 
-               ctx::Json data;
+               ctx::CtxJson1 data;
 
                char* address = NULL;
                int logType;
index bd226f3..b9bc48e 100644 (file)
@@ -40,7 +40,7 @@ namespace ctx {
 
                void onTableCreated(unsigned int queryId, int error) {}
                void onInserted(unsigned int queryId, int error, int64_t rowId) {}
-               void onExecuted(unsigned int queryId, int error, std::vector<Json>& records);
+               void onExecuted(unsigned int queryId, int error, std::vector<CtxJson1>& records);
 
        };      /* class ContactLogAggregator */
 
index 552473c..566a718 100644 (file)
@@ -48,7 +48,7 @@ bool SocialStatsProvider::isSupported()
        return true;
 }
 
-int SocialStatsProvider::read(Json option, Json* requestResult)
+int SocialStatsProvider::read(CtxJson1 option, CtxJson1* requestResult)
 {
        SocialDbHandle *handle = new(std::nothrow) SocialDbHandle(this);
        IF_FAIL_RETURN_TAG(handle, ERR_OPERATION_FAILED, _E, "Memory allocation failed");
index 79893f2..1ce6345 100644 (file)
@@ -24,7 +24,7 @@ namespace ctx {
 
        class SocialStatsProvider : public ContextProvider {
        public:
-               int read(Json option, Json* requestResult);
+               int read(CtxJson1 option, CtxJson1* requestResult);
                bool isSupported();
                void getPrivilege(std::vector<const char*> &privilege);
 
index 9ffbf9b..e82ff3d 100644 (file)
@@ -47,7 +47,7 @@ void BatteryStateProvider::__handleUpdate(device_callback_e deviceType, void* va
        const char* levelString = __transToString(level);
        IF_FAIL_VOID(levelString);
 
-       Json dataRead;
+       CtxJson1 dataRead;
        dataRead.set(NULL, KEY_LEVEL, levelString);
 
        bool chargingState = false;
@@ -109,7 +109,7 @@ int BatteryStateProvider::unsubscribe()
 int BatteryStateProvider::read()
 {
        device_battery_level_e level;
-       Json dataRead;
+       CtxJson1 dataRead;
 
        int ret = device_battery_get_level_status(&level);
        IF_FAIL_RETURN(ret == DEVICE_ERROR_NONE, ERR_OPERATION_FAILED);
index 1d65275..12b578a 100644 (file)
@@ -39,7 +39,7 @@ void ChargerStateProvider::handleUpdate()
        int ret = runtime_info_get_value_bool(RUNTIME_INFO_KEY_CHARGER_CONNECTED, &chargerStatus);
        IF_FAIL_VOID_TAG(ret == RUNTIME_INFO_ERROR_NONE, _E, "Getting runtime info failed");
 
-       Json dataRead;
+       CtxJson1 dataRead;
        dataRead.set(NULL, KEY_IS_CONNECTED, chargerStatus ? VAL_TRUE : VAL_FALSE);
 
        publish(NULL, ERR_NONE, dataRead);
@@ -48,7 +48,7 @@ void ChargerStateProvider::handleUpdate()
 int ChargerStateProvider::read()
 {
        bool chargerStatus = false;
-       Json dataRead;
+       CtxJson1 dataRead;
 
        int ret = runtime_info_get_value_bool(RUNTIME_INFO_KEY_CHARGER_CONNECTED, &chargerStatus);
        IF_FAIL_RETURN_TAG(ret == RUNTIME_INFO_ERROR_NONE, ERR_OPERATION_FAILED, _E, "Getting runtime info failed");
index 284600e..9526cfd 100644 (file)
@@ -57,7 +57,7 @@ void GpsStateProvider::handleUpdate()
        int ret = runtime_info_get_value_int(RUNTIME_INFO_KEY_GPS_STATUS, &gpsStatus);
        IF_FAIL_VOID_TAG(ret == RUNTIME_INFO_ERROR_NONE, _E, "Getting runtime info failed");
 
-       Json dataRead;
+       CtxJson1 dataRead;
 
        const char* stateStr = __getStatusString(gpsStatus);
        IF_FAIL_VOID(stateStr);
@@ -70,7 +70,7 @@ void GpsStateProvider::handleUpdate()
 int GpsStateProvider::read()
 {
        int gpsStatus;
-       Json dataRead;
+       CtxJson1 dataRead;
 
        int ret = runtime_info_get_value_int(RUNTIME_INFO_KEY_GPS_STATUS, &gpsStatus);
        IF_FAIL_RETURN_TAG(ret == RUNTIME_INFO_ERROR_NONE, ERR_OPERATION_FAILED, _E, "Getting runtime info failed");
index 2c74948..d7de699 100644 (file)
@@ -41,7 +41,7 @@ void PowerSaveModeProvider::__updateCb(keynode_t *node, void* userData)
 void PowerSaveModeProvider::__handleUpdate(keynode_t *node)
 {
        int status;
-       Json dataRead;
+       CtxJson1 dataRead;
 
        status = vconf_keynode_get_int(node);
        IF_FAIL_VOID_TAG(status >= 0, _E, "Getting state failed");
@@ -71,7 +71,7 @@ int PowerSaveModeProvider::read()
        int ret = vconf_get_int(VCONFKEY_SETAPPL_PSMODE, &mode);
        IF_FAIL_RETURN(ret == VCONF_OK, ERR_OPERATION_FAILED);
 
-       Json dataRead;
+       CtxJson1 dataRead;
        dataRead.set(NULL, KEY_IS_ENABLED, mode == 0 ? VAL_FALSE : VAL_TRUE);
 
        replyToRead(NULL, ERR_NONE, dataRead);
index c017036..485b592 100644 (file)
@@ -40,7 +40,7 @@ void UsbStateProvider::handleUpdate()
        int ret = runtime_info_get_value_bool(RUNTIME_INFO_KEY_USB_CONNECTED, &status);
        IF_FAIL_VOID_TAG(ret == RUNTIME_INFO_ERROR_NONE, _E, "Getting runtime info failed");
 
-       Json dataRead;
+       CtxJson1 dataRead;
        dataRead.set(NULL, KEY_IS_CONNECTED, status ? VAL_TRUE : VAL_FALSE);
 
        publish(NULL, ERR_NONE, dataRead);
@@ -49,7 +49,7 @@ void UsbStateProvider::handleUpdate()
 int UsbStateProvider::read()
 {
        bool status = false;
-       Json dataRead;
+       CtxJson1 dataRead;
 
        int ret = runtime_info_get_value_bool(RUNTIME_INFO_KEY_USB_CONNECTED, &status);
        IF_FAIL_RETURN_TAG(ret == RUNTIME_INFO_ERROR_NONE, ERR_OPERATION_FAILED, _E, "Getting runtime info failed");
index 0d25628..0f71b85 100644 (file)
@@ -43,7 +43,7 @@ bool AlarmProvider::isSupported()
        return true;
 }
 
-int AlarmProvider::subscribe(Json option, Json *requestResult)
+int AlarmProvider::subscribe(CtxJson1 option, CtxJson1 *requestResult)
 {
        int dow = __getArrangedDayOfWeek(option);
 
@@ -52,7 +52,7 @@ int AlarmProvider::subscribe(Json option, Json *requestResult)
                __add(time, dow);
        }
 
-       Json* elem = new(std::nothrow) Json(option);
+       CtxJson1* elem = new(std::nothrow) CtxJson1(option);
        if (elem) {
                __optionSet.insert(elem);
        } else {
@@ -64,7 +64,7 @@ int AlarmProvider::subscribe(Json option, Json *requestResult)
        return ERR_NONE;
 }
 
-int AlarmProvider::unsubscribe(Json option)
+int AlarmProvider::unsubscribe(CtxJson1 option)
 {
        int dow = __getArrangedDayOfWeek(option);
 
@@ -82,7 +82,7 @@ int AlarmProvider::unsubscribe(Json option)
        return ERR_NONE;
 }
 
-int AlarmProvider::__getArrangedDayOfWeek(Json& option)
+int AlarmProvider::__getArrangedDayOfWeek(CtxJson1& option)
 {
        int dow = 0;
 
@@ -218,21 +218,21 @@ void AlarmProvider::__handleUpdate(int hour, int min, int dayOfWeek)
 {
        _I("Time: %02d:%02d, Day of Week: %#x", hour, min, dayOfWeek);
 
-       Json dataRead;
+       CtxJson1 dataRead;
        int resultTime = hour * 60 + min;
        std::string resultDay = TimerManager::dowToStr(dayOfWeek);
        dataRead.set(NULL, KEY_TIME_OF_DAY, resultTime);
        dataRead.set(NULL, KEY_DAY_OF_WEEK, resultDay);
 
        for (auto it = __optionSet.begin(); it != __optionSet.end(); ++it) {
-               Json option = (**it);
+               CtxJson1 option = (**it);
                if (__isMatched(option, resultTime, resultDay)) {
                        publish(option, ERR_NONE, dataRead);
                }
        }
 }
 
-bool AlarmProvider::__isMatched(Json& option, int time, std::string day)
+bool AlarmProvider::__isMatched(CtxJson1& option, int time, std::string day)
 {
        bool ret = false;
        int optionTime;
@@ -254,7 +254,7 @@ bool AlarmProvider::__isMatched(Json& option, int time, std::string day)
        return false;
 }
 
-AlarmProvider::OptionSet::iterator AlarmProvider::__findOption(Json& option)
+AlarmProvider::OptionSet::iterator AlarmProvider::__findOption(CtxJson1& option)
 {
        for (auto it = __optionSet.begin(); it != __optionSet.end(); ++it) {
                if (option == (**it))
index c0eb946..96a0400 100644 (file)
@@ -30,8 +30,8 @@ namespace ctx {
                AlarmProvider();
                ~AlarmProvider();
 
-               int subscribe(Json option, Json *requestResult);
-               int unsubscribe(Json option);
+               int subscribe(CtxJson1 option, CtxJson1 *requestResult);
+               int unsubscribe(CtxJson1 option);
 
                bool isSupported();
                void getPrivilege(std::vector<const char*> &privilege);
@@ -53,7 +53,7 @@ namespace ctx {
 
                typedef std::map<int, RefCountArray> RefCountMap;
                typedef std::map<int, TimerState> TimerStateMap;
-               typedef std::set<Json*> OptionSet;
+               typedef std::set<CtxJson1*> OptionSet;
 
                RefCountMap __refCountMap;
                TimerStateMap __timerStateMap;
@@ -66,11 +66,11 @@ namespace ctx {
                void __clear();
                void __handleUpdate(int hour, int min, int dayOfWeek);
 
-               int __getArrangedDayOfWeek(Json& option);
+               int __getArrangedDayOfWeek(CtxJson1& option);
                int __mergeDayOfWeek(int *refCnt);
 
-               bool __isMatched(Json& option, int time, std::string day);
-               OptionSet::iterator __findOption(Json& option);
+               bool __isMatched(CtxJson1& option, int time, std::string day);
+               OptionSet::iterator __findOption(CtxJson1& option);
        };
 }
 
index 3490be5..e5a50db 100644 (file)
@@ -56,7 +56,7 @@ int TimeProvider::read()
        int minuteOfDay = timeInfo.tm_hour * 60 + timeInfo.tm_min;
        std::string dayOfWeek = TimerManager::dowToStr(0x01 << timeInfo.tm_wday);
 
-       Json dataRead;
+       CtxJson1 dataRead;
        dataRead.set(NULL, KEY_DAY_OF_MONTH, dayOfMonth);
        dataRead.set(NULL, KEY_DAY_OF_WEEK, dayOfWeek);
        dataRead.set(NULL, KEY_TIME_OF_DAY, minuteOfDay);
index ad5cc87..d1b048b 100644 (file)
@@ -99,7 +99,7 @@ void WifiStateProvider::__clearBssid()
        _D("No WiFi connection");
 }
 
-bool WifiStateProvider::__getResponsePacket(Json* data)
+bool WifiStateProvider::__getResponsePacket(CtxJson1* data)
 {
        switch (__lastState) {
        case DISABLED:
@@ -126,7 +126,7 @@ int WifiStateProvider::read()
 {
        IF_FAIL_RETURN(__getCurrentState(), ERR_OPERATION_FAILED);
 
-       Json dataRead;
+       CtxJson1 dataRead;
        if (__getResponsePacket(&dataRead)) {
                replyToRead(NULL, ERR_NONE, dataRead);
                return ERR_NONE;
@@ -193,7 +193,7 @@ void WifiStateProvider::__handleUpdate()
                        __clearBssid();
                }
 
-               Json data;
+               CtxJson1 data;
                if (__beingSubscribed && __getResponsePacket(&data))
                        publish(NULL, ERR_NONE, data);
        }
index 360facb..b2c7fdf 100644 (file)
@@ -53,7 +53,7 @@ namespace ctx {
                bool __getCurrentState();
                bool __getBssid();
                void __clearBssid();
-               bool __getResponsePacket(Json* data);
+               bool __getResponsePacket(CtxJson1* data);
                void __handleUpdate();
                bool __startMonitor();
                void __stopMonitor();