From 0cf52a7b5ebc401f4a5952ce87c3549bc0ecdc93 Mon Sep 17 00:00:00 2001 From: sinthuja Date: Mon, 28 Nov 2016 00:58:35 +0530 Subject: [PATCH] Adding the geo fence first cut impl. --- .../build.xml | 38 + .../pom.xml | 138 + .../main/capp/Dashboard_1.0.0/artifact.xml | 23 + .../capp/Dashboard_1.0.0/geo-dashboard.json | 1 + .../GadgetGeoDashboard_1.0.0/artifact.xml | 4 + ...Geo-ExecutionPlan-Proximity_alert.siddhiql | 140 + .../Geo-ExecutionPlan-Speed_alert.siddhiql | 20 + ...eo-ExecutionPlan-Stationery_alert.siddhiql | 89 + .../Geo-ExecutionPlan-Traffic_alert.siddhiql | 17 + .../Geo-ExecutionPlan-Within_alert.siddhiql | 20 + .../geo-dashboard/conf/cep_info.json | 1 + .../geo-dashboard/conf/database.json | 1 + .../geo-dashboard/controllers/get_alerts.jag | 129 + .../controllers/get_alerts_history.jag | 42 + .../controllers/get_server_info.jag | 47 + .../controllers/modals/proximity_alert.jag | 98 + .../controllers/modals/speed_alert.jag | 52 + .../controllers/modals/stationery_alert.jag | 105 + .../controllers/modals/traffic_point.jag | 107 + .../controllers/modals/within_alert.jag | 100 + .../controllers/remove_alerts.jag | 74 + .../geo-dashboard/controllers/set_alerts.jag | 139 + .../controllers/tile_servers.jag | 87 + .../controllers/wms_endpoints.jag | 108 + .../geo-dashboard/css/L.Control.Locate.css | 31 + .../geo-dashboard/css/L.Control.Locate.ie.css | 14 + .../css/MarkerCluster.Default.css | 60 + .../geo-dashboard/css/MarkerCluster.css | 6 + .../geo-dashboard/css/app.css | 159 + .../css/bootstrap-wizard-lib/LICENSE | 19 + .../bootstrap-wizard-lib/bootstrap-wizard.css | 182 + .../geo-dashboard/css/bootstrap.min.css | 5 + .../geo-dashboard/css/css/animation.css | 85 + .../geo-dashboard/css/css/locate-fa-codes.css | 4 + .../css/css/locate-fa-embedded.css | 57 + .../css/css/locate-fa-ie7-codes.css | 4 + .../geo-dashboard/css/css/locate-fa-ie7.css | 15 + .../geo-dashboard/css/css/locate-fa.css | 72 + .../geo-dashboard/css/d3/c3.css | 203 ++ .../geo-dashboard/css/font-awesome.min.css | 4 + .../geo-dashboard/css/font/LICENSE.txt | 10 + .../geo-dashboard/css/font/README.txt | 75 + .../geo-dashboard/css/font/config.json | 28 + .../geo-dashboard/css/font/locate-fa.eot | Bin 0 -> 4944 bytes .../geo-dashboard/css/font/locate-fa.svg | 14 + .../geo-dashboard/css/font/locate-fa.ttf | Bin 0 -> 4772 bytes .../geo-dashboard/css/font/locate-fa.woff | Bin 0 -> 2924 bytes .../geo-dashboard/css/fonts/FontAwesome.otf | Bin 0 -> 75188 bytes .../css/fonts/fontawesome-webfont.eot | Bin 0 -> 72449 bytes .../css/fonts/fontawesome-webfont.svg | 504 +++ .../css/fonts/fontawesome-webfont.ttf | Bin 0 -> 141564 bytes .../css/fonts/fontawesome-webfont.woff | Bin 0 -> 83760 bytes ...O.Move_this_images_to_assets_images_folder | 0 .../geo-dashboard/css/images/layers-2x.png | Bin 0 -> 2898 bytes .../geo-dashboard/css/images/layers.png | Bin 0 -> 1502 bytes .../css/images/marker-icon-2x.png | Bin 0 -> 4033 bytes .../geo-dashboard/css/images/marker-icon.png | Bin 0 -> 1747 bytes .../css/images/marker-shadow.png | Bin 0 -> 797 bytes .../geo-dashboard/css/jquery-ui.min.css | 7 + .../geo-dashboard/css/jquery-ui.theme.min.css | 5 + .../geo-dashboard/css/leaflet.css | 478 +++ .../geo-dashboard/css/leaflet/L.Grid.css | 10 + .../css/leaflet/images/spritesheet-2x.png | Bin 0 -> 2078 bytes .../css/leaflet/images/spritesheet.png | Bin 0 -> 1056 bytes .../css/leaflet/leaflet.draw.css | 302 ++ .../css/leaflet_fullscreen/fullscreen.png | Bin 0 -> 142 bytes .../css/leaflet_fullscreen/fullscreen@2x.png | Bin 0 -> 155 bytes .../leaflet_fullscreen/leaflet.fullscreen.css | 34 + .../geo-dashboard/css/login.css | 66 + .../geo-dashboard/css/main.css | 81 + .../geo-dashboard/css/map.css | 54 + .../geo-dashboard/css/style.css | 34 + .../geo-dashboard/css/uikit/LICENSES | 7 + .../css/uikit/addons/uikit.addons.css | 1124 ++++++ .../css/uikit/addons/uikit.addons.min.css | 3 + .../uikit/addons/uikit.almost-flat.addons.css | 1205 +++++++ .../addons/uikit.almost-flat.addons.min.css | 3 + .../uikit/addons/uikit.gradient.addons.css | 1226 +++++++ .../addons/uikit.gradient.addons.min.css | 3 + .../geo-dashboard/css/uikit/uikit.min.css | 3 + .../geo-dashboard/gadget.json | 26 + .../geo-dashboard/img/fav/wso2_fav.png | Bin 0 -> 5343 bytes .../geo-dashboard/img/favicon-120.png | Bin 0 -> 8604 bytes .../geo-dashboard/img/favicon-152.png | Bin 0 -> 9625 bytes .../geo-dashboard/img/favicon-196.png | Bin 0 -> 12410 bytes .../geo-dashboard/img/favicon-76.png | Bin 0 -> 6063 bytes .../geo-dashboard/img/favicon.ico | Bin 0 -> 1150 bytes .../geo-dashboard/img/layers-2x.png | Bin 0 -> 2898 bytes .../geo-dashboard/img/layers.png | Bin 0 -> 1502 bytes .../geo-dashboard/img/marker-icon-2x.png | Bin 0 -> 4033 bytes .../geo-dashboard/img/marker-icon.png | Bin 0 -> 1747 bytes .../geo-dashboard/img/marker-shadow.png | Bin 0 -> 797 bytes .../geo-dashboard/img/markers/STOP.png | Bin 0 -> 1274 bytes .../geo-dashboard/img/markers/VEHICLE.png | Bin 0 -> 3009 bytes .../img/markers/arrow_alerted.png | Bin 0 -> 3499 bytes .../img/markers/arrow_normal.png | Bin 0 -> 3009 bytes .../img/markers/arrow_offline.png | Bin 0 -> 2970 bytes .../img/markers/arrow_warning.png | Bin 0 -> 3815 bytes .../geo-dashboard/img/markers/danger.png | Bin 0 -> 1747 bytes .../img/markers/default_icons/greenMarker.png | Bin 0 -> 2298 bytes .../img/markers/default_icons/marker-icon.png | Bin 0 -> 1747 bytes .../markers/default_icons/marker-shadow.png | Bin 0 -> 797 bytes .../img/markers/default_icons/pinkMarker.png | Bin 0 -> 2260 bytes .../img/markers/default_icons/redMarker.png | Bin 0 -> 4894 bytes .../geo-dashboard/img/markers/info.png | Bin 0 -> 1747 bytes .../img/markers/moving/device-alerted.png | Bin 0 -> 3499 bytes .../img/markers/moving/device-normal.png | Bin 0 -> 3009 bytes .../img/markers/moving/device-offline.png | Bin 0 -> 2970 bytes .../img/markers/moving/device-warning.png | Bin 0 -> 3815 bytes .../img/markers/non_moving/device-alerted.png | Bin 0 -> 3295 bytes .../img/markers/non_moving/device-normal.png | Bin 0 -> 3219 bytes .../img/markers/non_moving/device-offline.png | Bin 0 -> 3079 bytes .../img/markers/non_moving/device-warning.png | Bin 0 -> 4542 bytes .../markers/non_moving/stationary-alerted.png | Bin 0 -> 4894 bytes .../markers/non_moving/stationary-normal.png | Bin 0 -> 1747 bytes .../markers/non_moving/stationary-normal2.png | Bin 0 -> 2298 bytes .../markers/non_moving/stationary-offline.png | Bin 0 -> 2862 bytes .../markers/non_moving/stationary-warning.png | Bin 0 -> 2260 bytes .../object-types/default/moving/alerted.png | Bin 0 -> 3499 bytes .../object-types/default/moving/normal.png | Bin 0 -> 3009 bytes .../object-types/default/moving/offline.png | Bin 0 -> 2970 bytes .../object-types/default/moving/warning.png | Bin 0 -> 3815 bytes .../default/non-moving/alerted.png | Bin 0 -> 3295 bytes .../default/non-moving/normal.png | Bin 0 -> 3219 bytes .../default/non-moving/offline.png | Bin 0 -> 3079 bytes .../default/non-moving/warning.png | Bin 0 -> 4542 bytes .../stationary/non-moving/alerted.png | Bin 0 -> 4894 bytes .../stationary/non-moving/normal.png | Bin 0 -> 1747 bytes .../stationary/non-moving/normal2.png | Bin 0 -> 2298 bytes .../stationary/non-moving/offline.png | Bin 0 -> 2862 bytes .../stationary/non-moving/warning.png | Bin 0 -> 2260 bytes .../object-types/stop/non-moving/alerted.png | Bin 0 -> 4894 bytes .../object-types/stop/non-moving/normal.png | Bin 0 -> 1747 bytes .../object-types/stop/non-moving/normal2.png | Bin 0 -> 2298 bytes .../object-types/stop/non-moving/offline.png | Bin 0 -> 2862 bytes .../object-types/stop/non-moving/warning.png | Bin 0 -> 2260 bytes .../object-types/vehicle/moving/alerted.png | Bin 0 -> 3499 bytes .../object-types/vehicle/moving/normal.png | Bin 0 -> 3009 bytes .../object-types/vehicle/moving/offline.png | Bin 0 -> 2970 bytes .../object-types/vehicle/moving/warning.png | Bin 0 -> 3815 bytes .../vehicle/non-moving/alerted.png | Bin 0 -> 3295 bytes .../vehicle/non-moving/normal.png | Bin 0 -> 3219 bytes .../vehicle/non-moving/offline.png | Bin 0 -> 3079 bytes .../vehicle/non-moving/warning.png | Bin 0 -> 4542 bytes .../geo-dashboard/img/markers/offline.png | Bin 0 -> 1747 bytes .../geo-dashboard/img/markers/resize.png | Bin 0 -> 651 bytes .../geo-dashboard/img/markers/resize_2.png | Bin 0 -> 445 bytes .../geo-dashboard/img/markers/stopIcon.png | Bin 0 -> 1274 bytes .../geo-dashboard/img/markers/warn.png | Bin 0 -> 1747 bytes .../geo-dashboard/img/thumbnail.png | Bin 0 -> 9816 bytes .../geo-dashboard/img/wso2-logo.png | Bin 0 -> 20857 bytes .../geo-dashboard/include/commons.jag | 39 + .../geo-dashboard/include/database.jag | 20 + .../geo-dashboard/include/store_alerts.jag | 150 + .../geo-dashboard/index.xml | 871 +++++ .../geo-dashboard/js/app.js | 312 ++ .../geo-dashboard/js/application_options.js | 78 + .../js/bootstrap-wizard-lib/LICENSE | 19 + .../bootstrap-wizard-lib/bootstrap-wizard.js | 1171 ++++++ .../bootstrap-wizard.min.js | 1 + .../js/bootstrap/BOOTSTRAP_LICENSE | 21 + .../js/bootstrap/bootstrap.min.js | 655 ++++ .../geo-dashboard/js/d3/C3_LICENSE | 20 + .../geo-dashboard/js/d3/D3_LICENSE | 26 + .../geo-dashboard/js/d3/c3.min.js | 4 + .../geo-dashboard/js/d3/d3.min.js | 5 + .../geo-dashboard/js/geo_fencing.js | 415 +++ .../geo-dashboard/js/geo_proximity.js | 84 + .../geo-dashboard/js/geo_remote.js | 612 ++++ .../js/jquery/jquery-2.1.1.min.js | 2066 +++++++++++ .../geo-dashboard/js/jquery/jquery-ui.min.js | 3205 +++++++++++++++++ .../js/leaflet/L.CircleEditor.js | 161 + .../js/leaflet/L.Control.Locate.js | 354 ++ .../geo-dashboard/js/leaflet/L.Grid.js | 241 ++ .../js/leaflet/L.MeasuringTool.js | 325 ++ .../js/leaflet/L.PolySideLabel.js | 215 ++ .../js/leaflet/LICENSE_RaphaelLayer | 7 + .../js/leaflet/Leaflet.fullscreen.min.js | 98 + .../geo-dashboard/js/leaflet/MIT-LICENSE.txt | 20 + .../geo-dashboard/js/leaflet/Marker.Rotate.js | 51 + .../js/leaflet/images/marker-icon.png | Bin 0 -> 4033 bytes .../js/leaflet/images/marker-shadow.png | Bin 0 -> 11428 bytes .../geo-dashboard/js/leaflet/leaflet.draw.js | 10 + .../js/leaflet/leaflet.groupedlayercontrol.js | 287 ++ .../geo-dashboard/js/leaflet/leaflet.js | 2232 ++++++++++++ .../js/leaflet/leaflet.markercluster.js | 441 +++ .../geo-dashboard/js/leaflet/raphael-min.js | 11 + .../geo-dashboard/js/leaflet/rlayer.js | 8 + .../geo-dashboard/js/show_alert_in_map.js | 55 + .../geo-dashboard/js/typeahead.bundle.min.js | 7 + .../geo-dashboard/js/uikit/LICENSES | 7 + .../js/uikit/addons/autocomplete.js | 308 ++ .../js/uikit/addons/autocomplete.min.js | 97 + .../js/uikit/addons/datepicker.js | 1316 +++++++ .../js/uikit/addons/datepicker.min.js | 872 +++++ .../js/uikit/addons/form-password.js | 62 + .../js/uikit/addons/form-password.min.js | 27 + .../js/uikit/addons/form-select.js | 63 + .../js/uikit/addons/form-select.min.js | 29 + .../js/uikit/addons/htmleditor.js | 609 ++++ .../js/uikit/addons/htmleditor.min.js | 192 + .../geo-dashboard/js/uikit/addons/nestable.js | 573 +++ .../js/uikit/addons/nestable.min.js | 121 + .../geo-dashboard/js/uikit/addons/notify.js | 187 + .../js/uikit/addons/notify.min.js | 49 + .../js/uikit/addons/pagination.js | 147 + .../js/uikit/addons/pagination.min.js | 47 + .../geo-dashboard/js/uikit/addons/search.js | 90 + .../js/uikit/addons/search.min.js | 28 + .../geo-dashboard/js/uikit/addons/sortable.js | 499 +++ .../js/uikit/addons/sortable.min.js | 143 + .../geo-dashboard/js/uikit/addons/sticky.js | 130 + .../js/uikit/addons/sticky.min.js | 33 + .../js/uikit/addons/timepicker.js | 163 + .../js/uikit/addons/timepicker.min.js | 39 + .../geo-dashboard/js/uikit/addons/upload.js | 268 ++ .../js/uikit/addons/upload.min.js | 107 + .../geo-dashboard/js/uikit/uikit.min.js | 4 + .../geo-dashboard/js/websocket.js | 731 ++++ .../Geo-Receiver-HTTP-LocationStream.xml | 57 + .../artifact.xml | 21 + ...FusionGenerateNotifications-1.0.0.siddhiql | 29 + .../artifact.xml | 21 + ...utionPlan-InputStandardizer-1.0.0.siddhiql | 19 + .../artifact.xml | 21 + ...-ExecutionPlan-Pass_through-1.0.0.siddhiql | 17 + .../artifact.xml | 21 + ...sher-RDBMS-GeoAlertNotifications-1.0.0.xml | 37 + .../artifact.xml | 21 + ...WebSocketLocal-FusedSpacialEvent-1.0.0.xml | 27 + .../artifact.xml | 21 + ...ocketLocal-GeoAlertNotifications-1.0.0.xml | 22 + .../artifact.xml | 21 + .../capp/ThemeGeoDashboard_1.0.0/artifact.xml | 4 + .../geo-dashboard/css/dashboard.css | 50 + .../src/main/capp/artifacts.xml | 42 + .../artifact.xml | 3 + ...rg.wso2.geo.AlertsNotifications-1.0.0.json | 32 + .../artifact.xml | 21 + .../org.wso2.geo.FusedSpatialEvent-1.0.0.json | 48 + .../artifact.xml | 21 + .../org.wso2.geo.LocationStream-1.0.0.json | 36 + .../artifact.xml | 21 + ...wso2.geo.ProcessedSpatialEvents-1.0.0.json | 48 + .../artifact.xml | 21 + ....wso2.geo.StandardSpatialEvents-1.0.0.json | 40 + .../src/main/resources/build.properties | 1 + .../resources/geodashboard-datasources.xml | 47 + .../src/main/resources/p2.inf | 10 + features/analytics-feature/pom.xml | 1 + pom.xml | 39 +- 251 files changed, 29867 insertions(+), 13 deletions(-) create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/build.xml create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/pom.xml create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/Dashboard_1.0.0/artifact.xml create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/Dashboard_1.0.0/geo-dashboard.json create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/artifact.xml create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/conf/alerts/Geo-ExecutionPlan-Proximity_alert.siddhiql create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/conf/alerts/Geo-ExecutionPlan-Speed_alert.siddhiql create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/conf/alerts/Geo-ExecutionPlan-Stationery_alert.siddhiql create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/conf/alerts/Geo-ExecutionPlan-Traffic_alert.siddhiql create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/conf/alerts/Geo-ExecutionPlan-Within_alert.siddhiql create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/conf/cep_info.json create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/conf/database.json create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/get_alerts.jag create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/get_alerts_history.jag create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/get_server_info.jag create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/modals/proximity_alert.jag create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/modals/speed_alert.jag create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/modals/stationery_alert.jag create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/modals/traffic_point.jag create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/modals/within_alert.jag create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/remove_alerts.jag create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/set_alerts.jag create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/tile_servers.jag create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/wms_endpoints.jag create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/L.Control.Locate.css create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/L.Control.Locate.ie.css create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/MarkerCluster.Default.css create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/MarkerCluster.css create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/app.css create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/bootstrap-wizard-lib/LICENSE create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/bootstrap-wizard-lib/bootstrap-wizard.css create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/bootstrap.min.css create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/css/animation.css create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/css/locate-fa-codes.css create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/css/locate-fa-embedded.css create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/css/locate-fa-ie7-codes.css create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/css/locate-fa-ie7.css create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/css/locate-fa.css create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/d3/c3.css create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/font-awesome.min.css create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/font/LICENSE.txt create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/font/README.txt create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/font/config.json create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/font/locate-fa.eot create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/font/locate-fa.svg create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/font/locate-fa.ttf create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/font/locate-fa.woff create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/fonts/FontAwesome.otf create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/fonts/fontawesome-webfont.eot create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/fonts/fontawesome-webfont.svg create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/fonts/fontawesome-webfont.ttf create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/fonts/fontawesome-webfont.woff create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/images/TODO.Move_this_images_to_assets_images_folder create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/images/layers-2x.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/images/layers.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/images/marker-icon-2x.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/images/marker-icon.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/images/marker-shadow.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/jquery-ui.min.css create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/jquery-ui.theme.min.css create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/leaflet.css create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/leaflet/L.Grid.css create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/leaflet/images/spritesheet-2x.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/leaflet/images/spritesheet.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/leaflet/leaflet.draw.css create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/leaflet_fullscreen/fullscreen.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/leaflet_fullscreen/fullscreen@2x.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/leaflet_fullscreen/leaflet.fullscreen.css create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/login.css create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/main.css create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/map.css create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/style.css create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/uikit/LICENSES create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/uikit/addons/uikit.addons.css create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/uikit/addons/uikit.addons.min.css create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/uikit/addons/uikit.almost-flat.addons.css create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/uikit/addons/uikit.almost-flat.addons.min.css create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/uikit/addons/uikit.gradient.addons.css create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/uikit/addons/uikit.gradient.addons.min.css create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/uikit/uikit.min.css create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/gadget.json create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/fav/wso2_fav.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/favicon-120.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/favicon-152.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/favicon-196.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/favicon-76.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/favicon.ico create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/layers-2x.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/layers.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/marker-icon-2x.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/marker-icon.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/marker-shadow.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/STOP.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/VEHICLE.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/arrow_alerted.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/arrow_normal.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/arrow_offline.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/arrow_warning.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/danger.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/default_icons/greenMarker.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/default_icons/marker-icon.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/default_icons/marker-shadow.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/default_icons/pinkMarker.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/default_icons/redMarker.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/info.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/moving/device-alerted.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/moving/device-normal.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/moving/device-offline.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/moving/device-warning.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/non_moving/device-alerted.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/non_moving/device-normal.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/non_moving/device-offline.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/non_moving/device-warning.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/non_moving/stationary-alerted.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/non_moving/stationary-normal.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/non_moving/stationary-normal2.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/non_moving/stationary-offline.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/non_moving/stationary-warning.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/default/moving/alerted.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/default/moving/normal.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/default/moving/offline.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/default/moving/warning.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/default/non-moving/alerted.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/default/non-moving/normal.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/default/non-moving/offline.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/default/non-moving/warning.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/stationary/non-moving/alerted.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/stationary/non-moving/normal.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/stationary/non-moving/normal2.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/stationary/non-moving/offline.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/stationary/non-moving/warning.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/stop/non-moving/alerted.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/stop/non-moving/normal.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/stop/non-moving/normal2.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/stop/non-moving/offline.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/stop/non-moving/warning.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/vehicle/moving/alerted.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/vehicle/moving/normal.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/vehicle/moving/offline.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/vehicle/moving/warning.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/vehicle/non-moving/alerted.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/vehicle/non-moving/normal.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/vehicle/non-moving/offline.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/vehicle/non-moving/warning.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/offline.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/resize.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/resize_2.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/stopIcon.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/warn.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/thumbnail.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/wso2-logo.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/include/commons.jag create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/include/database.jag create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/include/store_alerts.jag create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/index.xml create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/app.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/application_options.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/bootstrap-wizard-lib/LICENSE create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/bootstrap-wizard-lib/bootstrap-wizard.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/bootstrap-wizard-lib/bootstrap-wizard.min.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/bootstrap/BOOTSTRAP_LICENSE create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/bootstrap/bootstrap.min.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/d3/C3_LICENSE create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/d3/D3_LICENSE create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/d3/c3.min.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/d3/d3.min.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/geo_fencing.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/geo_proximity.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/geo_remote.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/jquery/jquery-2.1.1.min.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/jquery/jquery-ui.min.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/leaflet/L.CircleEditor.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/leaflet/L.Control.Locate.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/leaflet/L.Grid.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/leaflet/L.MeasuringTool.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/leaflet/L.PolySideLabel.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/leaflet/LICENSE_RaphaelLayer create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/leaflet/Leaflet.fullscreen.min.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/leaflet/MIT-LICENSE.txt create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/leaflet/Marker.Rotate.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/leaflet/images/marker-icon.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/leaflet/images/marker-shadow.png create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/leaflet/leaflet.draw.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/leaflet/leaflet.groupedlayercontrol.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/leaflet/leaflet.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/leaflet/leaflet.markercluster.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/leaflet/raphael-min.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/leaflet/rlayer.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/show_alert_in_map.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/typeahead.bundle.min.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/uikit/LICENSES create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/uikit/addons/autocomplete.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/uikit/addons/autocomplete.min.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/uikit/addons/datepicker.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/uikit/addons/datepicker.min.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/uikit/addons/form-password.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/uikit/addons/form-password.min.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/uikit/addons/form-select.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/uikit/addons/form-select.min.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/uikit/addons/htmleditor.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/uikit/addons/htmleditor.min.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/uikit/addons/nestable.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/uikit/addons/nestable.min.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/uikit/addons/notify.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/uikit/addons/notify.min.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/uikit/addons/pagination.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/uikit/addons/pagination.min.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/uikit/addons/search.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/uikit/addons/search.min.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/uikit/addons/sortable.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/uikit/addons/sortable.min.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/uikit/addons/sticky.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/uikit/addons/sticky.min.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/uikit/addons/timepicker.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/uikit/addons/timepicker.min.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/uikit/addons/upload.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/uikit/addons/upload.min.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/uikit/uikit.min.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/websocket.js create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/Geo-Dashboard-Http-Receiver_1.0.0/Geo-Receiver-HTTP-LocationStream.xml create mode 100755 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/Geo-Dashboard-Http-Receiver_1.0.0/artifact.xml create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/Geo-ExecutionPlan-EventsFusionGenerateNotifications_1.0.0/Geo-ExecutionPlan-EventsFusionGenerateNotifications-1.0.0.siddhiql create mode 100755 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/Geo-ExecutionPlan-EventsFusionGenerateNotifications_1.0.0/artifact.xml create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/Geo-ExecutionPlan-InputStandardizer_1.0.0/Geo-ExecutionPlan-InputStandardizer-1.0.0.siddhiql create mode 100755 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/Geo-ExecutionPlan-InputStandardizer_1.0.0/artifact.xml create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/Geo-ExecutionPlan-Pass_through_1.0.0/Geo-ExecutionPlan-Pass_through-1.0.0.siddhiql create mode 100755 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/Geo-ExecutionPlan-Pass_through_1.0.0/artifact.xml create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/Geo-Publisher-RDBMS-GeoAlertNotifications_1.0.0/Geo-Publisher-RDBMS-GeoAlertNotifications-1.0.0.xml create mode 100755 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/Geo-Publisher-RDBMS-GeoAlertNotifications_1.0.0/artifact.xml create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/Geo-Publisher-WebSocketLocal-FusedSpacialEvent_1.0.0/Geo-Publisher-WebSocketLocal-FusedSpacialEvent-1.0.0.xml create mode 100755 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/Geo-Publisher-WebSocketLocal-FusedSpacialEvent_1.0.0/artifact.xml create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/Geo-Publisher-WebSocketLocal-GeoAlertNotifications_1.0.0/Geo-Publisher-WebSocketLocal-GeoAlertNotifications-1.0.0.xml create mode 100755 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/Geo-Publisher-WebSocketLocal-GeoAlertNotifications_1.0.0/artifact.xml create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/ThemeGeoDashboard_1.0.0/artifact.xml create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/ThemeGeoDashboard_1.0.0/geo-dashboard/css/dashboard.css create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/artifacts.xml create mode 100755 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/org.wso2.geo.AlertsNotifications_1.0.0/artifact.xml create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/org.wso2.geo.AlertsNotifications_1.0.0/org.wso2.geo.AlertsNotifications-1.0.0.json create mode 100755 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/org.wso2.geo.FusedSpatialEvent_1.0.0/artifact.xml create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/org.wso2.geo.FusedSpatialEvent_1.0.0/org.wso2.geo.FusedSpatialEvent-1.0.0.json create mode 100755 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/org.wso2.geo.LocationStream_1.0.0/artifact.xml create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/org.wso2.geo.LocationStream_1.0.0/org.wso2.geo.LocationStream-1.0.0.json create mode 100755 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/org.wso2.geo.ProcessedSpatialEvents_1.0.0/artifact.xml create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/org.wso2.geo.ProcessedSpatialEvents_1.0.0/org.wso2.geo.ProcessedSpatialEvents-1.0.0.json create mode 100755 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/org.wso2.geo.StandardSpatialEvents_1.0.0/artifact.xml create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/org.wso2.geo.StandardSpatialEvents_1.0.0/org.wso2.geo.StandardSpatialEvents-1.0.0.json create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/resources/build.properties create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/resources/geodashboard-datasources.xml create mode 100644 features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/resources/p2.inf diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/build.xml b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/build.xml new file mode 100644 index 000000000..5d2b4dea5 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/build.xml @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/pom.xml b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/pom.xml new file mode 100644 index 000000000..2aa7be9fc --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/pom.xml @@ -0,0 +1,138 @@ + + + + + + + + org.wso2.carbon.devicemgt-plugins + analytics-feature + 3.0.2-SNAPSHOT + ../pom.xml + + + 4.0.0 + org.wso2.carbon.iot.geo.dashboard.feature + pom + WSO2 Carbon - IoT Geo Dashboard Feature + http://wso2.org + This feature contains the IoT geo dashboard gadget + + + + org.wso2.carbon.event-processing + org.wso2.carbon.siddhi.geo.event.fuser + + + org.wso2.carbon.event-processing + org.wso2.carbon.siddhi.geo.event.notifier + + + + + + maven-clean-plugin + + + auto-clean + initialize + + clean + + + + + + maven-antrun-plugin + 1.7 + + + process-resources + + + + + + + run + + + + + + maven-resources-plugin + + + copy-resources + generate-resources + + copy-resources + + + src/main/resources + + + resources + + org_wso2_carbon_iot_geo_dashboard-1.0.0.car + p2.inf + geodashboard-datasources.xml + build.properties + + + + + + + + + org.wso2.maven + carbon-p2-plugin + ${carbon.p2.plugin.version} + + + p2-feature-generation + package + + p2-feature-gen + + + org.wso2.carbon.iot.geo.dashboard + ../../../features/etc/feature.properties + + + org.eclipse.equinox.p2.type.group:true + + + + + org.wso2.carbon.event-processing:org.wso2.carbon.siddhi.geo.event.fuser:${carbon.event.processing.version} + + + org.wso2.carbon.event-processing:org.wso2.carbon.siddhi.geo.event.notifier:${carbon.event.processing.version} + + + + + + + + + diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/Dashboard_1.0.0/artifact.xml b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/Dashboard_1.0.0/artifact.xml new file mode 100644 index 000000000..b0fc91fbc --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/Dashboard_1.0.0/artifact.xml @@ -0,0 +1,23 @@ + + + + + geo-dashboard.json + + diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/Dashboard_1.0.0/geo-dashboard.json b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/Dashboard_1.0.0/geo-dashboard.json new file mode 100644 index 000000000..81dca8ec0 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/Dashboard_1.0.0/geo-dashboard.json @@ -0,0 +1 @@ +{"id":"geo-dashboard","title":"Geo Dashboard","description":"","permissions":{"viewers":["Internal/everyone"],"editors":["Internal/everyone"]},"pages":[{"id":"landing","title":"Home","layout":{"content":{"loggedIn":{"blocks":[{"id":"68daad10250cea641097dcb2949aefc6","x":0,"y":0,"width":12,"height":9,"banner":false}]}},"fluidLayout":false},"isanon":false,"content":{"default":{"68daad10250cea641097dcb2949aefc6":[{"id":"geo-dashboard-0","content":{"id":"geo-dashboard","title":"Geo Dashboard","type":"gadget","thumbnail":"fs://gadget/geo-dashboard/img/thumbnail.png","settings":{"personalize":true,"priority":"5"},"data":{"url":"fs://gadget/geo-dashboard/index.xml"},"styles":{"no_heading":true,"hide_gadget":false,"titlePosition":"left","title":"Geo Dashboard"},"notify":{"select":{"type":"address","description":"This notifies selected state"},"cancel":{"type":"boolean","description":"This notifies cancellation of state selection"}},"options":{},"locale_titles":{"en-US":"Geo Dashboard"}}}]},"anon":{}}}],"identityServerUrl":"","accessTokenUrl":"","apiKey":"","apiSecret":"","theme":"geo-dashboard","isUserCustom":false,"isEditorEnable":true,"banner":{"globalBannerExists":false,"customBannerExists":false},"landing":"landing","isanon":false} \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/artifact.xml b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/artifact.xml new file mode 100644 index 000000000..d8e645363 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/artifact.xml @@ -0,0 +1,4 @@ + + + geo-dashboard + \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/conf/alerts/Geo-ExecutionPlan-Proximity_alert.siddhiql b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/conf/alerts/Geo-ExecutionPlan-Proximity_alert.siddhiql new file mode 100644 index 000000000..fb6472039 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/conf/alerts/Geo-ExecutionPlan-Proximity_alert.siddhiql @@ -0,0 +1,140 @@ +/* Enter a unique ExecutionPlan */ +@Plan:name('Geo-ExecutionPlan-Proximity_alert') + +/* Enter a unique description for ExecutionPlan */ +-- @Plan:description('ExecutionPlan') + +/* define streams/tables and write queries here ... */ + +@Import('org.wso2.geo.StandardSpatialEvents:1.0.0') +define stream dataIn (id string, latitude double, longitude double, timeStamp long, type string, speed float, heading float, eventId string ); + +@Export('org.wso2.geo.ProcessedSpatialEvents:1.0.0') +define stream dataOut ( id string, latitude double, longitude double, timeStamp long, type string, speed float, heading float, eventId string, state string, information string ); + +@IndexBy('id') +define table ProximityTable(id string, timeStamp long); + +@IndexBy('id') +define table AlertsTable(id string , proximityWith string, eventId string); + +from dataIn#geodashboard:subscribe() +select id, latitude, longitude, timeStamp, type, speed, heading, eventId +insert into initialStream; + +from initialStream[type == 'STOP'] +select id , latitude, longitude,timeStamp, type, speed, heading ,eventId , "" as proximityInfo ,"false" as isProximity +insert into dataOutStream; + +from initialStream[type != 'STOP'] +select * +insert into objectInitialStream; + +from objectInitialStream#geo:proximity(id,longitude,latitude, $proximityDistance) +select id, latitude, longitude, timeStamp, type, speed, heading, eventId,inCloseProximity,proximityWith +insert into proxymityStream; + +from proxymityStream[AlertsTable.id == proxymityStream.id in AlertsTable] +select id, latitude, longitude, timeStamp, type, speed, heading, eventId,inCloseProximity,proximityWith,true as inAlertTable +insert into innerStreamOne; + +from proxymityStream[not(AlertsTable.id == proxymityStream.id in AlertsTable)] +select id, latitude, longitude, timeStamp, type, speed, heading, eventId,inCloseProximity,proximityWith,false as inAlertTable +insert into innerStreamOne; + +from proxymityStream[AlertsTable.id == proxymityStream.proximityWith in AlertsTable] +select id, latitude, longitude, timeStamp, type, speed, heading, eventId,inCloseProximity,proximityWith,true as inAlertTable +insert into innerStreamSeven; + +from proxymityStream[not(AlertsTable.id == proxymityStream.proximityWith in AlertsTable)] +select id, latitude, longitude, timeStamp, type, speed, heading, eventId,inCloseProximity,proximityWith,false as inAlertTable +insert into innerStreamSeven; + +from innerStreamOne[inCloseProximity == true AND not(inAlertTable)] +select id,str:concat(",",proximityWith) as proximityWith , eventId +insert into AlertsTable; + +from innerStreamSeven[inCloseProximity == true AND not(inAlertTable)] +select proximityWith as id,str:concat(",",id) as proximityWith , eventId +insert into AlertsTable; + +from innerStreamOne[innerStreamOne.inCloseProximity == true AND inAlertTable]#window.length(0) join AlertsTable +on innerStreamOne.id == AlertsTable.id +select innerStreamOne.id as id, str:concat(",", innerStreamOne.proximityWith, AlertsTable.proximityWith) as proximityWith, innerStreamOne.eventId as eventId +insert into updateStream; + +from innerStreamSeven[innerStreamSeven.inCloseProximity == true AND inAlertTable]#window.length(0) join AlertsTable +on innerStreamSeven.proximityWith == AlertsTable.id +select innerStreamSeven.proximityWith as id, str:concat(",", innerStreamSeven.id, AlertsTable.proximityWith) as proximityWith, innerStreamSeven.eventId as eventId +insert into updateStream; + +from innerStreamOne[innerStreamOne.inCloseProximity == false AND inAlertTable]#window.length(0) join AlertsTable +on innerStreamOne.id == AlertsTable.id +select innerStreamOne.id as id, str:replaceAll(AlertsTable.proximityWith, str:concat(",", innerStreamOne.proximityWith), "") as proximityWith, innerStreamOne.eventId as eventId +insert into updateStream; + +from innerStreamSeven[innerStreamSeven.inCloseProximity == false AND inAlertTable]#window.length(0) join AlertsTable +on innerStreamSeven.proximityWith == AlertsTable.id +select innerStreamSeven.proximityWith as id, str:replaceAll(AlertsTable.proximityWith, str:concat(",", innerStreamSeven.id), "") as proximityWith, innerStreamSeven.eventId as eventId +insert into updateStream; + +from updateStream +select * +update AlertsTable + on id== AlertsTable.id; + +from updateStream[proximityWith == ""] +delete AlertsTable + on id== AlertsTable.id; + +from objectInitialStream[AlertsTable.id == objectInitialStream.id in AlertsTable] +select id, latitude, longitude, timeStamp, type, speed, heading, eventId, true as inAlertTable +insert into publishStream; + +from objectInitialStream[not(AlertsTable.id == objectInitialStream.id in AlertsTable)] +select id, latitude, longitude, timeStamp, type, speed, heading, eventId, false as inAlertTable +insert into publishStream; + +from publishStream[inAlertTable == true]#window.length(0) join AlertsTable +on publishStream.id== AlertsTable.id +select publishStream.id as id, publishStream.latitude as latitude, publishStream.longitude as longitude, publishStream.timeStamp as timeStamp, publishStream.type as type, publishStream.speed as speed, publishStream.heading as heading, publishStream.eventId as eventId, AlertsTable.proximityWith as proximityInfo +insert into innerStreamTwo; + +from publishStream[inAlertTable == false] +delete ProximityTable on ProximityTable.id==id; + +from publishStream[inAlertTable == false] +select id , latitude, longitude,timeStamp, type, speed, heading ,eventId , "" as proximityInfo ,"false" as isProximity +insert into dataOutStream; + +from innerStreamTwo[ProximityTable.id == innerStreamTwo.id in ProximityTable] +insert into innerStreamThree; + +from innerStreamThree#window.length(0) join ProximityTable +on innerStreamThree.id == ProximityTable.id +select innerStreamThree.id , innerStreamThree.latitude, innerStreamThree.longitude,innerStreamThree.timeStamp, innerStreamThree.type, innerStreamThree.speed, innerStreamThree.heading ,innerStreamThree.eventId, ProximityTable.timeStamp as storedTime, innerStreamThree.proximityInfo as proximityInfo +insert into innerStreamFour; + +from innerStreamFour[(timeStamp - storedTime) >= $proximityTime] +select id , latitude, longitude,timeStamp, type, speed, heading ,eventId ,proximityInfo,"true" as isProximity +insert into dataOutStream; + +from innerStreamFour[(timeStamp - storedTime) < $proximityTime] +select id , latitude, longitude,timeStamp, type, speed, heading ,eventId , proximityInfo ,"false" as isProximity +insert into dataOutStream; + +from innerStreamTwo[not(ProximityTable.id == innerStreamTwo.id in ProximityTable)] +select innerStreamTwo.id, innerStreamTwo.timeStamp +insert into ProximityTable; + +from innerStreamTwo[not(ProximityTable.id == innerStreamTwo.id in ProximityTable)] +select id , latitude, longitude,timeStamp, type, speed, heading ,eventId , "" as proximityInfo ,"false" as isProximity +insert into dataOutStream; + +from dataOutStream[isProximity == 'true'] +select id, latitude, longitude, timeStamp, type, speed, heading, eventId,"WARNING" as state,str:concat("Proximity with "," ",proximityInfo) as information +insert into dataOut; + +from dataOutStream[isProximity == 'false'] +select id , latitude, longitude,timeStamp, type, speed, heading ,eventId ,"NORMAL" as state,"" as information +insert into dataOut; \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/conf/alerts/Geo-ExecutionPlan-Speed_alert.siddhiql b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/conf/alerts/Geo-ExecutionPlan-Speed_alert.siddhiql new file mode 100644 index 000000000..65dad468d --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/conf/alerts/Geo-ExecutionPlan-Speed_alert.siddhiql @@ -0,0 +1,20 @@ +/* Enter a unique ExecutionPlan */ +@Plan:name('Geo-ExecutionPlan-Speed---$deviceId_alert') + +/* Enter a unique description for ExecutionPlan */ +-- @Plan:description('ExecutionPlan') + +/* define streams/tables and write queries here ... */ + +@Import('org.wso2.geo.StandardSpatialEvents:1.0.0') +define stream dataIn (id string, latitude double, longitude double, timeStamp long, type string, speed float, heading float, eventId string); + +@Export('org.wso2.geo.ProcessedSpatialEvents:1.0.0') +define stream dataOut (id string, latitude double, longitude double, timeStamp long, type string, speed float, heading float, eventId string, state string, information string); + +from dataIn[speed >= $speedAlertValue and id == "$deviceId"]#geodashboard:subscribe() +select id , latitude, longitude,timeStamp, type ,speed, heading ,eventId , "ALERTED" as state, "This device movement is not normal!!" as information +insert into dataOut; +from dataIn[speed < $speedAlertValue and id == "$deviceId"] +select id , latitude, longitude,timeStamp, type ,speed, heading ,eventId , "NORMAL" as state, "This device movement is normal" as information +insert into dataOut; diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/conf/alerts/Geo-ExecutionPlan-Stationery_alert.siddhiql b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/conf/alerts/Geo-ExecutionPlan-Stationery_alert.siddhiql new file mode 100644 index 000000000..46bfbfe2e --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/conf/alerts/Geo-ExecutionPlan-Stationery_alert.siddhiql @@ -0,0 +1,89 @@ +/* Enter a unique ExecutionPlan */ +@Plan:name('$executionPlanName') + +/* Enter a unique description for ExecutionPlan */ +-- @Plan:description('ExecutionPlan') + +/* define streams/tables and write queries here ... */ + +@Import('org.wso2.geo.StandardSpatialEvents:1.0.0') +define stream dataIn (id string, latitude double, longitude double, timeStamp long, type string ,speed float, heading float, eventId string); + + +@Export('org.wso2.geo.ProcessedSpatialEvents:1.0.0') +define stream dataOut (id string, latitude double, longitude double, timeStamp long, type string ,speed float, heading float, eventId string, state string, information string); + +@IndexBy('id') +define table StationeryTable(id string, timeStamp long); + +@IndexBy('id') +define table AlertsTable(id string, stationary bool); + +from dataIn#geodashboard:subscribe() +select id, latitude, longitude, timeStamp, type, speed, heading, eventId,geo:within(longitude,latitude,"$geoFenceGeoJSON") as isWithin +insert into innerStreamOne; + +from innerStreamOne[isWithin == false] +delete StationeryTable on StationeryTable.id==id; + +from innerStreamOne[isWithin == false] +select id , latitude, longitude,timeStamp, type, speed, heading ,eventId , "false" as isStationary +insert into dataOutStream; + +from innerStreamOne[isWithin == true]#geo:stationary(id,longitude,latitude, $fluctuationRadius) +select id, latitude, longitude, timeStamp, type, speed, heading, eventId,stationary +insert into innerStreamTwo; + +from innerStreamTwo[innerStreamTwo.stationary == true] +select innerStreamTwo.id, innerStreamTwo.stationary +insert into AlertsTable; + +from innerStreamTwo[innerStreamTwo.stationary == false] +delete AlertsTable on AlertsTable.id==id; + +from innerStreamTwo[innerStreamTwo.stationary == false] +delete StationeryTable on StationeryTable.id==id; + +from innerStreamOne[isWithin == true AND not(AlertsTable.id == innerStreamOne.id in AlertsTable)] +select id , latitude, longitude,timeStamp, type, speed, heading ,eventId , "false" as isStationary +insert into dataOutStream; + +from innerStreamOne[isWithin == true AND AlertsTable.id == innerStreamOne.id in AlertsTable] +insert into innerStreamThree; + +from innerStreamThree#window.length(0) join AlertsTable +on innerStreamThree.id == AlertsTable.id +select innerStreamThree.id , innerStreamThree.latitude, innerStreamThree.longitude,innerStreamThree.timeStamp, innerStreamThree.type, innerStreamThree.speed, innerStreamThree.heading ,innerStreamThree.eventId +insert into innerStreamFour; + +from innerStreamFour[not(StationeryTable.id == innerStreamFour.id in StationeryTable)] +select innerStreamFour.id, innerStreamFour.timeStamp +insert into StationeryTable; + +from innerStreamOne[isWithin == true AND not(StationeryTable.id == innerStreamOne.id in StationeryTable)] +select id , latitude, longitude,timeStamp, type, speed, heading ,eventId , "false" as isStationary +insert into dataOutStream; + +from innerStreamOne[isWithin == true AND StationeryTable.id == innerStreamOne.id in StationeryTable] +insert into innerStreamFive; + +from innerStreamFive#window.length(0) join StationeryTable +on innerStreamFive.id == StationeryTable.id +select innerStreamFive.id , innerStreamFive.latitude, innerStreamFive.longitude,innerStreamFive.timeStamp, innerStreamFive.type, innerStreamFive.speed, innerStreamFive.heading ,innerStreamFive.eventId, StationeryTable.timeStamp as storedTime +insert into innerStreamSix; + +from innerStreamSix[(timeStamp - storedTime) >= $stationeryTime] +select id , latitude, longitude,timeStamp, type, speed, heading ,eventId ,"true" as isStationary +insert into dataOutStream; + +from innerStreamSix[(timeStamp - storedTime) < $stationeryTime] +select id , latitude, longitude,timeStamp, type, speed, heading ,eventId ,"false" as isStationary +insert into dataOutStream; + +from dataOutStream[isStationary == 'true'] +select id ,latitude, longitude,timeStamp, type, speed, heading ,eventId ,"ALERTED" as state, "This device is in $stationeryName area!!!" as information +insert into dataOut; + +from dataOutStream[isStationary == 'false'] +select id , latitude, longitude,timeStamp, type, speed, heading ,eventId ,"NORMAL" as state,"" as information +insert into dataOut; \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/conf/alerts/Geo-ExecutionPlan-Traffic_alert.siddhiql b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/conf/alerts/Geo-ExecutionPlan-Traffic_alert.siddhiql new file mode 100644 index 000000000..5e6bb5b1a --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/conf/alerts/Geo-ExecutionPlan-Traffic_alert.siddhiql @@ -0,0 +1,17 @@ +/* Enter a unique ExecutionPlan */ +@Plan:name('$executionPlanName') + +/* Enter a unique description for ExecutionPlan */ +-- @Plan:description('ExecutionPlan') + +/* define streams/tables and write queries here ... */ + +@Import('rawGeoStream:1.0.0') +define stream dataIn (id string, timeStamp long, geometry string, state string, information string); + +@Export('AlertsNotifications:1.0.0') +define stream dataOut (id string, state string, information string, timeStamp long, latitude double, longitude double); + +from dataIn[geo:intersects(geometry, "$geoFenceGeoJSON")==true and geodashboard:needToNotify(id, str:concat(information, state), "sendFirst") == true and id == $deviceId] +select id, state, str:concat("Traffic alert in $areaName. State: ", state, " ", information) as information, timeStamp, 0.0 as latitude, 0.0 as longitude +insert into dataOut \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/conf/alerts/Geo-ExecutionPlan-Within_alert.siddhiql b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/conf/alerts/Geo-ExecutionPlan-Within_alert.siddhiql new file mode 100644 index 000000000..85e57604e --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/conf/alerts/Geo-ExecutionPlan-Within_alert.siddhiql @@ -0,0 +1,20 @@ +/* Enter a unique ExecutionPlan */ +@Plan:name('$executionPlanName') + +/* Enter a unique description for ExecutionPlan */ +-- @Plan:description('ExecutionPlan') + +/* define streams/tables and write queries here ... */ + +@Import('org.wso2.geo.StandardSpatialEvents:1.0.0') +define stream dataIn (id string, latitude double, longitude double, timeStamp long, type string ,speed float, heading float, eventId string); + +@Export('org.wso2.geo.ProcessedSpatialEvents:1.0.0') +define stream dataOut (id string, latitude double, longitude double, timeStamp long, type string ,speed float, heading float, eventId string, state string, information string); + +from dataIn[geo:within(longitude,latitude,"$geoFenceGeoJSON")==true and id == $deviceId]#geodashboard:subscribe() +select id , latitude, longitude,timeStamp, type, speed, heading ,eventId , "ALERTED" as state, "This device is in $areaName restricted area!!!" as information +insert into dataOut; +from dataIn[geo:within(longitude,latitude,"$geoFenceGeoJSON")!=true and id == $deviceId] +select id , latitude, longitude,timeStamp, type, speed, heading ,eventId , "NORMAL" as state, "" as information +insert into dataOut; diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/conf/cep_info.json b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/conf/cep_info.json new file mode 100644 index 000000000..534bc8fb2 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/conf/cep_info.json @@ -0,0 +1 @@ +{"username" : "admin", "password" : "admin"} \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/conf/database.json b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/conf/database.json new file mode 100644 index 000000000..b017a2a54 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/conf/database.json @@ -0,0 +1 @@ +{"username" : "wso2carbon", "password" : "wso2carbon"} \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/get_alerts.jag b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/get_alerts.jag new file mode 100644 index 000000000..1df5d7949 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/get_alerts.jag @@ -0,0 +1,129 @@ +<% +/* + ~ Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. + ~ + ~ WSO2 Inc. licenses this file to you 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. + */ +var log = new Log(); +var dataStore = require('../include/commons.jag').dataStore; +var verb = request.getMethod(); +var resourceName = request.getParameter('name'); +var webService = request.getParameter('service'); + + +if(webService) { + response.contentType = 'application/json'; + response.characterEncoding = 'UTF-8'; + response.content = { resource : get(resourceName) }; +} + +function get(name){ + if(name == 'within'){ + try{ + var res = dataStore.get("geo/alerts/within/"); + } + catch(e){ + log.info(e.message); + return false; + } + var allFences = []; + for each (var resource in res.getChildren()) { + var fence = {}; + try{ + fence['geoJson'] = JSON.parse(dataStore.get(resource).content.replace(/'/g, '"')); + fence['queryName'] = dataStore.get(resource).getProperty('queryName'); + fence['areaName'] = dataStore.get(resource).getProperty('areaName'); + fence['createdTime'] = dataStore.get(resource).createdTime.toString(); + allFences.push(fence); + } + catch(e){ + log.info("Error: "+e+'\n'); + } + } + return allFences; + } else if(name == 'speed'){ + var resource; + try{ + resource = dataStore.get(name+'.json'); + }catch(e){ + resource = {'content': false}; + } + log.info("DEBUG:***** name = "+name); + log.info("DEBUG:***** resource.content = "+resource.content); + return JSON.parse(resource.content); + } else if(name == 'proximity'){ + + var result; + try{ + var resource = dataStore.get("/geo/alerts/proximity/proximity.json"); + result={proximityDistance: resource.getProperty("proximityDistance"), proximityTime: resource.getProperty("proximityTime")}; + }catch(e){ + result = {'content': false}; + } + return result; + } else if(name == 'stationery'){ + var res; + try{ + res = dataStore.get("geo/alerts/stationery/"); + } + catch(e){ + log.info(e.message); + return false; + } + var allFences = []; + for each (var resource in res.getChildren()) { + var fence = {}; + try{ + fence['geoJson'] = JSON.parse(dataStore.get(resource).content.replace(/'/g, '"')); + fence['queryName'] = dataStore.get(resource).getProperty('queryName'); + fence['areaName'] = dataStore.get(resource).getProperty('stationeryName'); + fence['stationeryTime'] = dataStore.get(resource).getProperty('stationeryTime'); + fence['fluctuationRadius'] = dataStore.get(resource).getProperty('fluctuationRadius'); + fence['createdTime'] = dataStore.get(resource).createdTime.toString(); + allFences.push(fence); + } + catch(e){ + log.info("Error: "+e+'\n'); + } + } + return allFences; + } else if( name == 'traffic'){ + try{ + var res = dataStore.get("geo/alerts/traffic/"); + } + catch(e){ + log.info(e.message); + return false; + } + var allFences = []; + for each (var resource in res.getChildren()) { + var fence = {}; + try{ + fence['geoJson'] = JSON.parse(dataStore.get(resource).content.replace(/'/g, '"')); + fence['queryName'] = dataStore.get(resource).getProperty('queryName'); + fence['areaName'] = dataStore.get(resource).getProperty('areaName'); + fence['createdTime'] = dataStore.get(resource).createdTime.toString(); + allFences.push(fence); + } + catch(e){ + log.info("Error: "+e+'\n'); + } + } + return allFences; + } + +} + +%> diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/get_alerts_history.jag b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/get_alerts_history.jag new file mode 100644 index 000000000..c62800f7f --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/get_alerts_history.jag @@ -0,0 +1,42 @@ +<% +/* + ~ Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. + ~ + ~ WSO2 Inc. licenses this file to you 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. + */ + +var db = require("../include/database.jag"); +var configuration = require('../conf/database.json'); +var log = new Log(); + +var db = new Database("jdbc:h2:repository/database/WSO2_GEO",configuration.username,configuration.password); +var objectId = request.getParameter("objectId"); + +var getHistory = "SELECT * FROM alerts_history WHERE id = \'"+objectId+"\' ORDER BY timeStamp DESC LIMIT 50"; + +try{ + var history = db.query(getHistory); + response.contentType = "application/json"; + response.characterEncoding = "UTF-8"; + response.content = history; +} +catch(e){ + log.error(e.toString()); +} +finally{ + db.close(); +} + +%> diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/get_server_info.jag b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/get_server_info.jag new file mode 100644 index 000000000..a2fd8fff9 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/get_server_info.jag @@ -0,0 +1,47 @@ +<% +/* + ~ Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. + ~ + ~ WSO2 Inc. licenses this file to you 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. + */ +var log = new Log(); + +var carbon = require('carbon'); +var serverInfo = {}; +var process = require("process"); +var host = process.getProperty('server.host'); +var ip = process.getProperty('carbon.local.ip'); +var httpsPort = process.getProperty('mgt.transport.https.proxyPort'); +if(!httpsPort){ + //can use http.port as well + httpsPort = process.getProperty('mgt.transport.https.port'); + serverInfo.httpsPort = httpsPort; +} +var httpPort = process.getProperty('mgt.transport.http.proxyPort'); +if(!httpPort){ + //can use http.port as well + httpPort = process.getProperty('mgt.transport.http.port'); + serverInfo.httpPort = httpPort; +} +serverInfo.host = host; +serverInfo.ip = ip; + +var username = request.getParameter("username"); + +var authorizedUser = carbon.server.tenantUser(username); +serverInfo.user = authorizedUser; +//log.warn(stringify(serverInfo)); +print(stringify(serverInfo)); +%> diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/modals/proximity_alert.jag b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/modals/proximity_alert.jag new file mode 100644 index 000000000..119140456 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/modals/proximity_alert.jag @@ -0,0 +1,98 @@ + + + + + + + + + + +<% +var get = require('../get_alerts.jag').get; +%> + + + + + + \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/modals/speed_alert.jag b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/modals/speed_alert.jag new file mode 100644 index 000000000..b5caf669d --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/modals/speed_alert.jag @@ -0,0 +1,52 @@ + + + + + + + + + +<% +var log = new Log(); +var get = require('../get_alerts.jag').get; + +%> + + + + \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/modals/stationery_alert.jag b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/modals/stationery_alert.jag new file mode 100644 index 000000000..a7e290f19 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/modals/stationery_alert.jag @@ -0,0 +1,105 @@ + + + + + + + + + + + + +<% +var get = require('../get_alerts.jag').get; +%> + + + + \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/modals/traffic_point.jag b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/modals/traffic_point.jag new file mode 100644 index 000000000..0f70cdd63 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/modals/traffic_point.jag @@ -0,0 +1,107 @@ + + + + + + + + + + + + +<% +var get = require('../get_alerts.jag').get; +%> + + + + + + + + diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/modals/within_alert.jag b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/modals/within_alert.jag new file mode 100644 index 000000000..34aca6688 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/modals/within_alert.jag @@ -0,0 +1,100 @@ + + + + + + + + + + + + +<% +var get = require('../get_alerts.jag').get; +%> + + + + \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/remove_alerts.jag b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/remove_alerts.jag new file mode 100644 index 000000000..a07296bbd --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/remove_alerts.jag @@ -0,0 +1,74 @@ +<% +/* + ~ Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. + ~ + ~ WSO2 Inc. licenses this file to you 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. + */ + +/* Includes */ +var utils = require('/modules/utils.js'); +var carbon = require("carbon"); +var HTTPS_TRANSPORT = "https"; +var EVENT_PROCESSOR_SERVICE = "/services/EventProcessorAdminService"; +var HTTPConstants = Packages.org.apache.axis2.transport.http.HTTPConstants; +var EventProcessorAdminServiceStub = Packages.org.wso2.carbon.event.processor.stub.EventProcessorAdminServiceStub; +var eventProcessorAdminServiceWSUrl = utils.getCarbonServerAddress(HTTPS_TRANSPORT) + EVENT_PROCESSOR_SERVICE; +var eventprocessorStub = new EventProcessorAdminServiceStub(eventProcessorAdminServiceWSUrl); +var eventsProcessorServiceClient = eventprocessorStub._getServiceClient(); +var eventProcessorOption = eventsProcessorServiceClient.getOptions(); +eventProcessorOption.setManageSession(true); +eventProcessorOption.setProperty(HTTPConstants.COOKIE_STRING, session.get('authToken')); + + +var cepInfo = require('../include/commons.jag').cepInfo; +var removeAlert = require('../include/store_alerts.jag').remove; +var ws = require('ws'); +var process = require("process"), host = process.getProperty('server.host'), + ip = process.getProperty('carbon.local.ip'); +var httpsPort = process.getProperty('mgt.transport.https.proxyPort'); +if (!httpsPort) { + //can use http.port as well + httpsPort = process.getProperty('mgt.transport.https.port'); +} + +var log = new Log(); + +var verb = request.getMethod(); +var executionPlanName = request.getParameter('executionPlanName'); +var queryName = request.getParameter('queryName'); +var cepAction = request.getParameter('cepAction'); // i.e 'deploy' new executionPlan , 'edit' executionPlan and etc.. +var type = request.getParameter('Type'); + +if (verb == "POST") { + removeAlert(queryName, type); + if (cepAction == "undeploy") { + var responseJson = {"status": "", "message": ""}; + try { + //eventprocessorStub.undeployActiveExecutionPlan("geo_" + executionPlanName + "_alert"); + eventprocessorStub.undeployActiveExecutionPlan(executionPlanName); + + responseJson.status = "success"; + responseJson.message = "Query deployed successfully"; + } catch (ex) { + msg = ex; + responseJson.status = "failed"; + responseJson.message = "Error occurred while deploying the execution plan"; + log.error(msg); + } + print(responseJson); + } +} + +%> diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/set_alerts.jag b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/set_alerts.jag new file mode 100644 index 000000000..99e8a0996 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/set_alerts.jag @@ -0,0 +1,139 @@ +<% +/* + ~ Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. + ~ + ~ WSO2 Inc. licenses this file to you 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. + */ + +/* Includes */ +var log = new Log(); +var deviceIdSeperator = "---"; +var utils = require('/modules/utils.js'); +var carbon = require("carbon"); +var HTTPS_TRANSPORT = "https"; +var EVENT_PROCESSOR_SERVICE = "/services/EventProcessorAdminService"; +var HTTPConstants = Packages.org.apache.axis2.transport.http.HTTPConstants; +var EventProcessorAdminServiceStub = Packages.org.wso2.carbon.event.processor.stub.EventProcessorAdminServiceStub; +var eventProcessorAdminServiceWSUrl = utils.getCarbonServerAddress(HTTPS_TRANSPORT) + EVENT_PROCESSOR_SERVICE; +var eventprocessorStub = new EventProcessorAdminServiceStub(eventProcessorAdminServiceWSUrl); +var eventsProcessorServiceClient = eventprocessorStub._getServiceClient(); +var eventProcessorOption = eventsProcessorServiceClient.getOptions(); +eventProcessorOption.setManageSession(true); +eventProcessorOption.setProperty(HTTPConstants.COOKIE_STRING, session.get('authToken')); + +var escapeSiddhiql = require('../include/commons.jag').escapeSiddhiql; +var storeAlerts = require('../include/store_alerts.jag').store; // TODO: change to js +var ws = require('ws'); +var process = require("process"), host = process.getProperty('server.host'), + ip = process.getProperty('carbon.local.ip'); +var httpsPort = process.getProperty('mgt.transport.https.proxyPort'); +if (!httpsPort) { + //can use http.port as well + httpsPort = process.getProperty('mgt.transport.https.port'); +} + + +var verb = request.getMethod(); +var executionPlan = request.getParameter('executionPlan'); +var queryName = request.getParameter('queryName'); +var customName = request.getParameter('customName'); +var cepAction = request.getParameter('cepAction'); // i.e 'deploy' new executionPlan , 'edit' executionPlan and etc.. +var parseData = request.getParameter('parseData'); // TODO: if app/json use request.getContent() +var deviceId = request.getParameter('deviceId'); +var parseDataJson = JSON.parse(parseData); + + +if (verb == "POST") { + var path = "../conf/alerts/Geo-ExecutionPlan-" + executionPlan + "_alert.siddhiql"; + var file = new File(path); + file.open("r"); + var template = ""; + template = file.readAll(); + file.close(); // TODO: use try catch finally put close inside finally + + for (var parseKey in parseDataJson) { + parseValue = parseDataJson[parseKey]; + var find = "\\$" + parseKey; + var re = new RegExp(find, 'g'); + template = template.replace(re, parseValue); + } + + var updatedTemplate = template; + log.info(updatedTemplate); + + //commented because theres unwanted characters comes in execution plan + //var escapedTemplate = escapeSiddhiql(updatedTemplate); + + + optionalArgs = {"queryName": queryName, "customName": customName, "executionPlan": executionPlan}; + // TODO: Inefficient if and else if blocks change it by using general keyword to resourceContents + if (executionPlan == 'Within') { + var resourceContents = parseDataJson.geoFenceGeoJSON; + } else if (executionPlan == "Stationery") { + var resourceContents = parseDataJson; + } else if (executionPlan == 'Speed') { + var resourceContents = parseDataJson.speedAlertValue; + } else if (executionPlan == 'Proximity') { + var resourceContents = parseDataJson + } else if (executionPlan == 'Traffic') { + var resourceContents = parseDataJson.geoFenceGeoJSON; + } + storeAlerts(parseKey, resourceContents, executionPlan, optionalArgs, deviceId); + + var payload; + if (cepAction == "edit") { + payload = updatedTemplate; + var responseJson = {"status": "", "message": ""}; + var result = eventprocessorStub.validateExecutionPlan(payload); + if (result.equals("success")) { + try { + eventprocessorStub.editActiveExecutionPlan(payload, "Geo-ExecutionPlan-" + executionPlan + deviceIdSeperator + deviceId + "_alert"); + responseJson.status = "success"; + responseJson.message = "Query deployed successfully"; + } catch (ex) { + msg = ex.getMessage(); + responseJson.status = "failed"; + responseJson.message = "Error occurred while deploying the execution plan"; + log.error(msg); + } + } else { + responseJson.status = "failed"; + responseJson.message = "Error occurred while deploying the execution plan"; + } + print(responseJson); + } else if (cepAction == "deploy") { + payload = updatedTemplate; + var responseJson = {"status": "", "message": ""}; + var result = eventprocessorStub.validateExecutionPlan(payload); + if (result.equals("success")) { + try { + eventprocessorStub.deployExecutionPlan(payload); + responseJson.status = "success"; + responseJson.message = "Query deployed successfully"; + } catch (ex) { + msg = ex.getMessage(); + responseJson.status = "failed"; + responseJson.message = "Error occurred while deploying the execution plan"; + log.error(msg); + } + } else { + responseJson.status = "failed"; + responseJson.message = "Error occurred while deploying the execution plan"; + } + print(responseJson); + } +} + +%> diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/tile_servers.jag b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/tile_servers.jag new file mode 100644 index 000000000..a5c6ffc96 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/tile_servers.jag @@ -0,0 +1,87 @@ +<% +/* + ~ Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. + ~ + ~ WSO2 Inc. licenses this file to you 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. + */ + +/* +* Get all available tile servers from RDB via HTTP GET, Insert new tile servers information via HTTP POST request +*/ + +var configuration = require('../conf/database.json'); +var log = new Log(); +//Sample create table query create table tileServers (serverId int NOT NULL AUTO_INCREMENT, url varchar(255) NOT NULL, name varchar(255), PRIMARY KEY (serverID)); +var tableName = "tileservers"; +var db = new Database("jdbc:h2:repository/database/WSO2_GEO",configuration.username,configuration.password); + +if(request.getMethod() == "GET"){ + + var checkTableExist = "SELECT * FROM tileServers limit 1"; + var createTableTileServers = "CREATE TABLE tileServers (serverId int NOT NULL AUTO_INCREMENT, "+ + "url varchar(255) NOT NULL, name varchar(255), subdomains varchar(255),attribution varchar(255),maxzoom int, "+ + "PRIMARY KEY (serverID))"; + + try{ + db.query(checkTableExist); + } catch(e){ + log.info("Table "+tableName+" does not exist. It will be created."); + db.query(createTableTileServers); + } + + var serverId = request.getParameter("serverId"); + if(serverId == "all"){ + var getAllTileServers = "select * from tileServers"; + try{ + var allTileServers = db.query(getAllTileServers); + log.info(allTileServers); + response.contentType = "application/json"; + response.characterEncoding = "UTF-8"; + response.content = allTileServers; + } + catch(e){ + log.error(e.toString()); + } + finally{ + db.close(); + } + } + else{ + // TODO: get specific server details + } +} +else if(request.getMethod() == "POST"){ + + var url = request.getParameter("url"); + var name = request.getParameter("name"); + var maxzoom = parseInt(request.getParameter("maxzoom")); + var subdomains = request.getParameter("subdomains"); + var attribution = request.getParameter("attribution"); + + var insertTileServer ="INSERT INTO tileServers (url, name, subdomains, attribution, maxzoom) VALUES('"+ url +"', '"+ name +"', '"+ subdomains +"', '"+ attribution +"', '"+ maxzoom +"' );"; + try{ + db.query(insertTileServer); + log.info(name + ' tile server added successfully!'); + print(name + ' tile server added successfully!'); + } + catch(e){ + log.error(e.toString()); + } + finally{ + db.close(); + } +} + +%> \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/wms_endpoints.jag b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/wms_endpoints.jag new file mode 100644 index 000000000..453535513 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/controllers/wms_endpoints.jag @@ -0,0 +1,108 @@ +<% +/* + ~ Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. + ~ + ~ WSO2 Inc. licenses this file to you 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. + */ + +/* +* Get all available tile servers from RDB via HTTP GET, Insert new tile servers information via HTTP POST request +*/ + +var configuration = require('../conf/database.json'); +var log = new Log(); + +var tableName = "webMapService"; +var db = new Database("jdbc:h2:repository/database/WSO2_GEO",configuration.username,configuration.password); + +if(request.getMethod() == "GET"){ + + var checkTableExist = "SELECT * FROM webMapService limit 1"; + var createTableWebMapService = "CREATE TABLE webMapService (serviceId int NOT NULL AUTO_INCREMENT, "+ + "serviceUrl varchar(255) NOT NULL, name varchar(255), layers varchar(255),version DECIMAL(20,3),"+ + "format varchar(255), PRIMARY KEY (serviceId))"; + + try{ + db.query(checkTableExist); + } catch(e){ + log.info("Table "+tableName+" does not exist. It will be created."); + db.query(createTableWebMapService); + } + + + var serverId = request.getParameter("serverId"); + if(serverId == "all"){ + var getAllWmsEndPoints = "select * from webMapService"; + try{ + var allWmsEndPoints = db.query(getAllWmsEndPoints); + log.info(allWmsEndPoints); + response.contentType = "application/json"; + response.characterEncoding = "UTF-8"; + response.content = allWmsEndPoints; + } + catch(e){ + log.info(e.toString()); + } + finally{ + db.close(); + } + } + else{ + // TODO: get specific server details + } +} +else if(request.getMethod() == "POST"){ + + var serviceName = request.getParameter("serviceName"); + var layers = request.getParameter("layers"); + var wmsVersion = parseInt(request.getParameter("wmsVersion")); + var serviceEndPoint = request.getParameter("serviceEndPoint"); + var outputFormat = request.getParameter("outputFormat"); + + var insertWmsEndPoint ="INSERT INTO webMapService (serviceUrl, name, layers, version, format) VALUES('"+ serviceEndPoint +"', '"+ serviceName +"', '"+ layers +"', '"+ wmsVersion +"', '"+ outputFormat +"' );"; + try{ + db.query(insertWmsEndPoint); + log.info(serviceName + ' wms service added successfully!'); + print(serviceName + 'added successfully!'); + } + catch(e){ + log.error(e.toString()); + } + finally{ + db.close(); + } +} + + +function logToFile(message){ + var currentdate = new Date(); + var datetime = "[Info]: " + currentdate.getDate() + "/" + + (currentdate.getMonth()+1) + "/" + + currentdate.getFullYear() + " @ " + + currentdate.getHours() + ":" + + currentdate.getMinutes() + ":" + + currentdate.getSeconds()+"\t"; + + message = datetime + message + "\n"; + var path = "../log/server.log"; + var file = new File(path); + file.open("a+"); + + message = file.write(message); + file.close(); + +} + +%> \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/L.Control.Locate.css b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/L.Control.Locate.css new file mode 100644 index 000000000..b9868a589 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/L.Control.Locate.css @@ -0,0 +1,31 @@ +/* Compatible with Leaflet 0.7 */ + +@import url('font/locate-fa.woff'); +@import url('css/locate-fa.css'); +@import url('css/animation.css'); + +.leaflet-touch .leaflet-bar-part-single { + -webkit-border-radius: 7px 7px 7px 7px; + border-radius: 7px 7px 7px 7px; + border-bottom: none; +} + +.leaflet-control-locate a { + font-size: 1.4em; + margin-left: 1px; + color: #444; +} + +.leaflet-control-locate.active a { + color: #2074B6; +} + +.leaflet-control-locate.active.following a { + color: #FC8428; +} + +.leaflet-touch .leaflet-control-locate { + box-shadow: none; + border: 2px solid rgba(0,0,0,0.2); + background-clip: padding-box; +} diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/L.Control.Locate.ie.css b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/L.Control.Locate.ie.css new file mode 100644 index 000000000..4dac53455 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/L.Control.Locate.ie.css @@ -0,0 +1,14 @@ +/* Conditional stylesheet for IE. */ +@import url('css/locate-fa-ie7.css'); + +.leaflet-control-locate { + border: 3px solid #999; +} + +.leaflet-control-locate a { + background-color: #eee; +} + +.leaflet-control-locate a:hover { + background-color: #fff; +} diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/MarkerCluster.Default.css b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/MarkerCluster.Default.css new file mode 100644 index 000000000..bbc8c9fb0 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/MarkerCluster.Default.css @@ -0,0 +1,60 @@ +.marker-cluster-small { + background-color: rgba(181, 226, 140, 0.6); + } +.marker-cluster-small div { + background-color: rgba(110, 204, 57, 0.6); + } + +.marker-cluster-medium { + background-color: rgba(241, 211, 87, 0.6); + } +.marker-cluster-medium div { + background-color: rgba(240, 194, 12, 0.6); + } + +.marker-cluster-large { + background-color: rgba(253, 156, 115, 0.6); + } +.marker-cluster-large div { + background-color: rgba(241, 128, 23, 0.6); + } + + /* IE 6-8 fallback colors */ +.leaflet-oldie .marker-cluster-small { + background-color: rgb(181, 226, 140); + } +.leaflet-oldie .marker-cluster-small div { + background-color: rgb(110, 204, 57); + } + +.leaflet-oldie .marker-cluster-medium { + background-color: rgb(241, 211, 87); + } +.leaflet-oldie .marker-cluster-medium div { + background-color: rgb(240, 194, 12); + } + +.leaflet-oldie .marker-cluster-large { + background-color: rgb(253, 156, 115); + } +.leaflet-oldie .marker-cluster-large div { + background-color: rgb(241, 128, 23); +} + +.marker-cluster { + background-clip: padding-box; + border-radius: 20px; + } +.marker-cluster div { + width: 30px; + height: 30px; + margin-left: 5px; + margin-top: 5px; + + text-align: center; + border-radius: 15px; + font: 12px "Helvetica Neue", Arial, Helvetica, sans-serif; + } +.marker-cluster span { + line-height: 30px; + } \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/MarkerCluster.css b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/MarkerCluster.css new file mode 100644 index 000000000..00b0eddb9 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/MarkerCluster.css @@ -0,0 +1,6 @@ +.leaflet-cluster-anim .leaflet-marker-icon, .leaflet-cluster-anim .leaflet-marker-shadow { + -webkit-transition: -webkit-transform 0.3s ease-out, opacity 0.3s ease-in; + -moz-transition: -moz-transform 0.3s ease-out, opacity 0.3s ease-in; + -o-transition: -o-transform 0.3s ease-out, opacity 0.3s ease-in; + transition: transform 0.3s ease-out, opacity 0.3s ease-in; + } diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/app.css b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/app.css new file mode 100644 index 000000000..154d6a275 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/app.css @@ -0,0 +1,159 @@ +html, body, #container { + height: 100%; + width: 100%; +} +body { + padding-top: 50px; +} +input[type="radio"], input[type="checkbox"] { + margin: 0; +} +#sidebar { + width: 250px; + height: 100%; + max-width: 100%; + float: left; + -webkit-transition: all 0.25s ease-out; + -moz-transition: all 0.25s ease-out; + transition: all 0.25s ease-out; +} +#map { + width: auto; + height: 100%; + box-shadow: 0 0 10px rgba(0,0,0,0.5); +} +#loading { + position: absolute; + width: 220px; + height: 19px; + top: 50%; + left: 50%; + margin: -10px 0 0 -110px; + z-index: 20001; +} +.sidebar-wrapper { + width: 100%; + height: 100%; + position: relative; +} +.sidebar-table { + position: absolute; + width: 100%; + top: 124px; + bottom: 0px; + overflow: auto; +} +.leaflet-control-layers label { + font-weight: normal; + margin-bottom: 0px; +} +.leaflet-control-layers-group-name { + font-weight: bold; + margin-bottom: .2em; + display: block; +} +.leaflet-control-layers-group { + margin-bottom: .5em; +} +.leaflet-control-layers-group label { + padding-left: .5em; +} +.table { + margin-bottom: 0px; +} +.navbar .navbar-brand { + font-weight: bold; + font-size: 25px; + color: white; +} +.navbar-collapse.in { + overflow-y: hidden; +} +.navbar-header .navbar-icon-container { + margin-right: 15px; +} +.navbar-header .navbar-icon { + line-height: 50px; + height: 50px; +} +.navbar-header a.navbar-icon { + margin-left: 25px; +} +.typeahead { + background-color: #FFFFFF; +} +.tt-dropdown-menu { + background-color: #FFFFFF; + border: 1px solid rgba(0, 0, 0, 0.2); + border-radius: 4px 4px 4px 4px; + box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); + margin-top: 4px; + padding: 4px 0; + width: 100%; + max-height: 300px; + overflow: auto; +} +.tt-suggestion { + font-size: 14px; + line-height: 20px; + padding: 3px 10px; +} +.tt-suggestion.tt-cursor { + background-color: #0097CF; + color: #FFFFFF; + cursor: pointer; +} +.tt-suggestion p { + margin: 0; +} +.tt-suggestion + .tt-suggestion { + border-top: 1px solid #ccc; +} +.typeahead-header { + margin: 0 5px 5px 5px; + padding: 3px 0; + border-bottom: 2px solid #333; +} +.has-feedback .form-control-feedback { + position: absolute; + top: 0; + right: 0; + display: block; + width: 34px; + height: 34px; + line-height: 34px; + text-align: center; +} +@media (max-width: 992px) { + .navbar .navbar-brand { + font-size: 18px; + } +} +@media (max-width: 767px){ + .url-break { + word-break: break-all; + word-break: break-word; + -webkit-hyphens: auto; + hyphens: auto; + } + #sidebar { + display: none; + } +} +/* Print Handling */ +@media print { + .navbar { + display: none !important; + } + .leaflet-control-container { + display: none !important; + } +} + +.nav > li > a { + padding: 25px 15px !important; +} + +.nav > li > a:hover, .nav > li > a:focus { + background-color: transparent !important; +} \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/bootstrap-wizard-lib/LICENSE b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/bootstrap-wizard-lib/LICENSE new file mode 100644 index 000000000..6aee4f8c2 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/bootstrap-wizard-lib/LICENSE @@ -0,0 +1,19 @@ +Copyright (C) 2013 Panopta, Andrew Moffat + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/bootstrap-wizard-lib/bootstrap-wizard.css b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/bootstrap-wizard-lib/bootstrap-wizard.css new file mode 100644 index 000000000..4713675b3 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/bootstrap-wizard-lib/bootstrap-wizard.css @@ -0,0 +1,182 @@ +/* WIZARD GENERAL */ +.wizard { + display:none; +} + +.wizard-dialog {} +.wizard-content {} + +.wizard-body { + padding: 0; + margin: 0; +} + +/* WIZARD HEADER */ +.wizard-header { + padding: 9px 15px; + border-bottom: 0; +} + +.wizard-header h3 { + margin: 0; + line-height: 35px; + display: inline; + font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; + font-family: inherit; + font-weight: bold; + text-rendering: optimizelegibility; + color: rgb(51, 51, 51); +} + +.wizard-subtitle { + font-weight:bold; + color:#AFAFAF; + padding-left:20px; +} + + +/* WIZARD NAVIGATION */ +.wizard-steps { + width: 28%; + background-color: #f5f5f5; + border-bottom-left-radius: 6px; + position: relative; +} + +.wizard-nav-container { + padding-bottom: 30px; +} + +.wizard-nav-list { + margin-bottom: 0; +} + +.wizard-nav-link .glyphicon-chevron-right { + float:right; + margin-top:12px; + margin-right:-6px; + opacity:.25; +} + +li.wizard-nav-item.active .glyphicon-chevron-right { + opacity:1; +} + +li.wizard-nav-item { + line-height:40px; +} + +.wizard-nav-list > li > a { + background-color:#f5f5f5; + padding:3px 15px 3px 20px; + cursor:default; + color:#B4B4B4; +} + +.wizard-nav-list > li > a:hover { + background-color: transparent; +} + +.wizard-nav-list > li.already-visited > a.wizard-nav-link { + color:#08C; + cursor:pointer; +} + +.wizard-nav-list > li.active > a.wizard-nav-link { + color:white; +} + +.wizard-nav-item .already-visited .active { + background-color:#08C; +} + +.wizard-nav-list li.active > a { + background-color:#08C; +} + + +/* WIZARD CONTENT */ +.wizard-body form { + padding: 0; + margin: 0; +} + +/* WIZARD PROGRESS BAR */ +.wizard-progress-container { + margin-top: 20px; + padding: 15px; + width: 100%; + position: absolute; + bottom: 0; +} + +.wizard-card-container { + margin-left: 28%; +} + +/* WIZARD CARDS */ +.wizard-error, +.wizard-failure, +.wizard-success, +.wizard-loading, +.wizard-card { + border-top: 1px solid #EEE; + display:none; + padding:35px; + padding-top:20px; + overflow-y:auto; + + /* + position:relative; + height:300px; + margin-right: 5px; + */ +} + +.wizard-card-overlay { + overflow-y: initial; +} + +.wizard-card > h3 { + margin-top:0; + margin-bottom:20px; + font-size:21px; + line-height:40px; + font-weight:normal; +} + +/* WIZARD FOOTER */ +.wizard-footer { + padding:0; +} + +.wizard-buttons-container { + padding:20px; +} + +.wizard-cancel { + margin-left: 12px; +} + +/* Inner Card */ +.wizard-input-section { + margin-bottom:20px; +} + +.wizard-dialog .popover.error-popover { + background-color:#F2DEDE; + color:#B94A48; + border-color:#953B39; +} + +.wizard-dialog .popover.error-popover .arrow::after { + border-right-color:#F2DEDE; +} + +.wizard-dialog .popover.error-popover .popover-title { + display:none; +} + +.wizard-dialog .popover.error-popover .arrow { + border-right-color:#953B39; +} \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/bootstrap.min.css b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/bootstrap.min.css new file mode 100644 index 000000000..a9f35ceed --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/bootstrap.min.css @@ -0,0 +1,5 @@ +/*! + * Bootstrap v3.2.0 (http://getbootstrap.com) + * Copyright 2011-2014 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + *//*! normalize.css v3.0.1 | MIT License | git.io/normalize */html{font-family:sans-serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background:0 0}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{margin:.67em 0;font-size:2em}mark{color:#000;background:#ff0}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{height:0;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{margin:0;font:inherit;color:inherit}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}input{line-height:normal}input[type=checkbox],input[type=radio]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-appearance:textfield}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{padding:.35em .625em .75em;margin:0 2px;border:1px solid silver}legend{padding:0;border:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-spacing:0;border-collapse:collapse}td,th{padding:0}@media print{*{color:#000!important;text-shadow:none!important;background:transparent!important;-webkit-box-shadow:none!important;box-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="javascript:"]:after,a[href^="#"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100%!important}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}select{background:#fff!important}.navbar{display:none}.table td,.table th{background-color:#fff!important}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000!important}.label{border:1px solid #000}.table{border-collapse:collapse!important}.table-bordered th,.table-bordered td{border:1px solid #ddd!important}}@font-face{font-family:'Glyphicons Halflings';src:url(../fonts/glyphicons-halflings-regular.eot);src:url(../fonts/glyphicons-halflings-regular.eot?#iefix) format('embedded-opentype'),url(../fonts/glyphicons-halflings-regular.woff) format('woff'),url(../fonts/glyphicons-halflings-regular.ttf) format('truetype'),url(../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular) format('svg')}.glyphicon{position:relative;top:1px;display:inline-block;font-family:'Glyphicons Halflings';font-style:normal;font-weight:400;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.glyphicon-asterisk:before{content:"\2a"}.glyphicon-plus:before{content:"\2b"}.glyphicon-euro:before{content:"\20ac"}.glyphicon-minus:before{content:"\2212"}.glyphicon-cloud:before{content:"\2601"}.glyphicon-envelope:before{content:"\2709"}.glyphicon-pencil:before{content:"\270f"}.glyphicon-glass:before{content:"\e001"}.glyphicon-music:before{content:"\e002"}.glyphicon-search:before{content:"\e003"}.glyphicon-heart:before{content:"\e005"}.glyphicon-star:before{content:"\e006"}.glyphicon-star-empty:before{content:"\e007"}.glyphicon-user:before{content:"\e008"}.glyphicon-film:before{content:"\e009"}.glyphicon-th-large:before{content:"\e010"}.glyphicon-th:before{content:"\e011"}.glyphicon-th-list:before{content:"\e012"}.glyphicon-ok:before{content:"\e013"}.glyphicon-remove:before{content:"\e014"}.glyphicon-zoom-in:before{content:"\e015"}.glyphicon-zoom-out:before{content:"\e016"}.glyphicon-off:before{content:"\e017"}.glyphicon-signal:before{content:"\e018"}.glyphicon-cog:before{content:"\e019"}.glyphicon-trash:before{content:"\e020"}.glyphicon-home:before{content:"\e021"}.glyphicon-file:before{content:"\e022"}.glyphicon-time:before{content:"\e023"}.glyphicon-road:before{content:"\e024"}.glyphicon-download-alt:before{content:"\e025"}.glyphicon-download:before{content:"\e026"}.glyphicon-upload:before{content:"\e027"}.glyphicon-inbox:before{content:"\e028"}.glyphicon-play-circle:before{content:"\e029"}.glyphicon-repeat:before{content:"\e030"}.glyphicon-refresh:before{content:"\e031"}.glyphicon-list-alt:before{content:"\e032"}.glyphicon-lock:before{content:"\e033"}.glyphicon-flag:before{content:"\e034"}.glyphicon-headphones:before{content:"\e035"}.glyphicon-volume-off:before{content:"\e036"}.glyphicon-volume-down:before{content:"\e037"}.glyphicon-volume-up:before{content:"\e038"}.glyphicon-qrcode:before{content:"\e039"}.glyphicon-barcode:before{content:"\e040"}.glyphicon-tag:before{content:"\e041"}.glyphicon-tags:before{content:"\e042"}.glyphicon-book:before{content:"\e043"}.glyphicon-bookmark:before{content:"\e044"}.glyphicon-print:before{content:"\e045"}.glyphicon-camera:before{content:"\e046"}.glyphicon-font:before{content:"\e047"}.glyphicon-bold:before{content:"\e048"}.glyphicon-italic:before{content:"\e049"}.glyphicon-text-height:before{content:"\e050"}.glyphicon-text-width:before{content:"\e051"}.glyphicon-align-left:before{content:"\e052"}.glyphicon-align-center:before{content:"\e053"}.glyphicon-align-right:before{content:"\e054"}.glyphicon-align-justify:before{content:"\e055"}.glyphicon-list:before{content:"\e056"}.glyphicon-indent-left:before{content:"\e057"}.glyphicon-indent-right:before{content:"\e058"}.glyphicon-facetime-video:before{content:"\e059"}.glyphicon-picture:before{content:"\e060"}.glyphicon-map-marker:before{content:"\e062"}.glyphicon-adjust:before{content:"\e063"}.glyphicon-tint:before{content:"\e064"}.glyphicon-edit:before{content:"\e065"}.glyphicon-share:before{content:"\e066"}.glyphicon-check:before{content:"\e067"}.glyphicon-move:before{content:"\e068"}.glyphicon-step-backward:before{content:"\e069"}.glyphicon-fast-backward:before{content:"\e070"}.glyphicon-backward:before{content:"\e071"}.glyphicon-play:before{content:"\e072"}.glyphicon-pause:before{content:"\e073"}.glyphicon-stop:before{content:"\e074"}.glyphicon-forward:before{content:"\e075"}.glyphicon-fast-forward:before{content:"\e076"}.glyphicon-step-forward:before{content:"\e077"}.glyphicon-eject:before{content:"\e078"}.glyphicon-chevron-left:before{content:"\e079"}.glyphicon-chevron-right:before{content:"\e080"}.glyphicon-plus-sign:before{content:"\e081"}.glyphicon-minus-sign:before{content:"\e082"}.glyphicon-remove-sign:before{content:"\e083"}.glyphicon-ok-sign:before{content:"\e084"}.glyphicon-question-sign:before{content:"\e085"}.glyphicon-info-sign:before{content:"\e086"}.glyphicon-screenshot:before{content:"\e087"}.glyphicon-remove-circle:before{content:"\e088"}.glyphicon-ok-circle:before{content:"\e089"}.glyphicon-ban-circle:before{content:"\e090"}.glyphicon-arrow-left:before{content:"\e091"}.glyphicon-arrow-right:before{content:"\e092"}.glyphicon-arrow-up:before{content:"\e093"}.glyphicon-arrow-down:before{content:"\e094"}.glyphicon-share-alt:before{content:"\e095"}.glyphicon-resize-full:before{content:"\e096"}.glyphicon-resize-small:before{content:"\e097"}.glyphicon-exclamation-sign:before{content:"\e101"}.glyphicon-gift:before{content:"\e102"}.glyphicon-leaf:before{content:"\e103"}.glyphicon-fire:before{content:"\e104"}.glyphicon-eye-open:before{content:"\e105"}.glyphicon-eye-close:before{content:"\e106"}.glyphicon-warning-sign:before{content:"\e107"}.glyphicon-plane:before{content:"\e108"}.glyphicon-calendar:before{content:"\e109"}.glyphicon-random:before{content:"\e110"}.glyphicon-comment:before{content:"\e111"}.glyphicon-magnet:before{content:"\e112"}.glyphicon-chevron-up:before{content:"\e113"}.glyphicon-chevron-down:before{content:"\e114"}.glyphicon-retweet:before{content:"\e115"}.glyphicon-shopping-cart:before{content:"\e116"}.glyphicon-folder-close:before{content:"\e117"}.glyphicon-folder-open:before{content:"\e118"}.glyphicon-resize-vertical:before{content:"\e119"}.glyphicon-resize-horizontal:before{content:"\e120"}.glyphicon-hdd:before{content:"\e121"}.glyphicon-bullhorn:before{content:"\e122"}.glyphicon-bell:before{content:"\e123"}.glyphicon-certificate:before{content:"\e124"}.glyphicon-thumbs-up:before{content:"\e125"}.glyphicon-thumbs-down:before{content:"\e126"}.glyphicon-hand-right:before{content:"\e127"}.glyphicon-hand-left:before{content:"\e128"}.glyphicon-hand-up:before{content:"\e129"}.glyphicon-hand-down:before{content:"\e130"}.glyphicon-circle-arrow-right:before{content:"\e131"}.glyphicon-circle-arrow-left:before{content:"\e132"}.glyphicon-circle-arrow-up:before{content:"\e133"}.glyphicon-circle-arrow-down:before{content:"\e134"}.glyphicon-globe:before{content:"\e135"}.glyphicon-wrench:before{content:"\e136"}.glyphicon-tasks:before{content:"\e137"}.glyphicon-filter:before{content:"\e138"}.glyphicon-briefcase:before{content:"\e139"}.glyphicon-fullscreen:before{content:"\e140"}.glyphicon-dashboard:before{content:"\e141"}.glyphicon-paperclip:before{content:"\e142"}.glyphicon-heart-empty:before{content:"\e143"}.glyphicon-link:before{content:"\e144"}.glyphicon-phone:before{content:"\e145"}.glyphicon-pushpin:before{content:"\e146"}.glyphicon-usd:before{content:"\e148"}.glyphicon-gbp:before{content:"\e149"}.glyphicon-sort:before{content:"\e150"}.glyphicon-sort-by-alphabet:before{content:"\e151"}.glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.glyphicon-sort-by-order:before{content:"\e153"}.glyphicon-sort-by-order-alt:before{content:"\e154"}.glyphicon-sort-by-attributes:before{content:"\e155"}.glyphicon-sort-by-attributes-alt:before{content:"\e156"}.glyphicon-unchecked:before{content:"\e157"}.glyphicon-expand:before{content:"\e158"}.glyphicon-collapse-down:before{content:"\e159"}.glyphicon-collapse-up:before{content:"\e160"}.glyphicon-log-in:before{content:"\e161"}.glyphicon-flash:before{content:"\e162"}.glyphicon-log-out:before{content:"\e163"}.glyphicon-new-window:before{content:"\e164"}.glyphicon-record:before{content:"\e165"}.glyphicon-save:before{content:"\e166"}.glyphicon-open:before{content:"\e167"}.glyphicon-saved:before{content:"\e168"}.glyphicon-import:before{content:"\e169"}.glyphicon-export:before{content:"\e170"}.glyphicon-send:before{content:"\e171"}.glyphicon-floppy-disk:before{content:"\e172"}.glyphicon-floppy-saved:before{content:"\e173"}.glyphicon-floppy-remove:before{content:"\e174"}.glyphicon-floppy-save:before{content:"\e175"}.glyphicon-floppy-open:before{content:"\e176"}.glyphicon-credit-card:before{content:"\e177"}.glyphicon-transfer:before{content:"\e178"}.glyphicon-cutlery:before{content:"\e179"}.glyphicon-header:before{content:"\e180"}.glyphicon-compressed:before{content:"\e181"}.glyphicon-earphone:before{content:"\e182"}.glyphicon-phone-alt:before{content:"\e183"}.glyphicon-tower:before{content:"\e184"}.glyphicon-stats:before{content:"\e185"}.glyphicon-sd-video:before{content:"\e186"}.glyphicon-hd-video:before{content:"\e187"}.glyphicon-subtitles:before{content:"\e188"}.glyphicon-sound-stereo:before{content:"\e189"}.glyphicon-sound-dolby:before{content:"\e190"}.glyphicon-sound-5-1:before{content:"\e191"}.glyphicon-sound-6-1:before{content:"\e192"}.glyphicon-sound-7-1:before{content:"\e193"}.glyphicon-copyright-mark:before{content:"\e194"}.glyphicon-registration-mark:before{content:"\e195"}.glyphicon-cloud-download:before{content:"\e197"}.glyphicon-cloud-upload:before{content:"\e198"}.glyphicon-tree-conifer:before{content:"\e199"}.glyphicon-tree-deciduous:before{content:"\e200"}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}:before,:after{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:10px;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.42857143;color:#333;background-color:#fff}input,button,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#428bca;text-decoration:none}a:hover,a:focus{color:#2a6496;text-decoration:underline}a:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}figure{margin:0}img{vertical-align:middle}.img-responsive,.thumbnail>img,.thumbnail a>img,.carousel-inner>.item>img,.carousel-inner>.item>a>img{display:block;width:100% \9;max-width:100%;height:auto}.img-rounded{border-radius:6px}.img-thumbnail{display:inline-block;width:100% \9;max-width:100%;height:auto;padding:4px;line-height:1.42857143;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.img-circle{border-radius:50%}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:inherit;font-weight:500;line-height:1.1;color:inherit}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small,.h1 small,.h2 small,.h3 small,.h4 small,.h5 small,.h6 small,h1 .small,h2 .small,h3 .small,h4 .small,h5 .small,h6 .small,.h1 .small,.h2 .small,.h3 .small,.h4 .small,.h5 .small,.h6 .small{font-weight:400;line-height:1;color:#777}h1,.h1,h2,.h2,h3,.h3{margin-top:20px;margin-bottom:10px}h1 small,.h1 small,h2 small,.h2 small,h3 small,.h3 small,h1 .small,.h1 .small,h2 .small,.h2 .small,h3 .small,.h3 .small{font-size:65%}h4,.h4,h5,.h5,h6,.h6{margin-top:10px;margin-bottom:10px}h4 small,.h4 small,h5 small,.h5 small,h6 small,.h6 small,h4 .small,.h4 .small,h5 .small,.h5 .small,h6 .small,.h6 .small{font-size:75%}h1,.h1{font-size:36px}h2,.h2{font-size:30px}h3,.h3{font-size:24px}h4,.h4{font-size:18px}h5,.h5{font-size:14px}h6,.h6{font-size:12px}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:16px;font-weight:300;line-height:1.4}@media (min-width:768px){.lead{font-size:21px}}small,.small{font-size:85%}cite{font-style:normal}mark,.mark{padding:.2em;background-color:#fcf8e3}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}.text-nowrap{white-space:nowrap}.text-lowercase{text-transform:lowercase}.text-uppercase{text-transform:uppercase}.text-capitalize{text-transform:capitalize}.text-muted{color:#777}.text-primary{color:#428bca}a.text-primary:hover{color:#3071a9}.text-success{color:#3c763d}a.text-success:hover{color:#2b542c}.text-info{color:#31708f}a.text-info:hover{color:#245269}.text-warning{color:#8a6d3b}a.text-warning:hover{color:#66512c}.text-danger{color:#a94442}a.text-danger:hover{color:#843534}.bg-primary{color:#fff;background-color:#428bca}a.bg-primary:hover{background-color:#3071a9}.bg-success{background-color:#dff0d8}a.bg-success:hover{background-color:#c1e2b3}.bg-info{background-color:#d9edf7}a.bg-info:hover{background-color:#afd9ee}.bg-warning{background-color:#fcf8e3}a.bg-warning:hover{background-color:#f7ecb5}.bg-danger{background-color:#f2dede}a.bg-danger:hover{background-color:#e4b9b9}.page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}ul,ol{margin-top:0;margin-bottom:10px}ul ul,ol ul,ul ol,ol ol{margin-bottom:0}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;margin-left:-5px;list-style:none}.list-inline>li{display:inline-block;padding-right:5px;padding-left:5px}dl{margin-top:0;margin-bottom:20px}dt,dd{line-height:1.42857143}dt{font-weight:700}dd{margin-left:0}@media (min-width:768px){.dl-horizontal dt{float:left;width:160px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:1px dotted #777}.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:10px 20px;margin:0 0 20px;font-size:17.5px;border-left:5px solid #eee}blockquote p:last-child,blockquote ul:last-child,blockquote ol:last-child{margin-bottom:0}blockquote footer,blockquote small,blockquote .small{display:block;font-size:80%;line-height:1.42857143;color:#777}blockquote footer:before,blockquote small:before,blockquote .small:before{content:'\2014 \00A0'}.blockquote-reverse,blockquote.pull-right{padding-right:15px;padding-left:0;text-align:right;border-right:5px solid #eee;border-left:0}.blockquote-reverse footer:before,blockquote.pull-right footer:before,.blockquote-reverse small:before,blockquote.pull-right small:before,.blockquote-reverse .small:before,blockquote.pull-right .small:before{content:''}.blockquote-reverse footer:after,blockquote.pull-right footer:after,.blockquote-reverse small:after,blockquote.pull-right small:after,.blockquote-reverse .small:after,blockquote.pull-right .small:after{content:'\00A0 \2014'}blockquote:before,blockquote:after{content:""}address{margin-bottom:20px;font-style:normal;line-height:1.42857143}code,kbd,pre,samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}code{padding:2px 4px;font-size:90%;color:#c7254e;background-color:#f9f2f4;border-radius:4px}kbd{padding:2px 4px;font-size:90%;color:#fff;background-color:#333;border-radius:3px;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.25);box-shadow:inset 0 -1px 0 rgba(0,0,0,.25)}kbd kbd{padding:0;font-size:100%;-webkit-box-shadow:none;box-shadow:none}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.42857143;color:#333;word-break:break-all;word-wrap:break-word;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:768px){.container{width:750px}}@media (min-width:992px){.container{width:970px}}@media (min-width:1200px){.container{width:1170px}}.container-fluid{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.row{margin-right:-15px;margin-left:-15px}.col-xs-1,.col-sm-1,.col-md-1,.col-lg-1,.col-xs-2,.col-sm-2,.col-md-2,.col-lg-2,.col-xs-3,.col-sm-3,.col-md-3,.col-lg-3,.col-xs-4,.col-sm-4,.col-md-4,.col-lg-4,.col-xs-5,.col-sm-5,.col-md-5,.col-lg-5,.col-xs-6,.col-sm-6,.col-md-6,.col-lg-6,.col-xs-7,.col-sm-7,.col-md-7,.col-lg-7,.col-xs-8,.col-sm-8,.col-md-8,.col-lg-8,.col-xs-9,.col-sm-9,.col-md-9,.col-lg-9,.col-xs-10,.col-sm-10,.col-md-10,.col-lg-10,.col-xs-11,.col-sm-11,.col-md-11,.col-lg-11,.col-xs-12,.col-sm-12,.col-md-12,.col-lg-12{position:relative;min-height:1px;padding-right:15px;padding-left:15px}.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11,.col-xs-12{float:left}.col-xs-12{width:100%}.col-xs-11{width:91.66666667%}.col-xs-10{width:83.33333333%}.col-xs-9{width:75%}.col-xs-8{width:66.66666667%}.col-xs-7{width:58.33333333%}.col-xs-6{width:50%}.col-xs-5{width:41.66666667%}.col-xs-4{width:33.33333333%}.col-xs-3{width:25%}.col-xs-2{width:16.66666667%}.col-xs-1{width:8.33333333%}.col-xs-pull-12{right:100%}.col-xs-pull-11{right:91.66666667%}.col-xs-pull-10{right:83.33333333%}.col-xs-pull-9{right:75%}.col-xs-pull-8{right:66.66666667%}.col-xs-pull-7{right:58.33333333%}.col-xs-pull-6{right:50%}.col-xs-pull-5{right:41.66666667%}.col-xs-pull-4{right:33.33333333%}.col-xs-pull-3{right:25%}.col-xs-pull-2{right:16.66666667%}.col-xs-pull-1{right:8.33333333%}.col-xs-pull-0{right:auto}.col-xs-push-12{left:100%}.col-xs-push-11{left:91.66666667%}.col-xs-push-10{left:83.33333333%}.col-xs-push-9{left:75%}.col-xs-push-8{left:66.66666667%}.col-xs-push-7{left:58.33333333%}.col-xs-push-6{left:50%}.col-xs-push-5{left:41.66666667%}.col-xs-push-4{left:33.33333333%}.col-xs-push-3{left:25%}.col-xs-push-2{left:16.66666667%}.col-xs-push-1{left:8.33333333%}.col-xs-push-0{left:auto}.col-xs-offset-12{margin-left:100%}.col-xs-offset-11{margin-left:91.66666667%}.col-xs-offset-10{margin-left:83.33333333%}.col-xs-offset-9{margin-left:75%}.col-xs-offset-8{margin-left:66.66666667%}.col-xs-offset-7{margin-left:58.33333333%}.col-xs-offset-6{margin-left:50%}.col-xs-offset-5{margin-left:41.66666667%}.col-xs-offset-4{margin-left:33.33333333%}.col-xs-offset-3{margin-left:25%}.col-xs-offset-2{margin-left:16.66666667%}.col-xs-offset-1{margin-left:8.33333333%}.col-xs-offset-0{margin-left:0}@media (min-width:768px){.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12{float:left}.col-sm-12{width:100%}.col-sm-11{width:91.66666667%}.col-sm-10{width:83.33333333%}.col-sm-9{width:75%}.col-sm-8{width:66.66666667%}.col-sm-7{width:58.33333333%}.col-sm-6{width:50%}.col-sm-5{width:41.66666667%}.col-sm-4{width:33.33333333%}.col-sm-3{width:25%}.col-sm-2{width:16.66666667%}.col-sm-1{width:8.33333333%}.col-sm-pull-12{right:100%}.col-sm-pull-11{right:91.66666667%}.col-sm-pull-10{right:83.33333333%}.col-sm-pull-9{right:75%}.col-sm-pull-8{right:66.66666667%}.col-sm-pull-7{right:58.33333333%}.col-sm-pull-6{right:50%}.col-sm-pull-5{right:41.66666667%}.col-sm-pull-4{right:33.33333333%}.col-sm-pull-3{right:25%}.col-sm-pull-2{right:16.66666667%}.col-sm-pull-1{right:8.33333333%}.col-sm-pull-0{right:auto}.col-sm-push-12{left:100%}.col-sm-push-11{left:91.66666667%}.col-sm-push-10{left:83.33333333%}.col-sm-push-9{left:75%}.col-sm-push-8{left:66.66666667%}.col-sm-push-7{left:58.33333333%}.col-sm-push-6{left:50%}.col-sm-push-5{left:41.66666667%}.col-sm-push-4{left:33.33333333%}.col-sm-push-3{left:25%}.col-sm-push-2{left:16.66666667%}.col-sm-push-1{left:8.33333333%}.col-sm-push-0{left:auto}.col-sm-offset-12{margin-left:100%}.col-sm-offset-11{margin-left:91.66666667%}.col-sm-offset-10{margin-left:83.33333333%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-8{margin-left:66.66666667%}.col-sm-offset-7{margin-left:58.33333333%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-5{margin-left:41.66666667%}.col-sm-offset-4{margin-left:33.33333333%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-2{margin-left:16.66666667%}.col-sm-offset-1{margin-left:8.33333333%}.col-sm-offset-0{margin-left:0}}@media (min-width:992px){.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12{float:left}.col-md-12{width:100%}.col-md-11{width:91.66666667%}.col-md-10{width:83.33333333%}.col-md-9{width:75%}.col-md-8{width:66.66666667%}.col-md-7{width:58.33333333%}.col-md-6{width:50%}.col-md-5{width:41.66666667%}.col-md-4{width:33.33333333%}.col-md-3{width:25%}.col-md-2{width:16.66666667%}.col-md-1{width:8.33333333%}.col-md-pull-12{right:100%}.col-md-pull-11{right:91.66666667%}.col-md-pull-10{right:83.33333333%}.col-md-pull-9{right:75%}.col-md-pull-8{right:66.66666667%}.col-md-pull-7{right:58.33333333%}.col-md-pull-6{right:50%}.col-md-pull-5{right:41.66666667%}.col-md-pull-4{right:33.33333333%}.col-md-pull-3{right:25%}.col-md-pull-2{right:16.66666667%}.col-md-pull-1{right:8.33333333%}.col-md-pull-0{right:auto}.col-md-push-12{left:100%}.col-md-push-11{left:91.66666667%}.col-md-push-10{left:83.33333333%}.col-md-push-9{left:75%}.col-md-push-8{left:66.66666667%}.col-md-push-7{left:58.33333333%}.col-md-push-6{left:50%}.col-md-push-5{left:41.66666667%}.col-md-push-4{left:33.33333333%}.col-md-push-3{left:25%}.col-md-push-2{left:16.66666667%}.col-md-push-1{left:8.33333333%}.col-md-push-0{left:auto}.col-md-offset-12{margin-left:100%}.col-md-offset-11{margin-left:91.66666667%}.col-md-offset-10{margin-left:83.33333333%}.col-md-offset-9{margin-left:75%}.col-md-offset-8{margin-left:66.66666667%}.col-md-offset-7{margin-left:58.33333333%}.col-md-offset-6{margin-left:50%}.col-md-offset-5{margin-left:41.66666667%}.col-md-offset-4{margin-left:33.33333333%}.col-md-offset-3{margin-left:25%}.col-md-offset-2{margin-left:16.66666667%}.col-md-offset-1{margin-left:8.33333333%}.col-md-offset-0{margin-left:0}}@media (min-width:1200px){.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12{float:left}.col-lg-12{width:100%}.col-lg-11{width:91.66666667%}.col-lg-10{width:83.33333333%}.col-lg-9{width:75%}.col-lg-8{width:66.66666667%}.col-lg-7{width:58.33333333%}.col-lg-6{width:50%}.col-lg-5{width:41.66666667%}.col-lg-4{width:33.33333333%}.col-lg-3{width:25%}.col-lg-2{width:16.66666667%}.col-lg-1{width:8.33333333%}.col-lg-pull-12{right:100%}.col-lg-pull-11{right:91.66666667%}.col-lg-pull-10{right:83.33333333%}.col-lg-pull-9{right:75%}.col-lg-pull-8{right:66.66666667%}.col-lg-pull-7{right:58.33333333%}.col-lg-pull-6{right:50%}.col-lg-pull-5{right:41.66666667%}.col-lg-pull-4{right:33.33333333%}.col-lg-pull-3{right:25%}.col-lg-pull-2{right:16.66666667%}.col-lg-pull-1{right:8.33333333%}.col-lg-pull-0{right:auto}.col-lg-push-12{left:100%}.col-lg-push-11{left:91.66666667%}.col-lg-push-10{left:83.33333333%}.col-lg-push-9{left:75%}.col-lg-push-8{left:66.66666667%}.col-lg-push-7{left:58.33333333%}.col-lg-push-6{left:50%}.col-lg-push-5{left:41.66666667%}.col-lg-push-4{left:33.33333333%}.col-lg-push-3{left:25%}.col-lg-push-2{left:16.66666667%}.col-lg-push-1{left:8.33333333%}.col-lg-push-0{left:auto}.col-lg-offset-12{margin-left:100%}.col-lg-offset-11{margin-left:91.66666667%}.col-lg-offset-10{margin-left:83.33333333%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-8{margin-left:66.66666667%}.col-lg-offset-7{margin-left:58.33333333%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-5{margin-left:41.66666667%}.col-lg-offset-4{margin-left:33.33333333%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-2{margin-left:16.66666667%}.col-lg-offset-1{margin-left:8.33333333%}.col-lg-offset-0{margin-left:0}}table{background-color:transparent}th{text-align:left}.table{width:100%;max-width:100%;margin-bottom:20px}.table>thead>tr>th,.table>tbody>tr>th,.table>tfoot>tr>th,.table>thead>tr>td,.table>tbody>tr>td,.table>tfoot>tr>td{padding:8px;line-height:1.42857143;vertical-align:top;border-top:1px solid #ddd}.table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.table>caption+thead>tr:first-child>th,.table>colgroup+thead>tr:first-child>th,.table>thead:first-child>tr:first-child>th,.table>caption+thead>tr:first-child>td,.table>colgroup+thead>tr:first-child>td,.table>thead:first-child>tr:first-child>td{border-top:0}.table>tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed>thead>tr>th,.table-condensed>tbody>tr>th,.table-condensed>tfoot>tr>th,.table-condensed>thead>tr>td,.table-condensed>tbody>tr>td,.table-condensed>tfoot>tr>td{padding:5px}.table-bordered{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>tbody>tr>td,.table-bordered>tfoot>tr>td{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>thead>tr>td{border-bottom-width:2px}.table-striped>tbody>tr:nth-child(odd)>td,.table-striped>tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}.table-hover>tbody>tr:hover>td,.table-hover>tbody>tr:hover>th{background-color:#f5f5f5}table col[class*=col-]{position:static;display:table-column;float:none}table td[class*=col-],table th[class*=col-]{position:static;display:table-cell;float:none}.table>thead>tr>td.active,.table>tbody>tr>td.active,.table>tfoot>tr>td.active,.table>thead>tr>th.active,.table>tbody>tr>th.active,.table>tfoot>tr>th.active,.table>thead>tr.active>td,.table>tbody>tr.active>td,.table>tfoot>tr.active>td,.table>thead>tr.active>th,.table>tbody>tr.active>th,.table>tfoot>tr.active>th{background-color:#f5f5f5}.table-hover>tbody>tr>td.active:hover,.table-hover>tbody>tr>th.active:hover,.table-hover>tbody>tr.active:hover>td,.table-hover>tbody>tr:hover>.active,.table-hover>tbody>tr.active:hover>th{background-color:#e8e8e8}.table>thead>tr>td.success,.table>tbody>tr>td.success,.table>tfoot>tr>td.success,.table>thead>tr>th.success,.table>tbody>tr>th.success,.table>tfoot>tr>th.success,.table>thead>tr.success>td,.table>tbody>tr.success>td,.table>tfoot>tr.success>td,.table>thead>tr.success>th,.table>tbody>tr.success>th,.table>tfoot>tr.success>th{background-color:#dff0d8}.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover,.table-hover>tbody>tr.success:hover>td,.table-hover>tbody>tr:hover>.success,.table-hover>tbody>tr.success:hover>th{background-color:#d0e9c6}.table>thead>tr>td.info,.table>tbody>tr>td.info,.table>tfoot>tr>td.info,.table>thead>tr>th.info,.table>tbody>tr>th.info,.table>tfoot>tr>th.info,.table>thead>tr.info>td,.table>tbody>tr.info>td,.table>tfoot>tr.info>td,.table>thead>tr.info>th,.table>tbody>tr.info>th,.table>tfoot>tr.info>th{background-color:#d9edf7}.table-hover>tbody>tr>td.info:hover,.table-hover>tbody>tr>th.info:hover,.table-hover>tbody>tr.info:hover>td,.table-hover>tbody>tr:hover>.info,.table-hover>tbody>tr.info:hover>th{background-color:#c4e3f3}.table>thead>tr>td.warning,.table>tbody>tr>td.warning,.table>tfoot>tr>td.warning,.table>thead>tr>th.warning,.table>tbody>tr>th.warning,.table>tfoot>tr>th.warning,.table>thead>tr.warning>td,.table>tbody>tr.warning>td,.table>tfoot>tr.warning>td,.table>thead>tr.warning>th,.table>tbody>tr.warning>th,.table>tfoot>tr.warning>th{background-color:#fcf8e3}.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover,.table-hover>tbody>tr.warning:hover>td,.table-hover>tbody>tr:hover>.warning,.table-hover>tbody>tr.warning:hover>th{background-color:#faf2cc}.table>thead>tr>td.danger,.table>tbody>tr>td.danger,.table>tfoot>tr>td.danger,.table>thead>tr>th.danger,.table>tbody>tr>th.danger,.table>tfoot>tr>th.danger,.table>thead>tr.danger>td,.table>tbody>tr.danger>td,.table>tfoot>tr.danger>td,.table>thead>tr.danger>th,.table>tbody>tr.danger>th,.table>tfoot>tr.danger>th{background-color:#f2dede}.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover,.table-hover>tbody>tr.danger:hover>td,.table-hover>tbody>tr:hover>.danger,.table-hover>tbody>tr.danger:hover>th{background-color:#ebcccc}@media screen and (max-width:767px){.table-responsive{width:100%;margin-bottom:15px;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar;border:1px solid #ddd}.table-responsive>.table{margin-bottom:0}.table-responsive>.table>thead>tr>th,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tfoot>tr>td{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>thead>tr>th:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.table-responsive>.table-bordered>thead>tr>th:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>th,.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>td{border-bottom:0}}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5}label{display:inline-block;max-width:100%;margin-bottom:5px;font-weight:700}input[type=search]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type=radio],input[type=checkbox]{margin:4px 0 0;margin-top:1px \9;line-height:normal}input[type=file]{display:block}input[type=range]{display:block;width:100%}select[multiple],select[size]{height:auto}input[type=file]:focus,input[type=radio]:focus,input[type=checkbox]:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}output{display:block;padding-top:7px;font-size:14px;line-height:1.42857143;color:#555}.form-control{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.42857143;color:#555;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border-color ease-in-out .15s,-webkit-box-shadow ease-in-out .15s;-o-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s}.form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)}.form-control::-moz-placeholder{color:#777;opacity:1}.form-control:-ms-input-placeholder{color:#777}.form-control::-webkit-input-placeholder{color:#777}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{cursor:not-allowed;background-color:#eee;opacity:1}textarea.form-control{height:auto}input[type=search]{-webkit-appearance:none}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{line-height:34px;line-height:1.42857143 \0}input[type=date].input-sm,input[type=time].input-sm,input[type=datetime-local].input-sm,input[type=month].input-sm{line-height:30px}input[type=date].input-lg,input[type=time].input-lg,input[type=datetime-local].input-lg,input[type=month].input-lg{line-height:46px}.form-group{margin-bottom:15px}.radio,.checkbox{position:relative;display:block;min-height:20px;margin-top:10px;margin-bottom:10px}.radio label,.checkbox label{padding-left:20px;margin-bottom:0;font-weight:400;cursor:pointer}.radio input[type=radio],.radio-inline input[type=radio],.checkbox input[type=checkbox],.checkbox-inline input[type=checkbox]{position:absolute;margin-top:4px \9;margin-left:-20px}.radio+.radio,.checkbox+.checkbox{margin-top:-5px}.radio-inline,.checkbox-inline{display:inline-block;padding-left:20px;margin-bottom:0;font-weight:400;vertical-align:middle;cursor:pointer}.radio-inline+.radio-inline,.checkbox-inline+.checkbox-inline{margin-top:0;margin-left:10px}input[type=radio][disabled],input[type=checkbox][disabled],input[type=radio].disabled,input[type=checkbox].disabled,fieldset[disabled] input[type=radio],fieldset[disabled] input[type=checkbox]{cursor:not-allowed}.radio-inline.disabled,.checkbox-inline.disabled,fieldset[disabled] .radio-inline,fieldset[disabled] .checkbox-inline{cursor:not-allowed}.radio.disabled label,.checkbox.disabled label,fieldset[disabled] .radio label,fieldset[disabled] .checkbox label{cursor:not-allowed}.form-control-static{padding-top:7px;padding-bottom:7px;margin-bottom:0}.form-control-static.input-lg,.form-control-static.input-sm{padding-right:0;padding-left:0}.input-sm,.form-horizontal .form-group-sm .form-control{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-sm{height:30px;line-height:30px}textarea.input-sm,select[multiple].input-sm{height:auto}.input-lg,.form-horizontal .form-group-lg .form-control{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}select.input-lg{height:46px;line-height:46px}textarea.input-lg,select[multiple].input-lg{height:auto}.has-feedback{position:relative}.has-feedback .form-control{padding-right:42.5px}.form-control-feedback{position:absolute;top:25px;right:0;z-index:2;display:block;width:34px;height:34px;line-height:34px;text-align:center}.input-lg+.form-control-feedback{width:46px;height:46px;line-height:46px}.input-sm+.form-control-feedback{width:30px;height:30px;line-height:30px}.has-success .help-block,.has-success .control-label,.has-success .radio,.has-success .checkbox,.has-success .radio-inline,.has-success .checkbox-inline{color:#3c763d}.has-success .form-control{border-color:#3c763d;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-success .form-control:focus{border-color:#2b542c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168}.has-success .input-group-addon{color:#3c763d;background-color:#dff0d8;border-color:#3c763d}.has-success .form-control-feedback{color:#3c763d}.has-warning .help-block,.has-warning .control-label,.has-warning .radio,.has-warning .checkbox,.has-warning .radio-inline,.has-warning .checkbox-inline{color:#8a6d3b}.has-warning .form-control{border-color:#8a6d3b;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-warning .form-control:focus{border-color:#66512c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b}.has-warning .input-group-addon{color:#8a6d3b;background-color:#fcf8e3;border-color:#8a6d3b}.has-warning .form-control-feedback{color:#8a6d3b}.has-error .help-block,.has-error .control-label,.has-error .radio,.has-error .checkbox,.has-error .radio-inline,.has-error .checkbox-inline{color:#a94442}.has-error .form-control{border-color:#a94442;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-error .form-control:focus{border-color:#843534;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483}.has-error .input-group-addon{color:#a94442;background-color:#f2dede;border-color:#a94442}.has-error .form-control-feedback{color:#a94442}.has-feedback label.sr-only~.form-control-feedback{top:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#737373}@media (min-width:768px){.form-inline .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .input-group{display:inline-table;vertical-align:middle}.form-inline .input-group .input-group-addon,.form-inline .input-group .input-group-btn,.form-inline .input-group .form-control{width:auto}.form-inline .input-group>.form-control{width:100%}.form-inline .control-label{margin-bottom:0;vertical-align:middle}.form-inline .radio,.form-inline .checkbox{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.form-inline .radio label,.form-inline .checkbox label{padding-left:0}.form-inline .radio input[type=radio],.form-inline .checkbox input[type=checkbox]{position:relative;margin-left:0}.form-inline .has-feedback .form-control-feedback{top:0}}.form-horizontal .radio,.form-horizontal .checkbox,.form-horizontal .radio-inline,.form-horizontal .checkbox-inline{padding-top:7px;margin-top:0;margin-bottom:0}.form-horizontal .radio,.form-horizontal .checkbox{min-height:27px}.form-horizontal .form-group{margin-right:-15px;margin-left:-15px}@media (min-width:768px){.form-horizontal .control-label{padding-top:7px;margin-bottom:0;text-align:right}}.form-horizontal .has-feedback .form-control-feedback{top:0;right:15px}@media (min-width:768px){.form-horizontal .form-group-lg .control-label{padding-top:14.3px}}@media (min-width:768px){.form-horizontal .form-group-sm .control-label{padding-top:6px}}.btn{display:inline-block;padding:6px 12px;margin-bottom:0;font-size:14px;font-weight:400;line-height:1.42857143;text-align:center;white-space:nowrap;vertical-align:middle;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-image:none;border:1px solid transparent;border-radius:4px}.btn:focus,.btn:active:focus,.btn.active:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn:hover,.btn:focus{color:#333;text-decoration:none}.btn:active,.btn.active{background-image:none;outline:0;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{pointer-events:none;cursor:not-allowed;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none;opacity:.65}.btn-default{color:#333;background-color:#fff;border-color:#ccc}.btn-default:hover,.btn-default:focus,.btn-default:active,.btn-default.active,.open>.dropdown-toggle.btn-default{color:#333;background-color:#e6e6e6;border-color:#adadad}.btn-default:active,.btn-default.active,.open>.dropdown-toggle.btn-default{background-image:none}.btn-default.disabled,.btn-default[disabled],fieldset[disabled] .btn-default,.btn-default.disabled:hover,.btn-default[disabled]:hover,fieldset[disabled] .btn-default:hover,.btn-default.disabled:focus,.btn-default[disabled]:focus,fieldset[disabled] .btn-default:focus,.btn-default.disabled:active,.btn-default[disabled]:active,fieldset[disabled] .btn-default:active,.btn-default.disabled.active,.btn-default[disabled].active,fieldset[disabled] .btn-default.active{background-color:#fff;border-color:#ccc}.btn-default .badge{color:#fff;background-color:#333}.btn-primary{color:#fff;background-color:#428bca;border-color:#357ebd}.btn-primary:hover,.btn-primary:focus,.btn-primary:active,.btn-primary.active,.open>.dropdown-toggle.btn-primary{color:#fff;background-color:#3071a9;border-color:#285e8e}.btn-primary:active,.btn-primary.active,.open>.dropdown-toggle.btn-primary{background-image:none}.btn-primary.disabled,.btn-primary[disabled],fieldset[disabled] .btn-primary,.btn-primary.disabled:hover,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary:hover,.btn-primary.disabled:focus,.btn-primary[disabled]:focus,fieldset[disabled] .btn-primary:focus,.btn-primary.disabled:active,.btn-primary[disabled]:active,fieldset[disabled] .btn-primary:active,.btn-primary.disabled.active,.btn-primary[disabled].active,fieldset[disabled] .btn-primary.active{background-color:#428bca;border-color:#357ebd}.btn-primary .badge{color:#428bca;background-color:#fff}.btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}.btn-success:hover,.btn-success:focus,.btn-success:active,.btn-success.active,.open>.dropdown-toggle.btn-success{color:#fff;background-color:#449d44;border-color:#398439}.btn-success:active,.btn-success.active,.open>.dropdown-toggle.btn-success{background-image:none}.btn-success.disabled,.btn-success[disabled],fieldset[disabled] .btn-success,.btn-success.disabled:hover,.btn-success[disabled]:hover,fieldset[disabled] .btn-success:hover,.btn-success.disabled:focus,.btn-success[disabled]:focus,fieldset[disabled] .btn-success:focus,.btn-success.disabled:active,.btn-success[disabled]:active,fieldset[disabled] .btn-success:active,.btn-success.disabled.active,.btn-success[disabled].active,fieldset[disabled] .btn-success.active{background-color:#5cb85c;border-color:#4cae4c}.btn-success .badge{color:#5cb85c;background-color:#fff}.btn-info{color:#fff;background-color:#5bc0de;border-color:#46b8da}.btn-info:hover,.btn-info:focus,.btn-info:active,.btn-info.active,.open>.dropdown-toggle.btn-info{color:#fff;background-color:#31b0d5;border-color:#269abc}.btn-info:active,.btn-info.active,.open>.dropdown-toggle.btn-info{background-image:none}.btn-info.disabled,.btn-info[disabled],fieldset[disabled] .btn-info,.btn-info.disabled:hover,.btn-info[disabled]:hover,fieldset[disabled] .btn-info:hover,.btn-info.disabled:focus,.btn-info[disabled]:focus,fieldset[disabled] .btn-info:focus,.btn-info.disabled:active,.btn-info[disabled]:active,fieldset[disabled] .btn-info:active,.btn-info.disabled.active,.btn-info[disabled].active,fieldset[disabled] .btn-info.active{background-color:#5bc0de;border-color:#46b8da}.btn-info .badge{color:#5bc0de;background-color:#fff}.btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236}.btn-warning:hover,.btn-warning:focus,.btn-warning:active,.btn-warning.active,.open>.dropdown-toggle.btn-warning{color:#fff;background-color:#ec971f;border-color:#d58512}.btn-warning:active,.btn-warning.active,.open>.dropdown-toggle.btn-warning{background-image:none}.btn-warning.disabled,.btn-warning[disabled],fieldset[disabled] .btn-warning,.btn-warning.disabled:hover,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning:hover,.btn-warning.disabled:focus,.btn-warning[disabled]:focus,fieldset[disabled] .btn-warning:focus,.btn-warning.disabled:active,.btn-warning[disabled]:active,fieldset[disabled] .btn-warning:active,.btn-warning.disabled.active,.btn-warning[disabled].active,fieldset[disabled] .btn-warning.active{background-color:#f0ad4e;border-color:#eea236}.btn-warning .badge{color:#f0ad4e;background-color:#fff}.btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.btn-danger:hover,.btn-danger:focus,.btn-danger:active,.btn-danger.active,.open>.dropdown-toggle.btn-danger{color:#fff;background-color:#c9302c;border-color:#ac2925}.btn-danger:active,.btn-danger.active,.open>.dropdown-toggle.btn-danger{background-image:none}.btn-danger.disabled,.btn-danger[disabled],fieldset[disabled] .btn-danger,.btn-danger.disabled:hover,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger:hover,.btn-danger.disabled:focus,.btn-danger[disabled]:focus,fieldset[disabled] .btn-danger:focus,.btn-danger.disabled:active,.btn-danger[disabled]:active,fieldset[disabled] .btn-danger:active,.btn-danger.disabled.active,.btn-danger[disabled].active,fieldset[disabled] .btn-danger.active{background-color:#d9534f;border-color:#d43f3a}.btn-danger .badge{color:#d9534f;background-color:#fff}.btn-link{font-weight:400;color:#428bca;cursor:pointer;border-radius:0}.btn-link,.btn-link:active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-link,.btn-link:hover,.btn-link:focus,.btn-link:active{border-color:transparent}.btn-link:hover,.btn-link:focus{color:#2a6496;text-decoration:underline;background-color:transparent}.btn-link[disabled]:hover,fieldset[disabled] .btn-link:hover,.btn-link[disabled]:focus,fieldset[disabled] .btn-link:focus{color:#777;text-decoration:none}.btn-lg,.btn-group-lg>.btn{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.btn-sm,.btn-group-sm>.btn{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-xs,.btn-group-xs>.btn{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:5px}input[type=submit].btn-block,input[type=reset].btn-block,input[type=button].btn-block{width:100%}.fade{opacity:0;-webkit-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{display:none}.collapse.in{display:block}tr.collapse.in{display:table-row}tbody.collapse.in{display:table-row-group}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition:height .35s ease;-o-transition:height .35s ease;transition:height .35s ease}.caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px solid;border-right:4px solid transparent;border-left:4px solid transparent}.dropdown{position:relative}.dropdown-toggle:focus{outline:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;font-size:14px;text-align:left;list-style:none;background-color:#fff;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,.175);box-shadow:0 6px 12px rgba(0,0,0,.175)}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:400;line-height:1.42857143;color:#333;white-space:nowrap}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus{color:#262626;text-decoration:none;background-color:#f5f5f5}.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{color:#fff;text-decoration:none;background-color:#428bca;outline:0}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{color:#777}.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{text-decoration:none;cursor:not-allowed;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.open>.dropdown-menu{display:block}.open>a{outline:0}.dropdown-menu-right{right:0;left:auto}.dropdown-menu-left{right:auto;left:0}.dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.42857143;color:#777;white-space:nowrap}.dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{content:"";border-top:0;border-bottom:4px solid}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}@media (min-width:768px){.navbar-right .dropdown-menu{right:0;left:auto}.navbar-right .dropdown-menu-left{right:auto;left:0}}.btn-group,.btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.btn-group>.btn,.btn-group-vertical>.btn{position:relative;float:left}.btn-group>.btn:hover,.btn-group-vertical>.btn:hover,.btn-group>.btn:focus,.btn-group-vertical>.btn:focus,.btn-group>.btn:active,.btn-group-vertical>.btn:active,.btn-group>.btn.active,.btn-group-vertical>.btn.active{z-index:2}.btn-group>.btn:focus,.btn-group-vertical>.btn:focus{outline:0}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group{margin-left:-1px}.btn-toolbar{margin-left:-5px}.btn-toolbar .btn-group,.btn-toolbar .input-group{float:left}.btn-toolbar>.btn,.btn-toolbar>.btn-group,.btn-toolbar>.input-group{margin-left:5px}.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.btn-group>.btn-group{float:left}.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group>.btn-group:first-child>.btn:last-child,.btn-group>.btn-group:first-child>.dropdown-toggle{border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:last-child>.btn:first-child{border-top-left-radius:0;border-bottom-left-radius:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{padding-right:8px;padding-left:8px}.btn-group>.btn-lg+.dropdown-toggle{padding-right:12px;padding-left:12px}.btn-group.open .dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.btn .caret{margin-left:0}.btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.dropup .btn-lg .caret{border-width:0 5px 5px}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group,.btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.btn-group-vertical>.btn-group>.btn{float:none}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.btn-group-vertical>.btn:first-child:not(:last-child){border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:last-child:not(:first-child){border-top-left-radius:0;border-top-right-radius:0;border-bottom-left-radius:4px}.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group-vertical>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group-vertical>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-left-radius:0;border-top-right-radius:0}.btn-group-justified{display:table;width:100%;table-layout:fixed;border-collapse:separate}.btn-group-justified>.btn,.btn-group-justified>.btn-group{display:table-cell;float:none;width:1%}.btn-group-justified>.btn-group .btn{width:100%}.btn-group-justified>.btn-group .dropdown-menu{left:auto}[data-toggle=buttons]>.btn>input[type=radio],[data-toggle=buttons]>.btn>input[type=checkbox]{position:absolute;z-index:-1;filter:alpha(opacity=0);opacity:0}.input-group{position:relative;display:table;border-collapse:separate}.input-group[class*=col-]{float:none;padding-right:0;padding-left:0}.input-group .form-control{position:relative;z-index:2;float:left;width:100%;margin-bottom:0}.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn{height:46px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}select.input-group-lg>.form-control,select.input-group-lg>.input-group-addon,select.input-group-lg>.input-group-btn>.btn{height:46px;line-height:46px}textarea.input-group-lg>.form-control,textarea.input-group-lg>.input-group-addon,textarea.input-group-lg>.input-group-btn>.btn,select[multiple].input-group-lg>.form-control,select[multiple].input-group-lg>.input-group-addon,select[multiple].input-group-lg>.input-group-btn>.btn{height:auto}.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-group-sm>.form-control,select.input-group-sm>.input-group-addon,select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}textarea.input-group-sm>.form-control,textarea.input-group-sm>.input-group-addon,textarea.input-group-sm>.input-group-btn>.btn,select[multiple].input-group-sm>.form-control,select[multiple].input-group-sm>.input-group-addon,select[multiple].input-group-sm>.input-group-btn>.btn{height:auto}.input-group-addon,.input-group-btn,.input-group .form-control{display:table-cell}.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child),.input-group .form-control:not(:first-child):not(:last-child){border-radius:0}.input-group-addon,.input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.input-group-addon{padding:6px 12px;font-size:14px;font-weight:400;line-height:1;color:#555;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.input-group-addon input[type=radio],.input-group-addon input[type=checkbox]{margin-top:0}.input-group .form-control:first-child,.input-group-addon:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group-btn:last-child>.btn-group:not(:last-child)>.btn{border-top-right-radius:0;border-bottom-right-radius:0}.input-group-addon:first-child{border-right:0}.input-group .form-control:last-child,.input-group-addon:last-child,.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group>.btn,.input-group-btn:last-child>.dropdown-toggle,.input-group-btn:first-child>.btn:not(:first-child),.input-group-btn:first-child>.btn-group:not(:first-child)>.btn{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-addon:last-child{border-left:0}.input-group-btn{position:relative;font-size:0;white-space:nowrap}.input-group-btn>.btn{position:relative}.input-group-btn>.btn+.btn{margin-left:-1px}.input-group-btn>.btn:hover,.input-group-btn>.btn:focus,.input-group-btn>.btn:active{z-index:2}.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group{margin-right:-1px}.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group{margin-left:-1px}.nav{padding-left:0;margin-bottom:0;list-style:none}.nav>li{position:relative;display:block}.nav>li>a{position:relative;display:block;padding:10px 15px}.nav>li>a:hover,.nav>li>a:focus{text-decoration:none;background-color:#eee}.nav>li.disabled>a{color:#777}.nav>li.disabled>a:hover,.nav>li.disabled>a:focus{color:#777;text-decoration:none;cursor:not-allowed;background-color:transparent}.nav .open>a,.nav .open>a:hover,.nav .open>a:focus{background-color:#eee;border-color:#428bca}.nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.42857143;border:1px solid transparent;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.nav-tabs>li.active>a,.nav-tabs>li.active>a:hover,.nav-tabs>li.active>a:focus{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.nav-tabs.nav-justified{width:100%;border-bottom:0}.nav-tabs.nav-justified>li{float:none}.nav-tabs.nav-justified>li>a{margin-bottom:5px;text-align:center}.nav-tabs.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-tabs.nav-justified>li{display:table-cell;width:1%}.nav-tabs.nav-justified>li>a{margin-bottom:0}}.nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:hover,.nav-tabs.nav-justified>.active>a:focus{border:1px solid #ddd}@media (min-width:768px){.nav-tabs.nav-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:hover,.nav-tabs.nav-justified>.active>a:focus{border-bottom-color:#fff}}.nav-pills>li{float:left}.nav-pills>li>a{border-radius:4px}.nav-pills>li+li{margin-left:2px}.nav-pills>li.active>a,.nav-pills>li.active>a:hover,.nav-pills>li.active>a:focus{color:#fff;background-color:#428bca}.nav-stacked>li{float:none}.nav-stacked>li+li{margin-top:2px;margin-left:0}.nav-justified{width:100%}.nav-justified>li{float:none}.nav-justified>li>a{margin-bottom:5px;text-align:center}.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-justified>li{display:table-cell;width:1%}.nav-justified>li>a{margin-bottom:0}}.nav-tabs-justified{border-bottom:0}.nav-tabs-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:hover,.nav-tabs-justified>.active>a:focus{border:1px solid #ddd}@media (min-width:768px){.nav-tabs-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:hover,.nav-tabs-justified>.active>a:focus{border-bottom-color:#fff}}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}@media (min-width:768px){.navbar{border-radius:4px}}@media (min-width:768px){.navbar-header{float:left}}.navbar-collapse{padding-right:15px;padding-left:15px;overflow-x:visible;-webkit-overflow-scrolling:touch;border-top:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.1)}.navbar-collapse.in{overflow-y:auto}@media (min-width:768px){.navbar-collapse{width:auto;border-top:0;-webkit-box-shadow:none;box-shadow:none}.navbar-collapse.collapse{display:block!important;height:auto!important;padding-bottom:0;overflow:visible!important}.navbar-collapse.in{overflow-y:visible}.navbar-fixed-top .navbar-collapse,.navbar-static-top .navbar-collapse,.navbar-fixed-bottom .navbar-collapse{padding-right:0;padding-left:0}}.navbar-fixed-top .navbar-collapse,.navbar-fixed-bottom .navbar-collapse{max-height:340px}@media (max-width:480px) and (orientation:landscape){.navbar-fixed-top .navbar-collapse,.navbar-fixed-bottom .navbar-collapse{max-height:200px}}.container>.navbar-header,.container-fluid>.navbar-header,.container>.navbar-collapse,.container-fluid>.navbar-collapse{margin-right:-15px;margin-left:-15px}@media (min-width:768px){.container>.navbar-header,.container-fluid>.navbar-header,.container>.navbar-collapse,.container-fluid>.navbar-collapse{margin-right:0;margin-left:0}}.navbar-static-top{z-index:1000;border-width:0 0 1px}@media (min-width:768px){.navbar-static-top{border-radius:0}}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;z-index:1030;-webkit-transform:translate3d(0,0,0);-o-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}@media (min-width:768px){.navbar-fixed-top,.navbar-fixed-bottom{border-radius:0}}.navbar-fixed-top{top:0;border-width:0 0 1px}.navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.navbar-brand{float:left;height:50px;padding:15px 15px;font-size:18px;line-height:20px}.navbar-brand:hover,.navbar-brand:focus{text-decoration:none}@media (min-width:768px){.navbar>.container .navbar-brand,.navbar>.container-fluid .navbar-brand{margin-left:-15px}}.navbar-toggle{position:relative;float:right;padding:9px 10px;margin-top:8px;margin-right:15px;margin-bottom:8px;background-color:transparent;background-image:none;border:1px solid transparent;border-radius:4px}.navbar-toggle:focus{outline:0}.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width:768px){.navbar-toggle{display:none}}.navbar-nav{margin:7.5px -15px}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media (max-width:767px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;-webkit-box-shadow:none;box-shadow:none}.navbar-nav .open .dropdown-menu>li>a,.navbar-nav .open .dropdown-menu .dropdown-header{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:hover,.navbar-nav .open .dropdown-menu>li>a:focus{background-image:none}}@media (min-width:768px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:15px;padding-bottom:15px}.navbar-nav.navbar-right:last-child{margin-right:-15px}}@media (min-width:768px){.navbar-left{float:left!important}.navbar-right{float:right!important}}.navbar-form{padding:10px 15px;margin-top:8px;margin-right:-15px;margin-bottom:8px;margin-left:-15px;border-top:1px solid transparent;border-bottom:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1)}@media (min-width:768px){.navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block;width:auto;vertical-align:middle}.navbar-form .input-group{display:inline-table;vertical-align:middle}.navbar-form .input-group .input-group-addon,.navbar-form .input-group .input-group-btn,.navbar-form .input-group .form-control{width:auto}.navbar-form .input-group>.form-control{width:100%}.navbar-form .control-label{margin-bottom:0;vertical-align:middle}.navbar-form .radio,.navbar-form .checkbox{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.navbar-form .radio label,.navbar-form .checkbox label{padding-left:0}.navbar-form .radio input[type=radio],.navbar-form .checkbox input[type=checkbox]{position:relative;margin-left:0}.navbar-form .has-feedback .form-control-feedback{top:0}}@media (max-width:767px){.navbar-form .form-group{margin-bottom:5px}}@media (min-width:768px){.navbar-form{width:auto;padding-top:0;padding-bottom:0;margin-right:0;margin-left:0;border:0;-webkit-box-shadow:none;box-shadow:none}.navbar-form.navbar-right:last-child{margin-right:-15px}}.navbar-nav>li>.dropdown-menu{margin-top:0;border-top-left-radius:0;border-top-right-radius:0}.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{border-bottom-right-radius:0;border-bottom-left-radius:0}.navbar-btn{margin-top:8px;margin-bottom:8px}.navbar-btn.btn-sm{margin-top:10px;margin-bottom:10px}.navbar-btn.btn-xs{margin-top:14px;margin-bottom:14px}.navbar-text{margin-top:15px;margin-bottom:15px}@media (min-width:768px){.navbar-text{float:left;margin-right:15px;margin-left:15px}.navbar-text.navbar-right:last-child{margin-right:0}}.navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.navbar-default .navbar-brand{color:#777}.navbar-default .navbar-brand:hover,.navbar-default .navbar-brand:focus{color:#5e5e5e;background-color:transparent}.navbar-default .navbar-text{color:#777}.navbar-default .navbar-nav>li>a{color:#777}.navbar-default .navbar-nav>li>a:hover,.navbar-default .navbar-nav>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:hover,.navbar-default .navbar-nav>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:hover,.navbar-default .navbar-nav>.disabled>a:focus{color:#ccc;background-color:transparent}.navbar-default .navbar-toggle{border-color:#ddd}.navbar-default .navbar-toggle:hover,.navbar-default .navbar-toggle:focus{background-color:#ddd}.navbar-default .navbar-toggle .icon-bar{background-color:#888}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#e7e7e7}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:hover,.navbar-default .navbar-nav>.open>a:focus{color:#555;background-color:#e7e7e7}@media (max-width:767px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#ccc;background-color:transparent}}.navbar-default .navbar-link{color:#777}.navbar-default .navbar-link:hover{color:#333}.navbar-default .btn-link{color:#777}.navbar-default .btn-link:hover,.navbar-default .btn-link:focus{color:#333}.navbar-default .btn-link[disabled]:hover,fieldset[disabled] .navbar-default .btn-link:hover,.navbar-default .btn-link[disabled]:focus,fieldset[disabled] .navbar-default .btn-link:focus{color:#ccc}.navbar-inverse{background-color:#222;border-color:#080808}.navbar-inverse .navbar-brand{color:#777}.navbar-inverse .navbar-brand:hover,.navbar-inverse .navbar-brand:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-text{color:#777}.navbar-inverse .navbar-nav>li>a{color:#777}.navbar-inverse .navbar-nav>li>a:hover,.navbar-inverse .navbar-nav>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:hover,.navbar-inverse .navbar-nav>.active>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:hover,.navbar-inverse .navbar-nav>.disabled>a:focus{color:#444;background-color:transparent}.navbar-inverse .navbar-toggle{border-color:#333}.navbar-inverse .navbar-toggle:hover,.navbar-inverse .navbar-toggle:focus{background-color:#333}.navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#101010}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:hover,.navbar-inverse .navbar-nav>.open>a:focus{color:#fff;background-color:#080808}@media (max-width:767px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu .divider{background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#777}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#444;background-color:transparent}}.navbar-inverse .navbar-link{color:#777}.navbar-inverse .navbar-link:hover{color:#fff}.navbar-inverse .btn-link{color:#777}.navbar-inverse .btn-link:hover,.navbar-inverse .btn-link:focus{color:#fff}.navbar-inverse .btn-link[disabled]:hover,fieldset[disabled] .navbar-inverse .btn-link:hover,.navbar-inverse .btn-link[disabled]:focus,fieldset[disabled] .navbar-inverse .btn-link:focus{color:#444}.breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{padding:0 5px;color:#ccc;content:"/\00a0"}.breadcrumb>.active{color:#777}.pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:6px 12px;margin-left:-1px;line-height:1.42857143;color:#428bca;text-decoration:none;background-color:#fff;border:1px solid #ddd}.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-top-left-radius:4px;border-bottom-left-radius:4px}.pagination>li:last-child>a,.pagination>li:last-child>span{border-top-right-radius:4px;border-bottom-right-radius:4px}.pagination>li>a:hover,.pagination>li>span:hover,.pagination>li>a:focus,.pagination>li>span:focus{color:#2a6496;background-color:#eee;border-color:#ddd}.pagination>.active>a,.pagination>.active>span,.pagination>.active>a:hover,.pagination>.active>span:hover,.pagination>.active>a:focus,.pagination>.active>span:focus{z-index:2;color:#fff;cursor:default;background-color:#428bca;border-color:#428bca}.pagination>.disabled>span,.pagination>.disabled>span:hover,.pagination>.disabled>span:focus,.pagination>.disabled>a,.pagination>.disabled>a:hover,.pagination>.disabled>a:focus{color:#777;cursor:not-allowed;background-color:#fff;border-color:#ddd}.pagination-lg>li>a,.pagination-lg>li>span{padding:10px 16px;font-size:18px}.pagination-lg>li:first-child>a,.pagination-lg>li:first-child>span{border-top-left-radius:6px;border-bottom-left-radius:6px}.pagination-lg>li:last-child>a,.pagination-lg>li:last-child>span{border-top-right-radius:6px;border-bottom-right-radius:6px}.pagination-sm>li>a,.pagination-sm>li>span{padding:5px 10px;font-size:12px}.pagination-sm>li:first-child>a,.pagination-sm>li:first-child>span{border-top-left-radius:3px;border-bottom-left-radius:3px}.pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span{border-top-right-radius:3px;border-bottom-right-radius:3px}.pager{padding-left:0;margin:20px 0;text-align:center;list-style:none}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.pager li>a:hover,.pager li>a:focus{text-decoration:none;background-color:#eee}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:hover,.pager .disabled>a:focus,.pager .disabled>span{color:#777;cursor:not-allowed;background-color:#fff}.label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}a.label:hover,a.label:focus{color:#fff;text-decoration:none;cursor:pointer}.label:empty{display:none}.btn .label{position:relative;top:-1px}.label-default{background-color:#777}.label-default[href]:hover,.label-default[href]:focus{background-color:#5e5e5e}.label-primary{background-color:#428bca}.label-primary[href]:hover,.label-primary[href]:focus{background-color:#3071a9}.label-success{background-color:#5cb85c}.label-success[href]:hover,.label-success[href]:focus{background-color:#449d44}.label-info{background-color:#5bc0de}.label-info[href]:hover,.label-info[href]:focus{background-color:#31b0d5}.label-warning{background-color:#f0ad4e}.label-warning[href]:hover,.label-warning[href]:focus{background-color:#ec971f}.label-danger{background-color:#d9534f}.label-danger[href]:hover,.label-danger[href]:focus{background-color:#c9302c}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;background-color:#777;border-radius:10px}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.btn-xs .badge{top:0;padding:1px 5px}a.badge:hover,a.badge:focus{color:#fff;text-decoration:none;cursor:pointer}a.list-group-item.active>.badge,.nav-pills>.active>a>.badge{color:#428bca;background-color:#fff}.nav-pills>li>a>.badge{margin-left:3px}.jumbotron{padding:30px;margin-bottom:30px;color:inherit;background-color:#eee}.jumbotron h1,.jumbotron .h1{color:inherit}.jumbotron p{margin-bottom:15px;font-size:21px;font-weight:200}.jumbotron>hr{border-top-color:#d5d5d5}.container .jumbotron{border-radius:6px}.jumbotron .container{max-width:100%}@media screen and (min-width:768px){.jumbotron{padding-top:48px;padding-bottom:48px}.container .jumbotron{padding-right:60px;padding-left:60px}.jumbotron h1,.jumbotron .h1{font-size:63px}}.thumbnail{display:block;padding:4px;margin-bottom:20px;line-height:1.42857143;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.thumbnail>img,.thumbnail a>img{margin-right:auto;margin-left:auto}a.thumbnail:hover,a.thumbnail:focus,a.thumbnail.active{border-color:#428bca}.thumbnail .caption{padding:9px;color:#333}.alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}.alert h4{margin-top:0;color:inherit}.alert .alert-link{font-weight:700}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable,.alert-dismissible{padding-right:35px}.alert-dismissable .close,.alert-dismissible .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.alert-success hr{border-top-color:#c9e2b3}.alert-success .alert-link{color:#2b542c}.alert-info{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.alert-info hr{border-top-color:#a6e1ec}.alert-info .alert-link{color:#245269}.alert-warning{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.alert-warning hr{border-top-color:#f7e1b5}.alert-warning .alert-link{color:#66512c}.alert-danger{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.alert-danger hr{border-top-color:#e4b9c0}.alert-danger .alert-link{color:#843534}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}.progress-bar{float:left;width:0;height:100%;font-size:12px;line-height:20px;color:#fff;text-align:center;background-color:#428bca;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);-webkit-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}.progress-striped .progress-bar,.progress-bar-striped{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);-webkit-background-size:40px 40px;background-size:40px 40px}.progress.active .progress-bar,.progress-bar.active{-webkit-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar[aria-valuenow="1"],.progress-bar[aria-valuenow="2"]{min-width:30px}.progress-bar[aria-valuenow="0"]{min-width:30px;color:#777;background-color:transparent;background-image:none;-webkit-box-shadow:none;box-shadow:none}.progress-bar-success{background-color:#5cb85c}.progress-striped .progress-bar-success{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-info{background-color:#5bc0de}.progress-striped .progress-bar-info{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-warning{background-color:#f0ad4e}.progress-striped .progress-bar-warning{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-danger{background-color:#d9534f}.progress-striped .progress-bar-danger{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.media,.media-body{overflow:hidden;zoom:1}.media,.media .media{margin-top:15px}.media:first-child{margin-top:0}.media-object{display:block}.media-heading{margin:0 0 5px}.media>.pull-left{margin-right:10px}.media>.pull-right{margin-left:10px}.media-list{padding-left:0;list-style:none}.list-group{padding-left:0;margin-bottom:20px}.list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.list-group-item:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.list-group-item>.badge{float:right}.list-group-item>.badge+.badge{margin-right:5px}a.list-group-item{color:#555}a.list-group-item .list-group-item-heading{color:#333}a.list-group-item:hover,a.list-group-item:focus{color:#555;text-decoration:none;background-color:#f5f5f5}.list-group-item.disabled,.list-group-item.disabled:hover,.list-group-item.disabled:focus{color:#777;background-color:#eee}.list-group-item.disabled .list-group-item-heading,.list-group-item.disabled:hover .list-group-item-heading,.list-group-item.disabled:focus .list-group-item-heading{color:inherit}.list-group-item.disabled .list-group-item-text,.list-group-item.disabled:hover .list-group-item-text,.list-group-item.disabled:focus .list-group-item-text{color:#777}.list-group-item.active,.list-group-item.active:hover,.list-group-item.active:focus{z-index:2;color:#fff;background-color:#428bca;border-color:#428bca}.list-group-item.active .list-group-item-heading,.list-group-item.active:hover .list-group-item-heading,.list-group-item.active:focus .list-group-item-heading,.list-group-item.active .list-group-item-heading>small,.list-group-item.active:hover .list-group-item-heading>small,.list-group-item.active:focus .list-group-item-heading>small,.list-group-item.active .list-group-item-heading>.small,.list-group-item.active:hover .list-group-item-heading>.small,.list-group-item.active:focus .list-group-item-heading>.small{color:inherit}.list-group-item.active .list-group-item-text,.list-group-item.active:hover .list-group-item-text,.list-group-item.active:focus .list-group-item-text{color:#e1edf7}.list-group-item-success{color:#3c763d;background-color:#dff0d8}a.list-group-item-success{color:#3c763d}a.list-group-item-success .list-group-item-heading{color:inherit}a.list-group-item-success:hover,a.list-group-item-success:focus{color:#3c763d;background-color:#d0e9c6}a.list-group-item-success.active,a.list-group-item-success.active:hover,a.list-group-item-success.active:focus{color:#fff;background-color:#3c763d;border-color:#3c763d}.list-group-item-info{color:#31708f;background-color:#d9edf7}a.list-group-item-info{color:#31708f}a.list-group-item-info .list-group-item-heading{color:inherit}a.list-group-item-info:hover,a.list-group-item-info:focus{color:#31708f;background-color:#c4e3f3}a.list-group-item-info.active,a.list-group-item-info.active:hover,a.list-group-item-info.active:focus{color:#fff;background-color:#31708f;border-color:#31708f}.list-group-item-warning{color:#8a6d3b;background-color:#fcf8e3}a.list-group-item-warning{color:#8a6d3b}a.list-group-item-warning .list-group-item-heading{color:inherit}a.list-group-item-warning:hover,a.list-group-item-warning:focus{color:#8a6d3b;background-color:#faf2cc}a.list-group-item-warning.active,a.list-group-item-warning.active:hover,a.list-group-item-warning.active:focus{color:#fff;background-color:#8a6d3b;border-color:#8a6d3b}.list-group-item-danger{color:#a94442;background-color:#f2dede}a.list-group-item-danger{color:#a94442}a.list-group-item-danger .list-group-item-heading{color:inherit}a.list-group-item-danger:hover,a.list-group-item-danger:focus{color:#a94442;background-color:#ebcccc}a.list-group-item-danger.active,a.list-group-item-danger.active:hover,a.list-group-item-danger.active:focus{color:#fff;background-color:#a94442;border-color:#a94442}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,.05);box-shadow:0 1px 1px rgba(0,0,0,.05)}.panel-body{padding:15px}.panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-left-radius:3px;border-top-right-radius:3px}.panel-heading>.dropdown .dropdown-toggle{color:inherit}.panel-title{margin-top:0;margin-bottom:0;font-size:16px;color:inherit}.panel-title>a{color:inherit}.panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.list-group{margin-bottom:0}.panel>.list-group .list-group-item{border-width:1px 0;border-radius:0}.panel>.list-group:first-child .list-group-item:first-child{border-top:0;border-top-left-radius:3px;border-top-right-radius:3px}.panel>.list-group:last-child .list-group-item:last-child{border-bottom:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.list-group+.panel-footer{border-top-width:0}.panel>.table,.panel>.table-responsive>.table,.panel>.panel-collapse>.table{margin-bottom:0}.panel>.table:first-child,.panel>.table-responsive:first-child>.table:first-child{border-top-left-radius:3px;border-top-right-radius:3px}.panel>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child{border-top-left-radius:3px}.panel>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child{border-top-right-radius:3px}.panel>.table:last-child,.panel>.table-responsive:last-child>.table:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child{border-bottom-left-radius:3px}.panel>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child{border-bottom-right-radius:3px}.panel>.panel-body+.table,.panel>.panel-body+.table-responsive{border-top:1px solid #ddd}.panel>.table>tbody:first-child>tr:first-child th,.panel>.table>tbody:first-child>tr:first-child td{border-top:0}.panel>.table-bordered,.panel>.table-responsive>.table-bordered{border:0}.panel>.table-bordered>thead>tr>th:first-child,.panel>.table-responsive>.table-bordered>thead>tr>th:first-child,.panel>.table-bordered>tbody>tr>th:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.panel>.table-bordered>tfoot>tr>th:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.panel>.table-bordered>thead>tr>td:first-child,.panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.panel>.table-bordered>tbody>tr>td:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.panel>.table-bordered>tfoot>tr>td:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.panel>.table-bordered>thead>tr>th:last-child,.panel>.table-responsive>.table-bordered>thead>tr>th:last-child,.panel>.table-bordered>tbody>tr>th:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.panel>.table-bordered>tfoot>tr>th:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.panel>.table-bordered>thead>tr>td:last-child,.panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.panel>.table-bordered>tbody>tr>td:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.panel>.table-bordered>tfoot>tr>td:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.panel>.table-bordered>thead>tr:first-child>td,.panel>.table-responsive>.table-bordered>thead>tr:first-child>td,.panel>.table-bordered>tbody>tr:first-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>td,.panel>.table-bordered>thead>tr:first-child>th,.panel>.table-responsive>.table-bordered>thead>tr:first-child>th,.panel>.table-bordered>tbody>tr:first-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>th{border-bottom:0}.panel>.table-bordered>tbody>tr:last-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.panel>.table-bordered>tfoot>tr:last-child>td,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.panel>.table-bordered>tbody>tr:last-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.panel>.table-bordered>tfoot>tr:last-child>th,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}.panel>.table-responsive{margin-bottom:0;border:0}.panel-group{margin-bottom:20px}.panel-group .panel{margin-bottom:0;border-radius:4px}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading{border-bottom:0}.panel-group .panel-heading+.panel-collapse>.panel-body{border-top:1px solid #ddd}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.panel-default{border-color:#ddd}.panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.panel-default>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ddd}.panel-default>.panel-heading .badge{color:#f5f5f5;background-color:#333}.panel-default>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ddd}.panel-primary{border-color:#428bca}.panel-primary>.panel-heading{color:#fff;background-color:#428bca;border-color:#428bca}.panel-primary>.panel-heading+.panel-collapse>.panel-body{border-top-color:#428bca}.panel-primary>.panel-heading .badge{color:#428bca;background-color:#fff}.panel-primary>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#428bca}.panel-success{border-color:#d6e9c6}.panel-success>.panel-heading{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.panel-success>.panel-heading+.panel-collapse>.panel-body{border-top-color:#d6e9c6}.panel-success>.panel-heading .badge{color:#dff0d8;background-color:#3c763d}.panel-success>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#d6e9c6}.panel-info{border-color:#bce8f1}.panel-info>.panel-heading{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.panel-info>.panel-heading+.panel-collapse>.panel-body{border-top-color:#bce8f1}.panel-info>.panel-heading .badge{color:#d9edf7;background-color:#31708f}.panel-info>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#bce8f1}.panel-warning{border-color:#faebcc}.panel-warning>.panel-heading{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.panel-warning>.panel-heading+.panel-collapse>.panel-body{border-top-color:#faebcc}.panel-warning>.panel-heading .badge{color:#fcf8e3;background-color:#8a6d3b}.panel-warning>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#faebcc}.panel-danger{border-color:#ebccd1}.panel-danger>.panel-heading{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.panel-danger>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ebccd1}.panel-danger>.panel-heading .badge{color:#f2dede;background-color:#a94442}.panel-danger>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ebccd1}.embed-responsive{position:relative;display:block;height:0;padding:0;overflow:hidden}.embed-responsive .embed-responsive-item,.embed-responsive iframe,.embed-responsive embed,.embed-responsive object{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive.embed-responsive-16by9{padding-bottom:56.25%}.embed-responsive.embed-responsive-4by3{padding-bottom:75%}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.05);box-shadow:inset 0 1px 1px rgba(0,0,0,.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.well-lg{padding:24px;border-radius:6px}.well-sm{padding:9px;border-radius:3px}.close{float:right;font-size:21px;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;filter:alpha(opacity=20);opacity:.2}.close:hover,.close:focus{color:#000;text-decoration:none;cursor:pointer;filter:alpha(opacity=50);opacity:.5}button.close{-webkit-appearance:none;padding:0;cursor:pointer;background:0 0;border:0}.modal-open{overflow:hidden}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;display:none;overflow:hidden;-webkit-overflow-scrolling:touch;outline:0}.modal.fade .modal-dialog{-webkit-transition:-webkit-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:transform .3s ease-out;-webkit-transform:translate3d(0,-25%,0);-o-transform:translate3d(0,-25%,0);transform:translate3d(0,-25%,0)}.modal.in .modal-dialog{-webkit-transform:translate3d(0,0,0);-o-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-dialog{position:relative;width:auto;margin:10px}.modal-content{position:relative;background-color:#fff;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid #999;border:1px solid rgba(0,0,0,.2);border-radius:6px;outline:0;-webkit-box-shadow:0 3px 9px rgba(0,0,0,.5);box-shadow:0 3px 9px rgba(0,0,0,.5)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{filter:alpha(opacity=0);opacity:0}.modal-backdrop.in{filter:alpha(opacity=50);opacity:.5}.modal-header{min-height:16.43px;padding:15px;border-bottom:1px solid #e5e5e5}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.42857143}.modal-body{position:relative;padding:15px}.modal-footer{padding:15px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:768px){.modal-dialog{width:600px;margin:30px auto}.modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,.5);box-shadow:0 5px 15px rgba(0,0,0,.5)}.modal-sm{width:300px}}@media (min-width:992px){.modal-lg{width:900px}}.tooltip{position:absolute;z-index:1070;display:block;font-size:12px;line-height:1.4;visibility:visible;filter:alpha(opacity=0);opacity:0}.tooltip.in{filter:alpha(opacity=90);opacity:.9}.tooltip.top{padding:5px 0;margin-top:-3px}.tooltip.right{padding:0 5px;margin-left:3px}.tooltip.bottom{padding:5px 0;margin-top:3px}.tooltip.left{padding:0 5px;margin-left:-3px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;text-decoration:none;background-color:#000;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-left .tooltip-arrow{bottom:0;left:5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-right .tooltip-arrow{right:5px;bottom:0;border-width:5px 5px 0;border-top-color:#000}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#000}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#000}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-left .tooltip-arrow{top:0;left:5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-right .tooltip-arrow{top:0;right:5px;border-width:0 5px 5px;border-bottom-color:#000}.popover{position:absolute;top:0;left:0;z-index:1060;display:none;max-width:276px;padding:1px;text-align:left;white-space:normal;background-color:#fff;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2)}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover-title{padding:8px 14px;margin:0;font-size:14px;font-weight:400;line-height:18px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.popover>.arrow,.popover>.arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover>.arrow{border-width:11px}.popover>.arrow:after{content:"";border-width:10px}.popover.top>.arrow{bottom:-11px;left:50%;margin-left:-11px;border-top-color:#999;border-top-color:rgba(0,0,0,.25);border-bottom-width:0}.popover.top>.arrow:after{bottom:1px;margin-left:-10px;content:" ";border-top-color:#fff;border-bottom-width:0}.popover.right>.arrow{top:50%;left:-11px;margin-top:-11px;border-right-color:#999;border-right-color:rgba(0,0,0,.25);border-left-width:0}.popover.right>.arrow:after{bottom:-10px;left:1px;content:" ";border-right-color:#fff;border-left-width:0}.popover.bottom>.arrow{top:-11px;left:50%;margin-left:-11px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,.25)}.popover.bottom>.arrow:after{top:1px;margin-left:-10px;content:" ";border-top-width:0;border-bottom-color:#fff}.popover.left>.arrow{top:50%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999;border-left-color:rgba(0,0,0,.25)}.popover.left>.arrow:after{right:1px;bottom:-10px;content:" ";border-right-width:0;border-left-color:#fff}.carousel{position:relative}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner>.item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;-o-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel-inner>.item>img,.carousel-inner>.item>a>img{line-height:1}.carousel-inner>.active,.carousel-inner>.next,.carousel-inner>.prev{display:block}.carousel-inner>.active{left:0}.carousel-inner>.next,.carousel-inner>.prev{position:absolute;top:0;width:100%}.carousel-inner>.next{left:100%}.carousel-inner>.prev{left:-100%}.carousel-inner>.next.left,.carousel-inner>.prev.right{left:0}.carousel-inner>.active.left{left:-100%}.carousel-inner>.active.right{left:100%}.carousel-control{position:absolute;top:0;bottom:0;left:0;width:15%;font-size:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6);filter:alpha(opacity=50);opacity:.5}.carousel-control.left{background-image:-webkit-linear-gradient(left,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);background-image:-o-linear-gradient(left,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.5)),to(rgba(0,0,0,.0001)));background-image:linear-gradient(to right,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);background-repeat:repeat-x}.carousel-control.right{right:0;left:auto;background-image:-webkit-linear-gradient(left,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);background-image:-o-linear-gradient(left,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.0001)),to(rgba(0,0,0,.5)));background-image:linear-gradient(to right,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);background-repeat:repeat-x}.carousel-control:hover,.carousel-control:focus{color:#fff;text-decoration:none;filter:alpha(opacity=90);outline:0;opacity:.9}.carousel-control .icon-prev,.carousel-control .icon-next,.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right{position:absolute;top:50%;z-index:5;display:inline-block}.carousel-control .icon-prev,.carousel-control .glyphicon-chevron-left{left:50%;margin-left:-10px}.carousel-control .icon-next,.carousel-control .glyphicon-chevron-right{right:50%;margin-right:-10px}.carousel-control .icon-prev,.carousel-control .icon-next{width:20px;height:20px;margin-top:-10px;font-family:serif}.carousel-control .icon-prev:before{content:'\2039'}.carousel-control .icon-next:before{content:'\203a'}.carousel-indicators{position:absolute;bottom:10px;left:50%;z-index:15;width:60%;padding-left:0;margin-left:-30%;text-align:center;list-style:none}.carousel-indicators li{display:inline-block;width:10px;height:10px;margin:1px;text-indent:-999px;cursor:pointer;background-color:#000 \9;background-color:rgba(0,0,0,0);border:1px solid #fff;border-radius:10px}.carousel-indicators .active{width:12px;height:12px;margin:0;background-color:#fff}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6)}.carousel-caption .btn{text-shadow:none}@media screen and (min-width:768px){.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right,.carousel-control .icon-prev,.carousel-control .icon-next{width:30px;height:30px;margin-top:-15px;font-size:30px}.carousel-control .glyphicon-chevron-left,.carousel-control .icon-prev{margin-left:-15px}.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next{margin-right:-15px}.carousel-caption{right:20%;left:20%;padding-bottom:30px}.carousel-indicators{bottom:20px}}.clearfix:before,.clearfix:after,.dl-horizontal dd:before,.dl-horizontal dd:after,.container:before,.container:after,.container-fluid:before,.container-fluid:after,.row:before,.row:after,.form-horizontal .form-group:before,.form-horizontal .form-group:after,.btn-toolbar:before,.btn-toolbar:after,.btn-group-vertical>.btn-group:before,.btn-group-vertical>.btn-group:after,.nav:before,.nav:after,.navbar:before,.navbar:after,.navbar-header:before,.navbar-header:after,.navbar-collapse:before,.navbar-collapse:after,.pager:before,.pager:after,.panel-body:before,.panel-body:after,.modal-footer:before,.modal-footer:after{display:table;content:" "}.clearfix:after,.dl-horizontal dd:after,.container:after,.container-fluid:after,.row:after,.form-horizontal .form-group:after,.btn-toolbar:after,.btn-group-vertical>.btn-group:after,.nav:after,.navbar:after,.navbar-header:after,.navbar-collapse:after,.pager:after,.panel-body:after,.modal-footer:after{clear:both}.center-block{display:block;margin-right:auto;margin-left:auto}.pull-right{float:right!important}.pull-left{float:left!important}.hide{display:none!important}.show{display:block!important}.invisible{visibility:hidden}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.hidden{display:none!important;visibility:hidden!important}.affix{position:fixed;-webkit-transform:translate3d(0,0,0);-o-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}@-ms-viewport{width:device-width}.visible-xs,.visible-sm,.visible-md,.visible-lg{display:none!important}.visible-xs-block,.visible-xs-inline,.visible-xs-inline-block,.visible-sm-block,.visible-sm-inline,.visible-sm-inline-block,.visible-md-block,.visible-md-inline,.visible-md-inline-block,.visible-lg-block,.visible-lg-inline,.visible-lg-inline-block{display:none!important}@media (max-width:767px){.visible-xs{display:block!important}table.visible-xs{display:table}tr.visible-xs{display:table-row!important}th.visible-xs,td.visible-xs{display:table-cell!important}}@media (max-width:767px){.visible-xs-block{display:block!important}}@media (max-width:767px){.visible-xs-inline{display:inline!important}}@media (max-width:767px){.visible-xs-inline-block{display:inline-block!important}}@media (min-width:768px) and (max-width:991px){.visible-sm{display:block!important}table.visible-sm{display:table}tr.visible-sm{display:table-row!important}th.visible-sm,td.visible-sm{display:table-cell!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-block{display:block!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-inline{display:inline!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-inline-block{display:inline-block!important}}@media (min-width:992px) and (max-width:1199px){.visible-md{display:block!important}table.visible-md{display:table}tr.visible-md{display:table-row!important}th.visible-md,td.visible-md{display:table-cell!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-block{display:block!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-inline{display:inline!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-inline-block{display:inline-block!important}}@media (min-width:1200px){.visible-lg{display:block!important}table.visible-lg{display:table}tr.visible-lg{display:table-row!important}th.visible-lg,td.visible-lg{display:table-cell!important}}@media (min-width:1200px){.visible-lg-block{display:block!important}}@media (min-width:1200px){.visible-lg-inline{display:inline!important}}@media (min-width:1200px){.visible-lg-inline-block{display:inline-block!important}}@media (max-width:767px){.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.hidden-md{display:none!important}}@media (min-width:1200px){.hidden-lg{display:none!important}}.visible-print{display:none!important}@media print{.visible-print{display:block!important}table.visible-print{display:table}tr.visible-print{display:table-row!important}th.visible-print,td.visible-print{display:table-cell!important}}.visible-print-block{display:none!important}@media print{.visible-print-block{display:block!important}}.visible-print-inline{display:none!important}@media print{.visible-print-inline{display:inline!important}}.visible-print-inline-block{display:none!important}@media print{.visible-print-inline-block{display:inline-block!important}}@media print{.hidden-print{display:none!important}} \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/css/animation.css b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/css/animation.css new file mode 100644 index 000000000..489d1e49d --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/css/animation.css @@ -0,0 +1,85 @@ +/* + Animation example, for spinners +*/ +.animate-spin:before { + -moz-animation: spin 2s infinite linear; + -o-animation: spin 2s infinite linear; + -webkit-animation: spin 2s infinite linear; + animation: spin 2s infinite linear; + display: inline-block; +} +@-moz-keyframes spin { + 0% { + -moz-transform: rotate(0deg); + -o-transform: rotate(0deg); + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } + + 100% { + -moz-transform: rotate(359deg); + -o-transform: rotate(359deg); + -webkit-transform: rotate(359deg); + transform: rotate(359deg); + } +} +@-webkit-keyframes spin { + 0% { + -moz-transform: rotate(0deg); + -o-transform: rotate(0deg); + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } + + 100% { + -moz-transform: rotate(359deg); + -o-transform: rotate(359deg); + -webkit-transform: rotate(359deg); + transform: rotate(359deg); + } +} +@-o-keyframes spin { + 0% { + -moz-transform: rotate(0deg); + -o-transform: rotate(0deg); + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } + + 100% { + -moz-transform: rotate(359deg); + -o-transform: rotate(359deg); + -webkit-transform: rotate(359deg); + transform: rotate(359deg); + } +} +@-ms-keyframes spin { + 0% { + -moz-transform: rotate(0deg); + -o-transform: rotate(0deg); + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } + + 100% { + -moz-transform: rotate(359deg); + -o-transform: rotate(359deg); + -webkit-transform: rotate(359deg); + transform: rotate(359deg); + } +} +@keyframes spin { + 0% { + -moz-transform: rotate(0deg); + -o-transform: rotate(0deg); + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } + + 100% { + -moz-transform: rotate(359deg); + -o-transform: rotate(359deg); + -webkit-transform: rotate(359deg); + transform: rotate(359deg); + } +} diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/css/locate-fa-codes.css b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/css/locate-fa-codes.css new file mode 100644 index 000000000..ad84b82b8 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/css/locate-fa-codes.css @@ -0,0 +1,4 @@ + +.icon-location:before { content: '\e802'; } /* '' */ +.icon-direction:before { content: '\e800'; } /* '' */ +.icon-spinner:before { content: '\e801'; } /* '' */ \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/css/locate-fa-embedded.css b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/css/locate-fa-embedded.css new file mode 100644 index 000000000..bfdccf40f --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/css/locate-fa-embedded.css @@ -0,0 +1,57 @@ +@font-face { + font-family: 'locate-fa'; + src: url('../font/locate-fa.eot?55704868'); + src: url('../font/locate-fa.eot?55704868#iefix') format('embedded-opentype'), + url('../font/locate-fa.svg?55704868#locate-fa') format('svg'); + font-weight: normal; + font-style: normal; +} +@font-face { + font-family: 'locate-fa'; + src: url('data:application/octet-stream;base64,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') format('woff'), + url('data:application/octet-stream;base64,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') format('truetype'); +} +/* Chrome hack: SVG is rendered more smooth in Windozze. 100% magic, uncomment if you need it. */ +/* Note, that will break hinting! In other OS-es font will be not as sharp as it could be */ +/* +@media screen and (-webkit-min-device-pixel-ratio:0) { + @font-face { + font-family: 'locate-fa'; + src: url('../font/locate-fa.svg?55704868#locate-fa') format('svg'); + } +} +*/ + + [class^="icon-"]:before, [class*=" icon-"]:before { + font-family: "locate-fa"; + font-style: normal; + font-weight: normal; + speak: none; + + display: inline-block; + text-decoration: inherit; + width: 1em; + margin-right: .2em; + text-align: center; + /* opacity: .8; */ + + /* For safety - reset parent styles, that can break glyph codes*/ + font-variant: normal; + text-transform: none; + + /* fix buttons height, for twitter bootstrap */ + line-height: 1em; + + /* Animation center compensation - margins should be symmetric */ + /* remove if not needed */ + margin-left: .2em; + + /* you can be more comfortable with increased icons size */ + /* font-size: 120%; */ + + /* Uncomment for 3D effect */ + /* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */ +} +.icon-location:before { content: '\e802'; } /* '' */ +.icon-direction:before { content: '\e800'; } /* '' */ +.icon-spinner:before { content: '\e801'; } /* '' */ \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/css/locate-fa-ie7-codes.css b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/css/locate-fa-ie7-codes.css new file mode 100644 index 000000000..86dccef9d --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/css/locate-fa-ie7-codes.css @@ -0,0 +1,4 @@ + +.icon-location { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } +.icon-direction { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } +.icon-spinner { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/css/locate-fa-ie7.css b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/css/locate-fa-ie7.css new file mode 100644 index 000000000..717b51156 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/css/locate-fa-ie7.css @@ -0,0 +1,15 @@ +[class^="icon-"], [class*=" icon-"] { + font-family: 'locate-fa'; + font-style: normal; + font-weight: normal; + + /* fix buttons height */ + line-height: 1em; + + /* you can be more comfortable with increased icons size */ + /* font-size: 120%; */ +} + +.icon-location { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } +.icon-direction { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } +.icon-spinner { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/css/locate-fa.css b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/css/locate-fa.css new file mode 100644 index 000000000..86ee0791c --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/css/locate-fa.css @@ -0,0 +1,72 @@ +@font-face { + font-family: 'locate-fa'; + src: url('../font/locate-fa.eot?9201824'); + src: url('../font/locate-fa.eot?9201824#iefix') format('embedded-opentype'), + url('../font/locate-fa.woff?9201824') format('woff'), + url('../font/locate-fa.ttf?9201824') format('truetype'), + url('../font/locate-fa.svg?9201824#locate-fa') format('svg'); + font-weight: normal; + font-style: normal; +} +/* use SVG only on mobile devices to avoid display issue on android +issue: https://github.com/domoritz/leaflet-locatecontrol/issues/78 +solution: http://stackoverflow.com/a/21050160/1106908 +*/ +@media only screen and (max-width: 320px), + screen and (max-device-width: 720px) and (orientation: portrait), + screen and (max-device-width: 1280px) and (orientation: landscape) +{ + @font-face { + font-family: 'locate-fa'; + src: url('../font/locate-fa.eot?9201824'); + src: url('../font/locate-fa.svg?9201824#locate-fa') format('svg'); + font-weight: normal; + font-style: normal; + } +} + +/* Chrome hack: SVG is rendered more smooth in Windozze. 100% magic, uncomment if you need it. */ +/* Note, that will break hinting! In other OS-es font will be not as sharp as it could be */ +/* +@media screen and (-webkit-min-device-pixel-ratio:0) { + @font-face { + font-family: 'locate-fa'; + src: url('../font/locate-fa.svg?9201824#locate-fa') format('svg'); + } +} +*/ + + [class^="icon-"]:before, [class*=" icon-"]:before { + font-family: "locate-fa"; + font-style: normal; + font-weight: normal; + speak: none; + + display: inline-block; + text-decoration: inherit; + width: 1em; + margin-right: .2em; + text-align: center; + /* opacity: .8; */ + + /* For safety - reset parent styles, that can break glyph codes*/ + font-variant: normal; + text-transform: none; + + /* fix buttons height, for twitter bootstrap */ + line-height: 1em; + + /* Animation center compensation - margins should be symmetric */ + /* remove if not needed */ + margin-left: .2em; + + /* you can be more comfortable with increased icons size */ + /* font-size: 120%; */ + + /* Uncomment for 3D effect */ + /* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */ +} + +.icon-location:before { content: '\e802'; } /* '' */ +.icon-direction:before { content: '\e800'; } /* '' */ +.icon-spinner:before { content: '\e801'; } /* '' */ \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/d3/c3.css b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/d3/c3.css new file mode 100644 index 000000000..568648f5e --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/d3/c3.css @@ -0,0 +1,203 @@ +/*-- Chart --*/ + +.c3 svg { + font: 10px sans-serif; +} +.c3 path, .c3 line { + fill: none; + stroke: #000; +} +.c3 text { + -webkit-user-select: none; + -moz-user-select: none; + user-select: none; +} + +.c3-legend-item-tile, +.c3-xgrid-focus, +.c3-ygrid, +.c3-event-rect, +.c3-bars path { + shape-rendering: crispEdges; +} + +.c3-chart-arc path { + stroke: #fff; + +} +.c3-chart-arc text { + fill: #fff; + font-size: 13px; +} + +/*-- Axis --*/ + +.c3-axis-x .tick { +} +.c3-axis-x-label { +} + +.c3-axis-y .tick { +} +.c3-axis-y-label { +} + +.c3-axis-y2 .tick { +} +.c3-axis-y2-label { +} + +/*-- Grid --*/ + +.c3-grid line { + stroke: #aaa; +} +.c3-grid text { + fill: #aaa; +} +.c3-xgrid, .c3-ygrid { + stroke-dasharray: 3 3; +} +.c3-xgrid-focus { +} + +/*-- Text on Chart --*/ + +.c3-text { +} + +.c3-text.c3-empty { + fill: #808080; + font-size: 2em; +} + +/*-- Line --*/ + +.c3-line { + stroke-width: 1px; +} +/*-- Point --*/ + +.c3-circle._expanded_ { + stroke-width: 1px; + stroke: white; +} +.c3-selected-circle { + fill: white; + stroke-width: 2px; +} + +/*-- Bar --*/ + +.c3-bar { + stroke-width: 0; +} +.c3-bar._expanded_ { + fill-opacity: 0.75; +} + +/*-- Arc --*/ + +.c3-chart-arcs-title { + font-size: 1.3em; +} + +/*-- Focus --*/ + +.c3-target.c3-focused path.c3-line, .c3-target.c3-focused path.c3-step { + stroke-width: 2px; +} + +/*-- Region --*/ + +.c3-region { + fill: steelblue; + fill-opacity: .1; +} + +/*-- Brush --*/ + +.c3-brush .extent { + fill-opacity: .1; +} + +/*-- Select - Drag --*/ + +.c3-dragarea { +} + +/*-- Legend --*/ + +.c3-legend-item { + font-size: 12px; +} + +.c3-legend-background { + opacity: 0.75; + fill: white; + stroke: lightgray; + stroke-width: 1 +} + +/*-- Tooltip --*/ + +.c3-tooltip { + border-collapse:collapse; + border-spacing:0; + background-color:#fff; + empty-cells:show; + -webkit-box-shadow: 7px 7px 12px -9px rgb(119,119,119); + -moz-box-shadow: 7px 7px 12px -9px rgb(119,119,119); + box-shadow: 7px 7px 12px -9px rgb(119,119,119); + opacity: 0.9; +} +.c3-tooltip tr { + border:1px solid #CCC; +} +.c3-tooltip th { + background-color: #aaa; + font-size:14px; + padding:2px 5px; + text-align:left; + color:#FFF; +} +.c3-tooltip td { + font-size:13px; + padding: 3px 6px; + background-color:#fff; + border-left:1px dotted #999; +} +.c3-tooltip td > span { + display: inline-block; + width: 10px; + height: 10px; + margin-right: 6px; +} +.c3-tooltip td.value{ + text-align: right; +} + +.c3-area { + stroke-width: 0; + opacity: 0.2; +} + +.c3-chart-arcs .c3-chart-arcs-background { + fill: #e0e0e0; + stroke: none; +} +.c3-chart-arcs .c3-chart-arcs-gauge-unit { + fill: #000; + font-size: 16px; +} +.c3-chart-arcs .c3-chart-arcs-gauge-max { + fill: #777; +} +.c3-chart-arcs .c3-chart-arcs-gauge-min { + fill: #777; +} + +.c3-chart-arc .c3-gauge-value { + fill: #000; + font-size: 28px; +} diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/font-awesome.min.css b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/font-awesome.min.css new file mode 100644 index 000000000..3d920fc87 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/font-awesome.min.css @@ -0,0 +1,4 @@ +/*! + * Font Awesome 4.1.0 by @davegandy - http://fontawesome.io - @fontawesome + * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) + */@font-face{font-family:'FontAwesome';src:url('../fonts/fontawesome-webfont.eot?v=4.1.0');src:url('../fonts/fontawesome-webfont.eot?#iefix&v=4.1.0') format('embedded-opentype'),url('../fonts/fontawesome-webfont.woff?v=4.1.0') format('woff'),url('../fonts/fontawesome-webfont.ttf?v=4.1.0') format('truetype'),url('../fonts/fontawesome-webfont.svg?v=4.1.0#fontawesomeregular') format('svg');font-weight:normal;font-style:normal}.fa{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa-lg{font-size:1.33333333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.28571429em;text-align:center}.fa-ul{padding-left:0;margin-left:2.14285714em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.14285714em;width:2.14285714em;top:.14285714em;text-align:center}.fa-li.fa-lg{left:-1.85714286em}.fa-border{padding:.2em .25em .15em;border:solid .08em #eee;border-radius:.1em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa-spin{-webkit-animation:spin 2s infinite linear;-moz-animation:spin 2s infinite linear;-o-animation:spin 2s infinite linear;animation:spin 2s infinite linear}@-moz-keyframes spin{0%{-moz-transform:rotate(0deg)}100%{-moz-transform:rotate(359deg)}}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg)}}@-o-keyframes spin{0%{-o-transform:rotate(0deg)}100%{-o-transform:rotate(359deg)}}@keyframes spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:rotate(180deg);-moz-transform:rotate(180deg);-ms-transform:rotate(180deg);-o-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3);-webkit-transform:rotate(270deg);-moz-transform:rotate(270deg);-ms-transform:rotate(270deg);-o-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1);-webkit-transform:scale(-1, 1);-moz-transform:scale(-1, 1);-ms-transform:scale(-1, 1);-o-transform:scale(-1, 1);transform:scale(-1, 1)}.fa-flip-vertical{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1);-webkit-transform:scale(1, -1);-moz-transform:scale(1, -1);-ms-transform:scale(1, -1);-o-transform:scale(1, -1);transform:scale(1, -1)}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:"\f000"}.fa-music:before{content:"\f001"}.fa-search:before{content:"\f002"}.fa-envelope-o:before{content:"\f003"}.fa-heart:before{content:"\f004"}.fa-star:before{content:"\f005"}.fa-star-o:before{content:"\f006"}.fa-user:before{content:"\f007"}.fa-film:before{content:"\f008"}.fa-th-large:before{content:"\f009"}.fa-th:before{content:"\f00a"}.fa-th-list:before{content:"\f00b"}.fa-check:before{content:"\f00c"}.fa-times:before{content:"\f00d"}.fa-search-plus:before{content:"\f00e"}.fa-search-minus:before{content:"\f010"}.fa-power-off:before{content:"\f011"}.fa-signal:before{content:"\f012"}.fa-gear:before,.fa-cog:before{content:"\f013"}.fa-trash-o:before{content:"\f014"}.fa-home:before{content:"\f015"}.fa-file-o:before{content:"\f016"}.fa-clock-o:before{content:"\f017"}.fa-road:before{content:"\f018"}.fa-download:before{content:"\f019"}.fa-arrow-circle-o-down:before{content:"\f01a"}.fa-arrow-circle-o-up:before{content:"\f01b"}.fa-inbox:before{content:"\f01c"}.fa-play-circle-o:before{content:"\f01d"}.fa-rotate-right:before,.fa-repeat:before{content:"\f01e"}.fa-refresh:before{content:"\f021"}.fa-list-alt:before{content:"\f022"}.fa-lock:before{content:"\f023"}.fa-flag:before{content:"\f024"}.fa-headphones:before{content:"\f025"}.fa-volume-off:before{content:"\f026"}.fa-volume-down:before{content:"\f027"}.fa-volume-up:before{content:"\f028"}.fa-qrcode:before{content:"\f029"}.fa-barcode:before{content:"\f02a"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-print:before{content:"\f02f"}.fa-camera:before{content:"\f030"}.fa-font:before{content:"\f031"}.fa-bold:before{content:"\f032"}.fa-italic:before{content:"\f033"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-align-left:before{content:"\f036"}.fa-align-center:before{content:"\f037"}.fa-align-right:before{content:"\f038"}.fa-align-justify:before{content:"\f039"}.fa-list:before{content:"\f03a"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-indent:before{content:"\f03c"}.fa-video-camera:before{content:"\f03d"}.fa-photo:before,.fa-image:before,.fa-picture-o:before{content:"\f03e"}.fa-pencil:before{content:"\f040"}.fa-map-marker:before{content:"\f041"}.fa-adjust:before{content:"\f042"}.fa-tint:before{content:"\f043"}.fa-edit:before,.fa-pencil-square-o:before{content:"\f044"}.fa-share-square-o:before{content:"\f045"}.fa-check-square-o:before{content:"\f046"}.fa-arrows:before{content:"\f047"}.fa-step-backward:before{content:"\f048"}.fa-fast-backward:before{content:"\f049"}.fa-backward:before{content:"\f04a"}.fa-play:before{content:"\f04b"}.fa-pause:before{content:"\f04c"}.fa-stop:before{content:"\f04d"}.fa-forward:before{content:"\f04e"}.fa-fast-forward:before{content:"\f050"}.fa-step-forward:before{content:"\f051"}.fa-eject:before{content:"\f052"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-plus-circle:before{content:"\f055"}.fa-minus-circle:before{content:"\f056"}.fa-times-circle:before{content:"\f057"}.fa-check-circle:before{content:"\f058"}.fa-question-circle:before{content:"\f059"}.fa-info-circle:before{content:"\f05a"}.fa-crosshairs:before{content:"\f05b"}.fa-times-circle-o:before{content:"\f05c"}.fa-check-circle-o:before{content:"\f05d"}.fa-ban:before{content:"\f05e"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrow-down:before{content:"\f063"}.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-expand:before{content:"\f065"}.fa-compress:before{content:"\f066"}.fa-plus:before{content:"\f067"}.fa-minus:before{content:"\f068"}.fa-asterisk:before{content:"\f069"}.fa-exclamation-circle:before{content:"\f06a"}.fa-gift:before{content:"\f06b"}.fa-leaf:before{content:"\f06c"}.fa-fire:before{content:"\f06d"}.fa-eye:before{content:"\f06e"}.fa-eye-slash:before{content:"\f070"}.fa-warning:before,.fa-exclamation-triangle:before{content:"\f071"}.fa-plane:before{content:"\f072"}.fa-calendar:before{content:"\f073"}.fa-random:before{content:"\f074"}.fa-comment:before{content:"\f075"}.fa-magnet:before{content:"\f076"}.fa-chevron-up:before{content:"\f077"}.fa-chevron-down:before{content:"\f078"}.fa-retweet:before{content:"\f079"}.fa-shopping-cart:before{content:"\f07a"}.fa-folder:before{content:"\f07b"}.fa-folder-open:before{content:"\f07c"}.fa-arrows-v:before{content:"\f07d"}.fa-arrows-h:before{content:"\f07e"}.fa-bar-chart-o:before{content:"\f080"}.fa-twitter-square:before{content:"\f081"}.fa-facebook-square:before{content:"\f082"}.fa-camera-retro:before{content:"\f083"}.fa-key:before{content:"\f084"}.fa-gears:before,.fa-cogs:before{content:"\f085"}.fa-comments:before{content:"\f086"}.fa-thumbs-o-up:before{content:"\f087"}.fa-thumbs-o-down:before{content:"\f088"}.fa-star-half:before{content:"\f089"}.fa-heart-o:before{content:"\f08a"}.fa-sign-out:before{content:"\f08b"}.fa-linkedin-square:before{content:"\f08c"}.fa-thumb-tack:before{content:"\f08d"}.fa-external-link:before{content:"\f08e"}.fa-sign-in:before{content:"\f090"}.fa-trophy:before{content:"\f091"}.fa-github-square:before{content:"\f092"}.fa-upload:before{content:"\f093"}.fa-lemon-o:before{content:"\f094"}.fa-phone:before{content:"\f095"}.fa-square-o:before{content:"\f096"}.fa-bookmark-o:before{content:"\f097"}.fa-phone-square:before{content:"\f098"}.fa-twitter:before{content:"\f099"}.fa-facebook:before{content:"\f09a"}.fa-github:before{content:"\f09b"}.fa-unlock:before{content:"\f09c"}.fa-credit-card:before{content:"\f09d"}.fa-rss:before{content:"\f09e"}.fa-hdd-o:before{content:"\f0a0"}.fa-bullhorn:before{content:"\f0a1"}.fa-bell:before{content:"\f0f3"}.fa-certificate:before{content:"\f0a3"}.fa-hand-o-right:before{content:"\f0a4"}.fa-hand-o-left:before{content:"\f0a5"}.fa-hand-o-up:before{content:"\f0a6"}.fa-hand-o-down:before{content:"\f0a7"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-globe:before{content:"\f0ac"}.fa-wrench:before{content:"\f0ad"}.fa-tasks:before{content:"\f0ae"}.fa-filter:before{content:"\f0b0"}.fa-briefcase:before{content:"\f0b1"}.fa-arrows-alt:before{content:"\f0b2"}.fa-group:before,.fa-users:before{content:"\f0c0"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-cloud:before{content:"\f0c2"}.fa-flask:before{content:"\f0c3"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-copy:before,.fa-files-o:before{content:"\f0c5"}.fa-paperclip:before{content:"\f0c6"}.fa-save:before,.fa-floppy-o:before{content:"\f0c7"}.fa-square:before{content:"\f0c8"}.fa-navicon:before,.fa-reorder:before,.fa-bars:before{content:"\f0c9"}.fa-list-ul:before{content:"\f0ca"}.fa-list-ol:before{content:"\f0cb"}.fa-strikethrough:before{content:"\f0cc"}.fa-underline:before{content:"\f0cd"}.fa-table:before{content:"\f0ce"}.fa-magic:before{content:"\f0d0"}.fa-truck:before{content:"\f0d1"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-square:before{content:"\f0d3"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-plus:before{content:"\f0d5"}.fa-money:before{content:"\f0d6"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-up:before{content:"\f0d8"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-columns:before{content:"\f0db"}.fa-unsorted:before,.fa-sort:before{content:"\f0dc"}.fa-sort-down:before,.fa-sort-desc:before{content:"\f0dd"}.fa-sort-up:before,.fa-sort-asc:before{content:"\f0de"}.fa-envelope:before{content:"\f0e0"}.fa-linkedin:before{content:"\f0e1"}.fa-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-legal:before,.fa-gavel:before{content:"\f0e3"}.fa-dashboard:before,.fa-tachometer:before{content:"\f0e4"}.fa-comment-o:before{content:"\f0e5"}.fa-comments-o:before{content:"\f0e6"}.fa-flash:before,.fa-bolt:before{content:"\f0e7"}.fa-sitemap:before{content:"\f0e8"}.fa-umbrella:before{content:"\f0e9"}.fa-paste:before,.fa-clipboard:before{content:"\f0ea"}.fa-lightbulb-o:before{content:"\f0eb"}.fa-exchange:before{content:"\f0ec"}.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-upload:before{content:"\f0ee"}.fa-user-md:before{content:"\f0f0"}.fa-stethoscope:before{content:"\f0f1"}.fa-suitcase:before{content:"\f0f2"}.fa-bell-o:before{content:"\f0a2"}.fa-coffee:before{content:"\f0f4"}.fa-cutlery:before{content:"\f0f5"}.fa-file-text-o:before{content:"\f0f6"}.fa-building-o:before{content:"\f0f7"}.fa-hospital-o:before{content:"\f0f8"}.fa-ambulance:before{content:"\f0f9"}.fa-medkit:before{content:"\f0fa"}.fa-fighter-jet:before{content:"\f0fb"}.fa-beer:before{content:"\f0fc"}.fa-h-square:before{content:"\f0fd"}.fa-plus-square:before{content:"\f0fe"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angle-down:before{content:"\f107"}.fa-desktop:before{content:"\f108"}.fa-laptop:before{content:"\f109"}.fa-tablet:before{content:"\f10a"}.fa-mobile-phone:before,.fa-mobile:before{content:"\f10b"}.fa-circle-o:before{content:"\f10c"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-spinner:before{content:"\f110"}.fa-circle:before{content:"\f111"}.fa-mail-reply:before,.fa-reply:before{content:"\f112"}.fa-github-alt:before{content:"\f113"}.fa-folder-o:before{content:"\f114"}.fa-folder-open-o:before{content:"\f115"}.fa-smile-o:before{content:"\f118"}.fa-frown-o:before{content:"\f119"}.fa-meh-o:before{content:"\f11a"}.fa-gamepad:before{content:"\f11b"}.fa-keyboard-o:before{content:"\f11c"}.fa-flag-o:before{content:"\f11d"}.fa-flag-checkered:before{content:"\f11e"}.fa-terminal:before{content:"\f120"}.fa-code:before{content:"\f121"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122"}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:"\f123"}.fa-location-arrow:before{content:"\f124"}.fa-crop:before{content:"\f125"}.fa-code-fork:before{content:"\f126"}.fa-unlink:before,.fa-chain-broken:before{content:"\f127"}.fa-question:before{content:"\f128"}.fa-info:before{content:"\f129"}.fa-exclamation:before{content:"\f12a"}.fa-superscript:before{content:"\f12b"}.fa-subscript:before{content:"\f12c"}.fa-eraser:before{content:"\f12d"}.fa-puzzle-piece:before{content:"\f12e"}.fa-microphone:before{content:"\f130"}.fa-microphone-slash:before{content:"\f131"}.fa-shield:before{content:"\f132"}.fa-calendar-o:before{content:"\f133"}.fa-fire-extinguisher:before{content:"\f134"}.fa-rocket:before{content:"\f135"}.fa-maxcdn:before{content:"\f136"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-html5:before{content:"\f13b"}.fa-css3:before{content:"\f13c"}.fa-anchor:before{content:"\f13d"}.fa-unlock-alt:before{content:"\f13e"}.fa-bullseye:before{content:"\f140"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-rss-square:before{content:"\f143"}.fa-play-circle:before{content:"\f144"}.fa-ticket:before{content:"\f145"}.fa-minus-square:before{content:"\f146"}.fa-minus-square-o:before{content:"\f147"}.fa-level-up:before{content:"\f148"}.fa-level-down:before{content:"\f149"}.fa-check-square:before{content:"\f14a"}.fa-pencil-square:before{content:"\f14b"}.fa-external-link-square:before{content:"\f14c"}.fa-share-square:before{content:"\f14d"}.fa-compass:before{content:"\f14e"}.fa-toggle-down:before,.fa-caret-square-o-down:before{content:"\f150"}.fa-toggle-up:before,.fa-caret-square-o-up:before{content:"\f151"}.fa-toggle-right:before,.fa-caret-square-o-right:before{content:"\f152"}.fa-euro:before,.fa-eur:before{content:"\f153"}.fa-gbp:before{content:"\f154"}.fa-dollar:before,.fa-usd:before{content:"\f155"}.fa-rupee:before,.fa-inr:before{content:"\f156"}.fa-cny:before,.fa-rmb:before,.fa-yen:before,.fa-jpy:before{content:"\f157"}.fa-ruble:before,.fa-rouble:before,.fa-rub:before{content:"\f158"}.fa-won:before,.fa-krw:before{content:"\f159"}.fa-bitcoin:before,.fa-btc:before{content:"\f15a"}.fa-file:before{content:"\f15b"}.fa-file-text:before{content:"\f15c"}.fa-sort-alpha-asc:before{content:"\f15d"}.fa-sort-alpha-desc:before{content:"\f15e"}.fa-sort-amount-asc:before{content:"\f160"}.fa-sort-amount-desc:before{content:"\f161"}.fa-sort-numeric-asc:before{content:"\f162"}.fa-sort-numeric-desc:before{content:"\f163"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbs-down:before{content:"\f165"}.fa-youtube-square:before{content:"\f166"}.fa-youtube:before{content:"\f167"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-youtube-play:before{content:"\f16a"}.fa-dropbox:before{content:"\f16b"}.fa-stack-overflow:before{content:"\f16c"}.fa-instagram:before{content:"\f16d"}.fa-flickr:before{content:"\f16e"}.fa-adn:before{content:"\f170"}.fa-bitbucket:before{content:"\f171"}.fa-bitbucket-square:before{content:"\f172"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-long-arrow-down:before{content:"\f175"}.fa-long-arrow-up:before{content:"\f176"}.fa-long-arrow-left:before{content:"\f177"}.fa-long-arrow-right:before{content:"\f178"}.fa-apple:before{content:"\f179"}.fa-windows:before{content:"\f17a"}.fa-android:before{content:"\f17b"}.fa-linux:before{content:"\f17c"}.fa-dribbble:before{content:"\f17d"}.fa-skype:before{content:"\f17e"}.fa-foursquare:before{content:"\f180"}.fa-trello:before{content:"\f181"}.fa-female:before{content:"\f182"}.fa-male:before{content:"\f183"}.fa-gittip:before{content:"\f184"}.fa-sun-o:before{content:"\f185"}.fa-moon-o:before{content:"\f186"}.fa-archive:before{content:"\f187"}.fa-bug:before{content:"\f188"}.fa-vk:before{content:"\f189"}.fa-weibo:before{content:"\f18a"}.fa-renren:before{content:"\f18b"}.fa-pagelines:before{content:"\f18c"}.fa-stack-exchange:before{content:"\f18d"}.fa-arrow-circle-o-right:before{content:"\f18e"}.fa-arrow-circle-o-left:before{content:"\f190"}.fa-toggle-left:before,.fa-caret-square-o-left:before{content:"\f191"}.fa-dot-circle-o:before{content:"\f192"}.fa-wheelchair:before{content:"\f193"}.fa-vimeo-square:before{content:"\f194"}.fa-turkish-lira:before,.fa-try:before{content:"\f195"}.fa-plus-square-o:before{content:"\f196"}.fa-space-shuttle:before{content:"\f197"}.fa-slack:before{content:"\f198"}.fa-envelope-square:before{content:"\f199"}.fa-wordpress:before{content:"\f19a"}.fa-openid:before{content:"\f19b"}.fa-institution:before,.fa-bank:before,.fa-university:before{content:"\f19c"}.fa-mortar-board:before,.fa-graduation-cap:before{content:"\f19d"}.fa-yahoo:before{content:"\f19e"}.fa-google:before{content:"\f1a0"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-square:before{content:"\f1a2"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-stumbleupon:before{content:"\f1a4"}.fa-delicious:before{content:"\f1a5"}.fa-digg:before{content:"\f1a6"}.fa-pied-piper-square:before,.fa-pied-piper:before{content:"\f1a7"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-drupal:before{content:"\f1a9"}.fa-joomla:before{content:"\f1aa"}.fa-language:before{content:"\f1ab"}.fa-fax:before{content:"\f1ac"}.fa-building:before{content:"\f1ad"}.fa-child:before{content:"\f1ae"}.fa-paw:before{content:"\f1b0"}.fa-spoon:before{content:"\f1b1"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-recycle:before{content:"\f1b8"}.fa-automobile:before,.fa-car:before{content:"\f1b9"}.fa-cab:before,.fa-taxi:before{content:"\f1ba"}.fa-tree:before{content:"\f1bb"}.fa-spotify:before{content:"\f1bc"}.fa-deviantart:before{content:"\f1bd"}.fa-soundcloud:before{content:"\f1be"}.fa-database:before{content:"\f1c0"}.fa-file-pdf-o:before{content:"\f1c1"}.fa-file-word-o:before{content:"\f1c2"}.fa-file-excel-o:before{content:"\f1c3"}.fa-file-powerpoint-o:before{content:"\f1c4"}.fa-file-photo-o:before,.fa-file-picture-o:before,.fa-file-image-o:before{content:"\f1c5"}.fa-file-zip-o:before,.fa-file-archive-o:before{content:"\f1c6"}.fa-file-sound-o:before,.fa-file-audio-o:before{content:"\f1c7"}.fa-file-movie-o:before,.fa-file-video-o:before{content:"\f1c8"}.fa-file-code-o:before{content:"\f1c9"}.fa-vine:before{content:"\f1ca"}.fa-codepen:before{content:"\f1cb"}.fa-jsfiddle:before{content:"\f1cc"}.fa-life-bouy:before,.fa-life-saver:before,.fa-support:before,.fa-life-ring:before{content:"\f1cd"}.fa-circle-o-notch:before{content:"\f1ce"}.fa-ra:before,.fa-rebel:before{content:"\f1d0"}.fa-ge:before,.fa-empire:before{content:"\f1d1"}.fa-git-square:before{content:"\f1d2"}.fa-git:before{content:"\f1d3"}.fa-hacker-news:before{content:"\f1d4"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-qq:before{content:"\f1d6"}.fa-wechat:before,.fa-weixin:before{content:"\f1d7"}.fa-send:before,.fa-paper-plane:before{content:"\f1d8"}.fa-send-o:before,.fa-paper-plane-o:before{content:"\f1d9"}.fa-history:before{content:"\f1da"}.fa-circle-thin:before{content:"\f1db"}.fa-header:before{content:"\f1dc"}.fa-paragraph:before{content:"\f1dd"}.fa-sliders:before{content:"\f1de"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-bomb:before{content:"\f1e2"} \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/font/LICENSE.txt b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/font/LICENSE.txt new file mode 100644 index 000000000..174b67a48 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/font/LICENSE.txt @@ -0,0 +1,10 @@ +Font license info + + +## Font Awesome + + Copyright (C) 2012 by Dave Gandy + + Author: Dave Gandy + License: SIL () + Homepage: http://fortawesome.github.com/Font-Awesome/ diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/font/README.txt b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/font/README.txt new file mode 100644 index 000000000..53ff724a8 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/font/README.txt @@ -0,0 +1,75 @@ +This webfont is generated by http://fontello.com open source project. + + +================================================================================ +Please, note, that you should obey original font licences, used to make this +webfont pack. Details available in LICENSE.txt file. + +- Usually, it's enough to publish content of LICENSE.txt file somewhere on your + site in "About" section. + +- If your project is open-source, usually, it will be ok to make LICENSE.txt + file publically available in your repository. + +- Fonts, used in Fontello, don't require to make clickable links on your site. + But any kind of additional authors crediting is welcome. +================================================================================ + + +Comments on archive content +--------------------------- + +- /font/* - fonts in different formats + +- /css/* - different kinds of css, for all situations. Should be ok with + twitter bootstrap. Also, you can skip style and assign icon classes + directly to text elements, if you don't mind about IE7. + +- demo.html - demo file, to show your webfont content + +- LICENSE.txt - license info about source fonts, used to build your one. + +- config.json - keeps your settings. You can import it back to fontello anytime, + to continue your work + + +Why so many CSS files ? +----------------------- + +Because we like to fit all your needs :) + +- basic file, .css - is usually enougth, in contains @font-face + and character codes definition + +- *-ie7.css - if you need IE7 support, but still don't wish to put char codes + directly into html + +- *-codes.css and *-ie7-codes.css - if you like to use your own @font-face + rules, but still wish to benefit of css generation. That can be very + convenient for automated assets build systems. When you need to update font - + no needs to manually edit files, just override old version with archive + content. See fontello source codes for example. + +- *-embedded.css - basic css file, but with embedded WOFF font, to avoid + CORS issues in Firefox and IE9+, when fonts are hosted on the separate domain. + We strongly recommend to resolve this issue by `Access-Control-Allow-Origin` + server headers. But if you ok with dirty hack - this file is for you. Note, + that data url moved to separate @font-face to avoid problems with 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 literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/font/locate-fa.svg b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/font/locate-fa.svg new file mode 100644 index 000000000..6e5807bb6 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/font/locate-fa.svg @@ -0,0 +1,14 @@ + + + +Copyright (C) 2014 by original authors @ fontello.com + + + + + + + + + + \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/font/locate-fa.ttf b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/font/locate-fa.ttf new file mode 100644 index 0000000000000000000000000000000000000000..ae6534b98e29832cc8021d447771955dced0e37c GIT binary patch literal 4772 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 z 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�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 DgjuED literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/fonts/fontawesome-webfont.eot b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/fonts/fontawesome-webfont.eot new file mode 100644 index 0000000000000000000000000000000000000000..6cfd56609567bc9db55186415c694d1d32808fc2 GIT binary patch literal 72449 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
U~M!&>g0b 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 literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/fonts/fontawesome-webfont.svg b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/fonts/fontawesome-webfont.svg new file mode 100644 index 000000000..a9f846950 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/fonts/fontawesome-webfont.svg @@ -0,0 +1,504 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/fonts/fontawesome-webfont.ttf b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/fonts/fontawesome-webfont.ttf new file mode 100644 index 0000000000000000000000000000000000000000..5cd6cff6d6f6cf438a882e366420dbcc5dddd3f1 GIT binary patch literal 141564 zcmd4434C1DbwB>@n|(CPn|(AINi&*Fn>F$*S}kcT?~-h6Z19RL8w|z^HeiEs2n>M` zFoZ3H5VDD+A<(ADdm~6m8d4=~NZNF0+VXcBlC;kLYe`Z&p=q(D=im3-H(D$Ull1rb z|2{u2Z{EA_zU7{K&beoQ0uuzmg^ga2R<7K%_J)>6wh96Zqcyy0`HGcdEzSt63&)Ww zHl{NVi6=U7yamUj*B;t^@)On(l? z_u>5B8+PA%1nrU_7=MXh^9={@xc-Sh8GIGTZwXBO_`bcnuQToIatWg0F`Vz%hX$u; zDdG6rIF9c-boBUd|HyS0j&Z%|(M{`Le2An=zU!fJpXazmc2*h-?VrIvGK3azwP$Dd#-== z-#6Zh^Mx~|Gq0WbmovXUqn>q~tvlOxw*Tz9vpdh;boQ>ZkDUGF*)N>^ z+S%96{>#~4|EF+)UXSkn{LI~ji|#I*k8?wQkP z&YTs_N@pWy+s_uxu0K0^_Q=`d*~iX~ot4i{oc-?E({%R>Ke=$-g=;Qsy|C%RvJ08h zRsZ^ne|`C1e)q%kKm5uY^-@@>k*cMj6p;LqPx4A0$t}4gy`+;wiAjRU))IVYXx zo#&iyJOA7HU(Vk-|I_)F^S935*nXrz3~&Gc(;o)hnVv94*g*g1{=rF_y8jpcn2bTQ zA!M;uzvIggO8?LPu-^zrSVFj4xJNk3Rtj$dlm9|^S@<>~ZdnoA8eJso zT5k+S1FhQI0e7Q#NL6d(ANX)=t&y~BYT2C&=Ek zTwRv!879}I<MXr_+& zye8&~X8c}bEZUIFb!4M1mb@n37%&tAjq#SL2UsDLOok?lv}J{<2U-j(12txIO(2Go zQ$jMA#6O)N9&e%d1DO~FykCp(tWXLFLW^8q9yinn%q?6i3EoQjEaC!wGb873nf26skSUf)3Tw= zf2gZj0elZg`x=yIPkR@oN|p& z^3aIvWg1GpEDxt;J;t>zEeoe)sVui-WJyv27}{WlMt21eQpq=9D7D@4uxmV=Y!33F zRX@877n#D)_$mv{iOO@4Z4G@}hoe57zCg3sf8+$59kuU%&lKEVxhb6n%?|$T2;`tH# zT~|o`@YP@n9-lg(4giaM;??St)w(+pmNo2KO-*X|8cV_-Qa`EMOm<(b?U%o_)%uJM z_7>Yyqv5vp+$cD}LQe)Z&V6uz=@JGVOH{G>uh2B_4SvWnYuE{P$7+^Qx4rVp!Y`D$ z=zUV^KdIZl^)2>U*3{4LQs1Y&A1Dv=P>&UTlRy(eOtTg|Qm~sXEwU>kr_yo^_}a+l z2>i9WJf5f)z`&xMMiXVF3G^5hfUsh>oNy^Fb9c8~?Un=GV66FEzky~lL%gNVKm-WB zDo7m>zhsP%?*phF-zs6;|t~<6jfBd0`bXRNVe?&M{MSR3WV{u|MX<KX25@y?GI(Ma<;5o`yrfLl9oS~m6w&}&t&A0v~u82 zaE>Te<`8g|OOf_M2K`);5@aoT3?n&v6Ym~pyV4e^3CN^@v$*FbF-uzN52nz z>!sUQm6A8d#D@(i!Zvt zAA0|tgGNsGZ-efO$q-)v-*v;#Qzy_`ImNfL`+DK`y~n75KldE*n;*|S@#l0?e#H2l z=kK29ts>uQJ+%GvMc$J(?{*8W6KZSIG)@f)B|CBRRze9m&Jk%z7HB2sAa)cqK1P!) z2eFlu2#}#YgSB4n$|y_uyw7Lj)$C%n&gS98{PQC@QOJ#qnkr%{{p2j38Kus5pS8!QBRF*@MQUK>n5?7Gh zGNtYUb?wgKszNvI7NWQcoC4A!t*9%BiG*D4lD;O=4e6uXCHuPNI%o)CPyHMXA?$;c z;^~$LUE@Nis+P_q+_I%xj<`y!t{Rul*BBO17<6DOy~Hc9TKj7m1XN;3Em&W%X-M`l z$dMN-6~p-jm5L8|?590;NYtlEik{iMRM*%)e5tCTMlQLK?lEs3+J$|y^U#*2NvObj z@f=uJpqK#^>j1@<40?|*+Oz=N+Wt@BM*7P%`~H1lBx0Z*`_zQp^9MkN!1!v%;>f-c{1b~`VuObwj+W*dBSWX| z*oW@8YTq5Fh9WmMw>Tn))USQ%<8;A^*I1Z^MZUmK(U$lOluxdM&XtAtkaRz8Yh5xD z4{*kHGKT0uT-YwRz#_4p!v;bO)@KP2A*o-JWgy5j@im(W6ZA(^x~8mb z&?MR!n$RdAfzcC~8zwm&+3q1(XlD8Q6 z{yEy8#uw-j*9$iZ?-S&;X?cHHzKLv0Og_vZv#%`gla%!sdmtkZmE~G&CFLNF^JV1- zaAzO1A;q&1IJ4fR_%`5o$UT1J{zEqrO&xS8b*s^ocPo*VKqqDYTJ-MSji#Gir0iOe9=H|#`H8;g7WnT}ktL8|(Sqq=dK)e?H#Z?~UpO-puD?Y}sD zEWEhs5sTAqyC-fkJ6F3y&OftDlI_bLZ)~;IQuCPK=D4`?2dz#=)msaf|$b?*92Dyn}r*M&k3c*%8C?C zEB-c3c6C6PqlL$U+1;0x>&X&Vs*e+4)Wb?hhB%0*6?9*Xy$xk~gQRT1-tMxzTjDmk zV7U}rM3)3TFe%;$3}}yIr7`f8sL(C1b}K7Zb$2UUHlTH|Ti)%Gmv+mG+_D4HA8iE7 z%`F+(wBtHVyf)$4D9tpOWj(8K%obKL`{Z3%UzoR!PQ$e0ihAaenJ0>=jT%k!+vk%X zXd}PUxsC+abY5H$g%bUgdKI>KKs<2m-QE3ba6Q%R^uywiS!I@V6mZEn3CDgH8M`&WFBl z70vx-yUuQ&8krig+3e>2e`Vr;IKYx2wRk~LpV`b{Y8fpsh&3YK; zdwUiPw*0RH)EfoXNXt}yMyfL7D?h5-13HnfIhCm$Seh((hr@C8V} z#m3Pv>k2n^HJ*b|Tr>#kXk*uupewTDR-5`QTkV(;Vsc|x{dRb?@q7^y^J={S*?LSZ z*4kLN&5HTrHc)Q&t`Y)5D{)b4nrxlTX~=`6a5Irgm_#_gHXLXWF!I7gYL}E+3@2GG z)h4M^Z4jN3lHx(5sjReNWVLq8r&Z@9%dg@|;=m&5eKfgBvxFm)U2xMWe;5Zwn}^|m zOLZ^ z{pWL!xE-e}$WCht`{LY=ue~O|iazMc`>Sq{0vqM?k3CvjGSIEoVR>FGEQ58p)J}L@ zpC#iOEW-n7*#R!JJguz2da5+GV_B#bXbtGhbu!`y4aC*`WF;b&9Rq6!kWm{u9Vs0( zG#E`fBkVp6m2Rm#n#r1E(q%&IS##XWHrl;Fc(?sIyBoh=JKN}uo7uCWwy6SIyl7F+ zporV4H1e=)c1Et{JKapEgz53cFx*Lyu-j~&AYHQ2Fx{+In7Ydm%)kf3$}TQO|I z+Ms6zYEUPLhPgA+2uTbU-$k5?j|n9=jUSR%S4P`4m*sp~hLUM5%X%o2{aAHR$qg`_ zOG*|f&{>u{C8Za8&T^^ONf^=#CanwrFB+;b-)2)&Gv-^)x)du`Pr1`ACxIANGeFtY zOrX@vF9CmMfH> zy%o|Kb31G{_3IW3Dzu8`N)j`ygkaJ-hn0}!x;D%~@***m z2w)&6GcXA^ULGbOP$=`vPcl|T+~o`PWmrj@l??z8tl%`yfzIWD@`TOC1}qkJLh^Xk zF(N=V%4Jp(dcaqFSTPb6kCPvIbVhSN1-aU10&|I{X?Y;SJp3RYO~weo2T~C(Jkdb3 zGYUVFE~;~|>R(&)AzdMqxBj|189Ikm?VD`LE>_sZmM|TAeQL?;Ojlq(?(Y*Ds~Z}s zr~bLGU#$a9i=l}LomI!qsFG;AWIafc7N)HS6+8y}n_>SIlqH{n2h;PC-eT1SNr#_1 z8S%?c28PywxgfU@$+?%AgGVCKdNC4-Or3VRBq?%P;7?`5V#4G0s1xoXw>n`l&-$|X zT9+jsbbA`?s?^X9Dik15KzGti8#zA2y0Vfd)?N+w9=yLUvQ-#dirG42c*th-5a=Py zYZH=6LZ*l{I7BF!*$j#O5MAnED$Rqm8wGc`+rs_^USkX!M?XrrNljdsceUG1b zZH_J!7ghUnV0i@WdtUn{GcL0xtaE2#U_Uq7M#$ANo1xukn3dxm+QVBQ1o z!x4cF7XWgV{@+4>+#;FtJUF=eeYd!-3&2?_s&A>|H(h^^C#mZ(F&kS87<#lz(edPi zT0dIr%(Pk1c7Aikj_N7TwVDzP4`$_DS-vhq`sSTkd3jkrnwggNid@=*`~*iaJPHc= zp8#~FYc>69&SO}??!l=*6KH1rmeGAjjuXvHuXnSsn(-P}+(McFG;PCbNRqm#8MZW~ zeg5$uY9wF4-UrjW&dx zP%MX19RwLz;2f>Y3fT~0D&-c$Y5vQiup_~F*VPzdW_E;`BP3>!VVV`V{yZvTf8u3k zR{#6uiLS<}37i+dJ+c3(r(g#bg+j&d;}SZBErJXI0k#{&l~hY|UF4KYZpCU?N4%*u zPlleZwCp@3L+TRfq@k>I<2}tzyr)joSd-gBWLsSa*~%bDCeC*~+^FR>&8%}t$OB}N zfG`m7XSu7FGcYnUw283>?piMl?;kGkIWI7w-q-WXFCX~IUCB(x-PdfihmzGb|MX1X zdv`pvWuJt4!=Y%Xu5lb~&9y#Z zNn)xP{tG;gWLP*Ll$MfY>CMV58v7mL6x0S|vZO4>?7)N3SC;#@2N&i*Il|q!DVzZv ztpyO4w?S=M-K_-sXyp3l7K~g;xzK0_JX)60RC3WAroia{6Q>AMOT`LIVx~q$fJtXZ zJ|{x`5PjZylH+G|&uNP>tTJNq{?jbSMp*9j{Y$)G_CL5~R;ONdTf_2N8SeX%`cHE0 z@`l@1&7Rxxp#RI>CF04CuwePbiL&~?KJwg?i=!J4L`XQ$^ytW{CAM9Ao@B<4e_TEH zL`wMC(RTVH>#J^C-d2s@nuMX|zNhaE z8xmY6x$tG+%qom|5h8UC2zv$j#x#6bOg^~aTgxelR&YcIl=91HH2F4+rZ*!mlax(p z-&-zi+Dq-5hR}XZMma>w{pgKg%63yr|EdN~K)?T>14LK-hzQWEbp#MUlvoZBoa<*q zc4)w93jWbRHq+zMDO(t1*QL6=LmM{^dAlG**zFJh@gF~Ix78%~rcCvww)lHao_tTd z4ZHm0KdS0K+Ci`jO#Z@P{`-`-*4goymp{|tto5cq*}dwN`kFe`Ye@cmJfOGht3%tF z#4=3U9;(J+AdWuU)w|W4diQn%k+wiGq`>WYIxMSIi16@$E5{JC(gOQl7QF7;LJ3`3 zO2O7#7Ir;zSy_|^o0eeE%X0coQwUiVgs`$wU5hhJBDGSFK)WnhwcMDY=)v}^?1LL1 zBRkV_a~AwiPC%9clSHHzBpvWc8@8HF+?$cHi2JdX6bokFo{@EB*@&&iRN@&5FTs5g zn+H8aiL~RX>9P`{Ads}Ag3IB>GQ(82%Rd{`48%jDAx^L?~iAbq~9ndQA#Nv=s3x zYFDV04mfun?RtK$SOkorf>mUjxpPs2HFEBJ^dkP|>q04qIVm`o=*>3C8w^L{jjion z0{jotp%Q=?z@-QH$X+KYX6#jAo+QPFJtvHL8n6LrfZ2<-01ROofGHwUQo?AfFU$3s zdjb##xZ`L`m5Edvu?Lf23!ef&p8!wR+-zCS@+qiT6uQvXTb6qzWeN5M%9T)!#jdQY z6aW7we*?H`pguBCe^>pk{$2GE{M|XQbAbNT5A52B!vRC_T#*^>K6lUm!2JBftqOXc#3seCd&fn|JnziyO`F6Ie z9jLrhUKpypm0Xv(=*8fJoBv`oyEH=xDAPIylVtgzx zX=33;+#tKmNZ3oK=ZrDlR>w{yXrRT*4sl}6(8Kk(1kVxwCYdMugcbhAJ23W5!gaz? zc>GHRl0^_7){~aEz-5q@;Xk@LO?IzVu$N zhbM&bW)?+<-)MH(J>F;vaRYYo?VbL-N{y=xy02ibq?Z4PnNUaj|GXKD;P{g<@7tZ#FeYm8Oi z8f)@E(%NXQYB0u+G+5dU_Lw1bENPBe%-)dMmWZaR{miJd92uIt?e-N;sb*z;NcVkz z%o*-pJ$YMU^MQ5C#6KdTldBLDGkc&l2E6`=0V~l(ajUSu*{0)GN$i6h3=5)WWao}H z_!VG=!1^5Z1@ysyFPch4J=N_ob(Oj*o~C1y!P3x$D0O>R!@2*$o;kvvSGPoQOmVldv#oea zns~GWqR0sja6DiQ*Om-~k5`rliYND!l@>6X8j4>vK*Wzh-mi^B!zAx}>d{Cpx&*Z9 z@tV5&5VcyO6lmgba+`%F=Yy~`;8XxZP6UcAr~e{pOI~BcQ~OV6J$v(_kl*Xco+gFu zTyg(XNI;tjGQZ)4U%&9euK|$#Pd%`B)vCo0Jhguk`%j5KnT;@?`fKX*g2wkXyjYE> z`K>}JMO;Rol~TdQLixY(OoHsQ;eQ-^&7K zpT%zIzmlo_p}pbWZ5`|I5>*`+LQuh}6!su!oe#n&lN z7HBIk3=6x3Cxy}mf?~Utnjs5id3#zez{{4FJGg8(M5Go32=}CA+bMYzK@gdeZIr0W zMpOl!EqD}qz zXUZ#&ed_rgt#a#r^(OXTX2zPAU3p?pw&%K|gPCDwHV+N5<4rXy26wILSrcZ(o%*2D zR+k8;eHnx9REybeG3ePw(ZfPLo8CK|+uYp~3C3Ri@O7WMenr^mH$0U2n{3VgP+Pzh z8aTRX<&C}J^UBaQ-Uz$mmciB~QJ3DDe?3PwG)BBnFJOMUg|k8lxj-!>#0exo6IMgc zXptSdDnVvLv5Me#-fA%*#O~xS`CD}5eH0j=!V-q+SHyJISmT@y}VLuy> zH^p$6;M*kMruepzwk33?M5dV0;c|D&=I#=jX%EwsMEn?>DcwS$%9t>jEwOkq)!0O9 zb>$CxrxV%=&eE9nJjhLPEW(~0{s%=u1QxPbIOTEmF2qv#HZj#n7GR(P#T=P1^F|R{ zivKX0KxaSzqBocEBk{1Eo!HNUed|1)=ojAG)4unEVS}UY(S+G%w1_o#xI{m^2F&%m z&R*40ReLmia(VXUyRH&b?%1G7%!yU8YI~JIcY|m#7%XBcV@)_c>1dDr$*CW0vh2C? zDyLgt)7q)?irnvjwdow@XSeWP;ll#_nB$4&MO!Jt2==c=8_`AMdmwK1Ezf{X`08Uj zgk$EWh~T?O{v&e>Jou%|TI!wYMU3Ct4DGI634(%Oe=p7-Eh~3}iq;~DNii%3nPgx! zUy9$o?iZ_qeS2;sS~}_)KX~ZGd$21gHUw2*ddR@gN%YV`M1%FKA5MDg5rZppkH6N($r&!^ITHiJ2hR4<3UH z5pT1h!}cu@Q2fz2OBm~_d=7K7-m4c4soLsVon&Y5Oq*&&*R`2-5ew5B4A#cy;|5*B zi2Bo|AP=2u>%pMM$V9!a>LbzPUQb;#)NDBHj;>!Hb$jpf_Tc~A1KkBEay6hj#til< z#*Um`U+d7fZnCUf!ORw&$e3Qgp>yZdi_c1jS4Vv6)zv51)LP=C|1;_fu47!D3DI9J%GTd+&dcn!T=)?L-m0Qcw<`1b*E8B=BOZ zt6=d8!T6HV>u}Vo_!YQw8!#sy_4>V#v0)KSRghyP;tYh_qk*}Y;jp?4eRX%OKiF(x zOk@iphRLEs&Kjm#U-gluwrAy~)6nV-9R^!XmF@O@V(9#zb@_B1 zttnr;J|>E>`nWIE+M)9;)Ce5n@cebw z0P~~#lOZFlmdViDd}|PBUrQD-^8IsstLJCWV_V>Rv|-P@%Pxj>`Eh9@(nj}g<08il zajfZZ+4+u_`RC`33t2Y?{;uS+rQie|KccKvoD%uL6t=Tt(`mUhbVi*W=A735m&P_b zQ8c#MDa6^MP6Bzw5Y%7amD?Cy!#y=Dx_1MCMH7?;!56u?u_TdxZ6pX!CN;!}-p{`N#8dd_L{I z+cAQYNMC=~4TJO1P@t~oc;9#5kIdYYeehj&&%axTId|Z(+L!o>J7zf{xI`<5J>0^} z$sVooMvBqqQP;}a9G1Ljg#734#u?odq%y6cQn=$h4l^IR9=nkb_3Z*dYIYw2OT@zc zat@1nTHFl(9Pe?S_nzIKg_(X9Bx-$_F4qG3v8VnQzlt`0AY5wazy*32=dJVLQXO0f zF5HGl!8#Q);rwy`VQ_KKZ~zAlBC}8ufn&3QFm%~_aeAJ zC*t@bz~b%_O0^KS$PY~(<{5VyEgCe_JdA{!ph%t}qr?lhixaoMz&_-zvDs58IChcoE6YV$sz6$R*JFPh*i~eOF&JCM&J~Z09XT=<(Nj9<;CY@} zN`3T%f%fxb6TF`~susjE)bWV6rX!yGO~U~|q6&7V1bj{<6N$NCoO+21xkxL4g$Zs9 zc+ufUR!jyA&5A)8OxUqtBtDl#m-S^kQ>IQYOd@2PhDHvjDml)fKKKy#f^e#_$qDsz z@xb;sxBs!s1UXvZIcU?Rk_}v^-(b9X>rG)xCYLpbZ`yjZafAB0x`;S*<^8(!=5w zCZSLi9)F+ZGY@_5nmQDPy5@Tiea3S4ldq#|>n4hvh=U(QI|Gsw=!~|oXl0!-{x@j2 z89vhvp&yau@2yypF%Vdi+Yv<%WY8vI4Id%Ap+1T1qjZMOYYsQ0^bTRTVMNxyazU~6Jg9AlBG(TUNnqfZ~5h`88JSHz`$ntgEx(j1=-hj*}u4otAxB)M=GBMN0` zx4FxXn@GN|feUU1ha6K+(@k)XZ_nIAOz#Ne7VE=1G~D4a&dspMe!K!*#96+ z1NYO&OogqSTM|QvNTH-1A%p}t*@NJFtJHJ8mvQTkS@pw*pWW zyeT*sWG3+g__-+V?GzaT1i>ptSY^nl5)X$DwJaC@Us3#BkKUSmMFdApR&B*QO(@ zDOL*M4_N0bNXY$6WN;%f4lzoo)&z506p{`OJcu96A*BWiE#IXL>P4U)MUHko7w9y? zBygH`X@k>9z@c67dfw^x?hny*?$bC7wRN|a*SCQKUc)GJrc!UpR|yaExyaMXg&WGh zsYKNA!WMdq_^Kxq@=Wzu^t_>#(ji!1od9|KP-|7?~$z zppkMIpwt~8K@-Er{*F)Lu)ouAx8XiWY61%u!|f$Rab>Iztmj zGzSkR_>)tp<8^9iMZj`^_@&Bgz(+eXffqk-*3dKe36*;qaZkXx0tc$?H4P3b8^w&t z5a3C$1yliFf;epnLN*+mtHf9N4k!fewvhO$)j~U!cfJ_c>Q2dy3>fDeT*K2U52YV6 z4QPI2R9e!Wf5~f@4IJ6|MthlecqP2sa|B8apyG4di_Lk%$~$uTcZLoFkkR2PD$k+A z$~!LbavE^vzt0@tEbszEhtM++i;99-n9mx)JEP4rs7WL*f)G3B;f*^9K0ure3j?wU zXD1bY0?bVX?avhoj3d+q+Ojuh=M7JM=E5`j=L|o`^EA5R;t>R;O63Rkj7R)AZuA@` z`d6aIgB?t2NPG_W{(0r-S5v>zdWb*Q_{lch^Lp)`bL&cIsx!PC+dLxfrd>^UnF`VM zM5Xv!c^EaJ-SZsDM-@D;!b&{I<$jo(P+^LY9jOzL`?ZXG5~?BhFUCqy3(x5|Wr6UO zBITu(Vj+>=L-md-MUs%ws1;H|{-#z<30YkbaptK5w@}s=pWbPx@&f|yd>w)PCY0nr zzx0Z^{G$rkXk1W@XU0{@Zo%*r&qd>MTA|&Tpl2z13KM5Wk|*YBG<E zsR?;rddU;2!7lAw+H%Q2*S~Y$nX50Jub8l58U{7fl6VBOh78-8S@Ubyh{P$yf6=T( zFm@OMYDo&Lag~hBkG=UI08v-eeGD54KXg3|dLAmax!HaisaWrJZwJAs`+kh=_Dd5? z>tV8a%0vBX!fwDtz46BYj9Y*&e1^6j$qZvkqI|A=OV>+wdgZV`9ix(|keZHU1b$nR`OG%M1vP;Hlz1dkoaE8( z6VzOZAF9|QnuVSUR|56I=8t@VP7Q9o)7SvG**M&6WX)>HP{1fEPa`Cd@oln&=}BDI|CUPS143WoRN(buXQs>59uLw}>S}k0#!HmNTqp z-%LD8i~PI>wlVVTLEhouvyns8;n4gBk^Cg@aCzl^$#=YX=580`M?mPkBzF-JciQ{Q~2%PO}anP4uTq1^uYxtv%<=EH-s_GjTi#@)H_pgKbr zv&^~h5V?w64|BFA&TvidG5`pAt_R;lP9(P1gF9{`Ui!vmhplemUFjNrF|I)k(79uM zKjgR|YKLO1cAiLpyj2Qpi1D#%7F6WrL0_QQbA?ugmkc($-dnAW6}4(#LKueN(b7L= zYSKztnIJ@+1b70Y2MYxSZlz9?!8f~DEzjur2}%R~qM6HvHiPNyHcOhKcF-fJ#j3(e!)h zkzgjf@E)2kMyp@O%}te9ZY-U6LwGQj=EMp0`*>_JmrsfhAy)fXDwj>+wOC@RkXtGW zcrc992jgg(Iu`5fK#xRX7;nWA!vv2!*2!T*0nwr%XnH8hi|iyAaH*;=S#=Nv3i-SO z53Jo}mM0U}Y+5&P5U)c|r@PZT3@53=*Bi5g9!`q+1z&IW^?_jYE-&F-ioh*;7vPim z6w*~V7P-uL7gX?|cY)|cz?e~?=nzv?femISpBy5iKTD3}Py~u4X-84NC`WHZ^Ey1Uufx9(>jB6*#6p$$p#w)&2% zj*ac@TyBh6oL-kD1VIbFvAMEd06GWPgaNu4b^^{?F~xNf-<{FrF~iz4=RA+G5wOx* ztXB2K$M7sl71r6UY=jOfS;CL0FH)BR&pW36=pN$z5v8m<6ym*S@{Fms^%nka_6r|0 z{MK+Qd<}RvXjlur1I_zF@4WC!i2nu%F7VEt1>ZvavjyLo>&}&&s~GY(N@4PLA(-0F zg9RL!l0G_%36PahHwjVZa3t6>rC>dsqEbkudY%_cg_J5~2Q>PgLFAeEmYG~qkT_M7 z>7rVejE8-zqx^vC(1=uq@sd{FpXM4oMidN19obQQ7u!)P=9BrZ-mXSH?uZKIh04wO zqq_LL$WBG}lRS7ouQZf~cFH5^y%|bQ0cE0?&>~1N0}zG+hM7SnIuIt0+HiKrMNY^= zsl?3a3`P_fI#koftm^ODYC?t34cOIa*4lOhj%(V~-!W_Dl=?e<3SDuE?Y$xN%rm&) zCY=2!%kq-0<&WZun{ayej9R8MEX&Vayk6JBqt(v!0@Q9sNId+sA&n2WrFlN4A~jD7 z_@RXad{&WHJ3YA+iSDrfUtW}FpGMXAFFQQUZM8an;ILXHFZ|kWH#Xk+i?TjA^&zX% zX%!FIjApZOGHv&I9A9&Iymp#f9xsMI4vhnA&h0*oJ*p7HT=?MZk9Gv)^<)SD}(C%p88&#r6_uG zmXG%bQiiHOE6 z-nPE$+4}QuRoB#1cd^$eCe&7)w`+Y@J?ER1xRh?J2dE;6?=7^DBg=zjdwp8Ao|1dY zC2J2s$4U_FAwM`lzegf1QjYMlfJzVi;Jo;QyxOI>Q&5y6ZWQMfl%d7YnXIYSKEO-% zxKJ3FmI}mGLI6TEChbt_LBE~?DJfi6&^%4h9~}s6hwjj(qng(lp4Eh)cn&Q+;&}Uq z`op4S^GCjRsPo0~(uY&ll(!)jObtXNZ=3q&_fMUE@}%>LfRt|OudQqLx1M|G-$ zzM7rh2bt+hq)&Wa{lQO8cTmRuxx5wR1oh6m9rd$Ebj{A-#ckMZ? ze&f)=v|*?)Qt*dr^$w$*t;5O`-08VYZouz`tcp}1Ri{UcKdqIiK%0JU;1UxSUokp*#o|F7+xGB-+d8$Q zWqR#si~<^X{DW?E-F??=T)ldGcIW#TYua@5p3m=@ZW%3BTJWBb?P<>S#6P2`QMI~a zxkStWj9Bm^AiRU*UXT@Ry$xlm$)q%p=oZ0*CQxvTi@83DrZnvuuda&(I5ohd(;-9z z3Wqh~H`VD!87?G+K!U*`T#H77<_d>g!>7^ceVBa@>Ga=w*z0{*O-=nqO+9?@{p@k} zI(z*6PyeiszR94z-S;!9R2DvQwKp90zIR-#TORuv^Q-^Hpk8{A4l>4wNob(~0Fowif(kl;=$&o@eii}~I19nCld?Q0 zqTQ(1kyvQ-ew4k+>|3{YSlxzDye_Jf*p2Fr{fn(`+X<=l(X(3)evawaZQe5vf~fIK1?q zA6%iT$38ePao}PIPyXe7?q7d({MI9d(yoS;4TTM#{~FfB-z`c#^fN*=ogiV2Jp;OM zVFt1l-v?56VG4%V98MV05oQR4YM}A_PAX{$?un$tcU_Mpo#0xsa*0bP#1gLFhI2wg zuPdR`&8$lHsvlI@tv*@*wI&X zT3(r~Vn4Lob|ab(HJJitNvbN^4WAktDYWJ$MxLEo?Qx76na<88)v0f|9HSPoYVs8m zaUx!?8L*$u+a7?&cNOxWt`IizdYK21X?Uyf6M@7&R2D0Y>?31PDqR{}x1Y>Kjpfqv z^#`e~C0$y1k8Lq$+PCcl6;i=w-Ch8 z*oqD)wQ0b@F@Q>V5-(!dv!Ze*0gF-EoRNbWpZARa~v489~S5|Kq{r8pOvZk!aR_a^AX z{L`9D3BGAKjl8T8aLk(pvXkDxC9tbtSmwFso!64S*vYkoZIBNjIwZ4lKa%M(rJ;Um z9%?|3ejW+aUrie2EotRevP$SX!A95a+(l;fA=kJ)z3d9&nf>lkZ5>5i%mf-!Vh&Q6 zvovFKf>U5#j6z5NKXhB%sO`nh%b1uklEur?zKJhrb}(j1Jm)iy2b z+kDOOQaJ)91#Pto7Grv%{@87Jt!OIhcQSWPjJT+(>3H*E2TZ zaMvvvXzM>Txb67*tFuuYqc|SLf=(bncH*LQZrvj|{i7W(E$Up|RO_C);+hxv-n?rV z)0rHBhPFNdf54w8mIKRN64}Egcx_ww`VEKMj9VE|nut+^S3_~cHC?@*L7380sZ4Mv zqXCObGL=tuBuO4KbSA||&aja$y~RF$=8SsXTPufORnIM6>Z;M}49qIpL{q!3DOgwa ziI>FU`+oKLy?>&9PyHkHdw*j7;xdOBnP*Hd>76=wcL z8vEs3K7< z{Eje0(>CjL_%0F|pex5z5>%Y7D=-~qdZ}NZYTcxlT-ny#cIA>ZG=Cg^Q+-xltv>rr z?Fgm;w9$7>=$v-MtxN z&n3%%W;`J?FcuB6K*9G){@nS_+tYcE_%nE7Ydm?+XW=N~{@Ksc{Vtp~KBs$A^ABS= zn)~em3Ypo)J;IkbZpAnGeKeo(XK_>98BZYm;<1vZqP~cT*kR!#LJ1$$Y@zajYJ2gRl#fhMc75#p-=n94qc~mt~1rM9vij+++8)IWh z_LbQ~brkA|ODzThjCW^6+k|DBPQcVr2_Oq!#4Z8ShTM~-q}UGlX<*9adObz=!Y{Fi z)5l_7*q(|Op=5h)Mj`LSVq}}XWT^^zLsZsMP(sK+9{-h8} z`V*q^w;{F-QLU&YlIK7A=W%=H(%BBFvw^mUU_|z8SmS{3Onu-$9CLz-;VRxJFT0b-N=1A zrf`H{K@F!j8;bZwM>Dhnt=0mV3gR@8?qcCZXD#4J3}O#e_JQ}0qFpIt_o62vd<|)$ z%#=%_P!l9qdKE2tdd_=9cHB2PvGcV)^@|3!rk<^D`PiVo(2%cJW$c}wXvojL-`K9z z>QSTK^+)wF_HcF;YNEu{qxj`;C?IHU0<5$iSiz&0^rukDNVDG-d{|s%2_`$ucuRTe z2na)fu;SB02e;Y7^d$^PtR1vWUJ`RR8(~)f=K}xY(QdS<999D8Fi}**fllz4y5uAs z;Urr4T(N>l&`t1nq_UW1lqKL1h1IoqBS-}(I|)MP5rsDJjY?93Vy42rKqwbpa&B-S zNORVnj1?c`Jrnr1;ERaYPlxr-b^-0TwAm7mMQ<^A%e()i|6_3f7MyBZ%>5{|; zRDnW0sG0wl$$Sus$Q0oJBJY&;KsBSN8V6N{(hHNE4k~N1Qz!`AxiuA~MPTZMIvh99 z(BlI{1xvXT48naIM0~9@6UuK50=u$^BR~xaIp})HUDwdwH$Y6;>{i0ii3KH2^+l+{ z#QcFK{P2RI`dg|4x$g8IMlh;s07aO7lJFTL=^e5OlwSNGUX~}WOd@`p2~U3E$X`9Y zcQG4i?pnIMdg+S39h=`{xaY@L)NW7buUk{=w}*TOmLGjQG&XzD3;(%u)$Jd9VUydk zs8DTbT${8HzGri-$8>aert6kIRxJ)6bC~r5SF&wDW8yg#xWuW#B6zMXOBJXP`6h8I zBx2?(HD41P1z>6ogEvcx9kYw?>G7aKQg8ifB?&0;FXz>vUODAANYz|gnF|t1D({Su z_|lmtNYtXnAm*KNd9*Q1e5dZ;x|ZKJy6J&GI(>TT^zARq8JjqI`q7Ra_IH+NAAj!j z)YuDT-XRM*VE~UR&@(Q#-fCBTU1g8A;HM|K>#D!XSMOi36<#cAxaO{ zo|mel$)+~?%%$AwLJ5HeUhRq7RL5hfR;tA;FL8~>>sz!k%+r-(XJ~_~T;KsFR4>j) z1<4=jkdiZ{S9J4?OT%!8Qj)|uY>P(W90-5%uL@Il7J2nFq4L?m-TZSE9qzEZtC8%j zgFCgNl;`=ipqATC77N9xPpIGc5nZABd2$OAsc&N!F55}?g7xIWYU76h@5RurcM4=f zLoPs?=K`eZ<3|OJVW4C#KnXem5upGN1>;ch-2NL?V0~6c8Ji0#yVg z)C+mhWD)!nt3!@9H)MCd%yiBaP=xgmWCH)1iC1j_;gIbi$*X*U%0O-O-49M$v4*d) z%-Cnj_p)n8b!`oiJubV|xPH^t?maF`s-Z&8#KH2L?CS8>c-}EVewP&Q02p_wt84F*3`bN%3?Fu-DcY6b{uRAI;|hI z`nHvdv0a*aG=W43y+^U^8pSBzH0JnVjM7`=>E2{ zQ=xI8SXL^Z)v(AM!O z6W}A92jo6!V-$TD2jzg&d07h+XQwLa^ekBIwv>YindN8fvY;GU-*xzp;amEr~zQbVaXboJUY@n`Pb zcC~s|Cp`4a2Os>U`tQGdP}Y7fa~!&Iwj1Icyr zI@*Q6k4lo1cU4_h4&#UF^OgT&msX$8D#^A9Ww-uqdDnz&mBy>AHdGSYEsc-v-i3-m zIGn8*R6-ld1qm-%t8BYQcWZ@#*hNSD1Kl0SrbE3oWqUVf+~90k#C2E?eaTLVp-`7R z(yi128&Kg-P!3V2npo$`O@tN(mt0MsCzG%5mUp_wO`h%a38`txir6I?%BVUCn3uLb zaGpkd&4}+t0}n_i=^)+%CWKf%;0T#GfioyRnHd}N^1i1RTawVMKmWn_HKTw2o}+&CG?rOX<8p6A?1|cRpxy9~_uesKsEfJt zUT36bT}B-nEsTbOi6(!iK3UxwZ%RoKh@$!7;Jw57>O1ahPAoln?3!zzzG3T7G`@D3 z&%bx=L(eX1X&io(?wTwbO-{2*T=Th5owQ~sl37vR=VCiz*|k02>D{w4bldw|0?Q4V zNIn+V;$*SdU_H(t+Vcp5KO8dc5RdoVz&%_j1bQSbck}wM*Tc~Xe7c#-xTt^tH!&HZ zkDv=TGehz#t>xhkYu5vxP=<6TPH#pv>9V|s@CbpVJ0*D=?fS~&n_N5LTLwnmqG8n6 z2Y!1DFSZk$k78QzxHOvugBcvEvDFlv=FzIxRfU=+4tqfE>P7LrR zE|0j_X~aqa?>L%KP=UkH!hly1|Iy;tZanhvpRy&oq-F8b`{edm?EX#JR6}D`(9_<# zH?IDA7O|vMQ@pi0sqgeRC4wQK6C1@h<|9sT-W{tm?Actr_aBk}ldetJBced4)!5ql z$p;N<_xgRy*2belTW@&!+G}oGzG7)2x@Y6nzRcQtgTtbRUQ3d~ZDKn*V+A zx&^)`e(sx>d_P>1)x)r~=LPyWPGgqp4BMd}qns$192gb8{6sYkk<@}O<0vtFVqsio z_wr97kw{2{f615BJH7PfQG{dbxS<^JSJ=^A=KJc!KNnYs%fH&PY;?!I<9k;J-Tm(1 z>b=MJ?HFCwa+z#*EZZ--9 zL|2xQ#NDA9^}~2oF7@+Is`dB461a#v3>IZTV?1A$tDP7<;`X3v3d$n#wdS#Q&ZHFs z5&ei0psWx6CF~xND&}cTRIeVUA#7$12uK+rm5M%DgsMwUe6@(&CM*JPyvu0SSK6Rr zB2s`&z_1}kU}QZ_S%d|oi$th;0;&i^d?EYJ!6|rjM7^oX%#UASFym1lSRLpJ+TbP; zjF!i>%;?!vML92=g_G%akW)hbM%65-x=xt@3lED&(Y8?=gdD5DEd;6tlW z!cfGMa%Z5CK@o$AhqO0T)}j<{SQZeqgpb?+RMjC+bp%yo1Ne=)mBktS!upralF(6) zF7o1;1w;#4p%tRyZq2u`2BRnIiZKNBaiJU~K`FSs!IaI%{L_jlY2^R9s+;w$W-E`b zas1*J?D}7roJ(4d{^E(_53CV?p_`+qzM%VIcEyTpZu#=bg7~GWA$DKV9b5bf^@Hq@ zXFhps?;zpI1wmf~-)?}udY3@nVFaV;%8HZ#m?Am?QzQ&9>C=j{1puPDp8y%h5_1&`M(!Od> z=;PwSJuvD)yK<4v1&cDinF9uv(g9SONDrU@0Y7mq`P{URbYA-jm^U|OMVAfr+D6oa zz>6{HiulJ0@A;-EXy5--g>SwGR$}Bn)v%u>*$L7qwL}2I8BRAQQkhby>abfVC5Udk z2;Wc8$h-sv1S*pm3d$t_fREO@D51RIg7Llb;d-h}Np932qLp84Y+BT|ggAfHCARZ`9i>=G7NLZE-fubqoI;r>fC&lA>|}^v#bYW3&=p-(iKzsDu)Yh3v*A2t3Bd-$ zfyn3Sh}OcqSXLR9nk;|?Q&!{@%IIo5WljLAw&q>RF9axxw2JY>j%JZmZn(*~rFS~Q zE4L84(A`BWhH-Gf+dGHFFbw*I+f_JTD+Ts1VH)ZuIg1g&pXRU_Uc&|ary?^Go%AA? zWsUFws>(>V7?fhchnQE*#BcJiFKdy!aLocqmcZI0DfliH)|65$FTq&rfYT)g?|Ui3 zKNXunwl_Y0LB4ZMat8k$1`cJGfTwh#_Jgt#tB(?d>>wzE|C_ou4Q#7C(}vG;j`n?* zC2x{tOR{BKwq#k}qjD^Blk}ot4oE;yZcricUUf>lO12#*Igb?)g7C4T`pEwGr%i;)yoF5PZ-WWYxmt8eLAw)ViDLs#E$ z-Ho?oPu_DsYEzJJA41)(IJN3-8nZXs&pNZ$-+A(0+8K3Zj4kf2{^h&&9XxVP8xF}e z+w6{)%S%Jy`bILr7WD#U++x0JBxcJ91!qNCBVoW(5T(`#@3|K?p$Z9Jb58iu$l{pw zD;P0Ag=0Vz2S6jzD!HoM2r z(!O=a;@VX;4P^%-;VZs#g)MbWd40{Q+RTov?NPnEsdus0+39k*Z5k5{A~A!(+_S8Y zsNOxE^H`IulEEOUb%tt-2hu&ScW*Oy*Xd)h4N|%{CCmbgOJOQJk~# zh&s3ZKXx=|N?KRlx&FrWTaW3ZB_)2pG0>ntwiO5NSlwEpsqQlvVzq&&O43^_;ACv` zdc$!uNHxQENFJ~BJaecewN|TEJ2ZNuT5B*a_N%pKlh&m-8Flzy>rttVCJh5Ag;9hj z4D>pfrZ}$>{8z*^6Gs+{Md(>dZd3U5U~qNWh)I1J7I8{7YVQqj`}ZMhYbvKN|v>7;6+#9Qi&z4FaF z{>_iG#t9$o0*W-Ta&QHdHtfz(+Hj1NwwFs+cuRZ=p+7V?b{6|HyIgG>ZUyhDRbN-# zxp;&)qCxZz>GqsMXh^nKEam7ylRYgd=bbWdG)yqpZd81#bi;mTL zH`bSXDytiQz+Cs#-&8^&wr4fRftho#q}&ol|%e0q+*h% z+CpsP*kqtwqR1+;fY3P)H-zIA@wSSdDnM0jR3+OIzKx|8ts`U%2dq-LrM<7+pmnps zZ`~tSSxWVewnUf9QeLO>wJ&il(MT?%d(ZZ5rO8a?YW>ckZ2mu1HHD-KqeH7|*tUI- z+vo!2m2*kEPgPfLadjoy9QsmAm3Ys$2ANxHz`ZTyk~I)Eh8$W;=|*3oEva=FE2L1< zDrV0P?bNTX%p?_Ak8_k0HwALW0u4`QtfHS0VldWj#m`vqA42Sh|8PE{WxoFq^Dmb* zh#v_UG$Kq=1T97KQiQYTPZTA#?Y+v_d#sTEAOt2I3Ru!ijfXTe?Sx7oS~@VuU{1jk zDS9bsAcc&?Z3SK^MLY6(dc{6+VqHy^H z3X9p9_3QHoRX;{o;d2MK{aAtY9p-u#41R04WVnW-*4DI;PZJQ|nM#F^4l~JkSWhn* zCKL)GeZ!z0%Pqm!Tmv`?hndXv+0kr?6x}eQ3Em1dh8qRFBLf7o_5!+2_7NhUCIq{J zcc)D?v?mLZS)n~p`Dhy^sMThzL+oPh&uE$)wZ3Xw`=f4;C@oE;)MXxnqod8Hb(%cV zt_RbiS);9Ot~IzMsl;FEH5i*xjs0_0x#y)(TeYv&(WH4M|L0wzLu*#6`x{eDMztmXYr7$8j(2p(Md z>V_+ZLzF!#NNZSA;5#X}Z!zZp$*l?n>O--2atHpXGFTR?JNjtqeB$l=-+Vd$|30ibE#A6AZS=~=Rbi?AfssusKRsaxSKsy8UU&Po ziwx171D3Ko^3(r*?g*ai$`7*A|AIc`5;6iJ(Q-D*dH|p7xWI$81pu_k4zGcb4?V#7 zc1}!Cq6`EpIk+_#@&aP}`M7a%k|8`lfDmxD2Bi?3>{kjOeE-Eq*F3qQi`7K(`Pao0 zEc)YDrcC+&UbgJD{12z~;%|BV2p>Gl``22^+l`?~D%c3`OaMb6Q)7Wi0Cr`$7UMzg z0-Q1Dv7b{(W?MWBLljN-ssMyLe`z&E$|^oRWUdBM9zeW5Tu_5_CKTgl^FR4TsqYUJ zx%{QSKmcg=4aW0hzi}ad^^m&6@wb1t1hrRkl&FW;!`yC${zbY=jj*>6-GiVWKS*Ub z_{Ph}pqD2#f=gQcHtUSs49FqF*FtAu>ja>r_%N$|_Rjot$!V z7P7+=F_P#*!YpZX)bg~R79<}^VWQ;e2qQ)-3>Vrci8_>*ag--y{3_Gt-}`EjAcT^8 zOcs(e(zwBZnZcF#3V7=cv#1hGn6T<0yrLF~8aalm&~p_2Cd}=q0o&ZXRy5I#Cq6fpU^kcdJS5 zsq7@BQ36}0T#k$g2$~qTR)SUyi548WS`36Pp!f(~hB=emznEx{kAx>&CI^Oq`IP%$ zJCT|dXNZ`NS~C(Bg=(B5NAuWGx81KEW7Ws5Ib{}|j`CB!YSEMb+RuGKm%}fCit`^{ z`P$oN(BhXp=&xa>afDXi`U77`xmNt@sd9(ieCnEG`JaxJx!ghD&)I-StQPGL!hU0Z z`)jY{gZcMMU9OPt2kcH(K5k~P%b@KG_6Rq6wIby|Uub(@QMiZKzav4R$YHSIfI=+} zKVi{!Lr4*Yo+E|q=r-bDDdessL!Xr!aY#n(`nzAINk+|u8!fr`q%1*3RZYI~&5&|f zor~Z&d<-TWH%jTf8;=V%YPD+>FKjXXaEU!E7p5 z*s@xJn);O5gonnE04$XpgtCvKmH~ilwx89y)Sf_`CSuIJ+-MQtCN9O$2Te$*v0$;Y zFbI+sM0PZ)T8Yu3MgTLL&i3gYgF@AR~Gdh<&8D z373ndh^P$_u2I2bAS$^3Vh?+dK&1PY1?B6Q5W`c~M_fN~^8jx>-U^hvRt%BL6b6S8AiG21Ag zT9{5~LW-021l5ARBZ&8CK2*k}t#q9_RaQ5r6q~3kyYx`4!Blzgy%k17?d;9xmx-E04?Tc!wv5t;6dx1$ zL-z~s6!O)@fKj5p1jRbVrzTjq_H$4BdcH(mLH>3|*-{}X&w55t99b0MlYx_dq9odj zzN6T>kR*8v4+h_|9$l^1mRm|H_)wCjJmew+6axCUd=O)i+?H|^0lc?>B=RM7%pK2A zuPL$T{OCx%IJ;~G&aR>0+fWttGX!-xCZg@V%c$ItJ-33V!dt^V;nK@4(|d?TS-;ptI-` z&t&Gh!v|ZEL$3DJNUX2>-gBuiS+$;H%Pym!R$BV@Gg22;Y?;H{8Sd7&c)iKqH*l;{p@%Q~#Wr09w zaaXil1h!^b)KbEn4v$;6bThic^kiaKtzao6w(s$-{+sR!WqQ`S(<>x&3cFLkGBpj~ zcIUto_o)Z>dfe?jkMD08obgka1lF(3WW;PqqAn;&8gWg=1N%oX?CtK0jilOLL(|W4 zW82Ky0#6EX5~G+Gek6?Vr#^wk1$WDC4z+=Jx1Ialwr@t`BEBA$Gc2o1s1v|Kfr)~A zaLN<`5eL9VitpPzmD>!DwJ}D)U_Hvv$I4>1kt~?olb|35i0}Ol+0$QWhLi({bGXAD z%0bFn?gPbT=pg78#qO}c80D>W=}68N$EBFP?9e4xI{+_Y_OjCn;U?zKJ#%J|z~!cy zX*jZR@1jgW?Vd!dA4R(pH+TkcD2|drnveiB?=YfD;*c-K(_B}`IjJvGB}2uY%A13l*%}h1o-xT`7ti8+#`BLHQgw+JXB-u5frOYsW z5k({b%cPB#0mnYe*BJ%Me_>`k2Us7Ohgcy&2Z_ZLrVXg4Y1$)}L~YSn@p}HL{Pz4) z4UVnsAUq0N9gf%7Z+Lv2;WZ~15?jHCxOG04h&Y6j`7_{B#QE0{r{WL42H*uQMq#ce zKx&4aVfMYeQ-tN8eJ_QFbnbg0Msh;Z8&tfv1-+MhFJL5+L9GUF=RuMO{yumi#O>h- zY2WkSD*+$JZwfEM4&njnv6a`%8y4mvExZYpMnTj{@hwRwSg6hLZVR*-VTKBA7P_>} z=-mXwF5yk*F|+ZvS_CRALI+|Pc$Ef>K)S^%vU%^;SbVTcs-GS@f969iHaz>%3slL1 z?}feyoq4v+lvRX`BZc?!Uh-a5zoRdDA-SV3^3F)Ff|(rF15D-o#Xj_2AFli2D}Ly` z26+cX8!gy(fJd^>F zyEf8r;KJAu0pd%m;jWJmC7d7!2+!I|mT256t(+qhtp}!QO$50@TQQUIYZ2~Cxm_XY zB4b4uGa5~6bcWVDew2AQAV1{6bEV-{@(}+-g^1aZp0fvB2COB83l!XGB#{PNOQ@AD z#jo)%1hn>mHmNm42k^74^c{x%TT3Y}Tj{SiOzxaTj2;I;bQ+SlxXGOC=V3e(3ez>X zI>}Grg+a1GavGgN9!G$^FzjFfLMi%BrLkhuQ{i{%ci{K*AkQ@~q49<-FvGJ*72UEG zTeuB5i}?Ff?MFQ10mq&2aM**cz;EKkYg09$h=_|d%!PWzdEA7a3+W}1+5=%rjqu3f z!NPb9i;A{Tqo_A1jFftEJ|V12t5%7UL9bykrwIB68v?uGU}mCZH=BbRQF546Dw9t1 z0({LRAM)g?G@{>1GNY)&Rg%F17a-Clco4!Zie{5bQkUusCcD~Nrmc30YNJ+E`_(9j ze7KcxUnB3IUPKaam#FrrC9??lH`8lGBfJ5OVA)k#vy<@NCM2;`A<-mAbF?vyRjVd{ zwofhTB(2&Y8g*Kvi^U(S)?i>3yUMN6BKfzL>ERq#>rGmXx>C}LlFB36CCOnn*d&u) zvWr%a-7i`-q8dM8vxKYcq8FYFNi-Rm20RxAq!$;hcqU1$!ObKMgjdNZS#1W59>2@1 zE=kvdZ!I&IsU$!7;zg!WBYUP(rPX^i>S|vQ?_iQdNzY7LDP&cf!71%jTO_?nua-k_r1%4*TsG>?c0@%4u#r{n;pU2l^_gUSe4J04wRZmZg)NAg_}y-O`w^%j*`#JeEs zS|w?nr6SM?^Jft0lUl}X8ja4#%IqpMn*}Y&0udE6HAqqvN!N{fjXI>!l<6@jG!o+M zU3ET{+O3lCpjx-hBWg-r23<86$utHL^{zrUs!}<1%pv&CISYbx4T7K;x<{ z1|TI6$$^x(dY$BO>X}-na@zFxC8J~$;U3m$k-%1G!!I+V3ZMx5EFum>gGOy=G!ozH43?32Ht}l_)MoR6hHW+XLUIfTYjS92^8kJrrs`V-)^_4UhWL+}j z_Byu)=`7K=)gG%)t<#&4nwVLvNUK4OYBi~>>Jp3r12}G&13#e03whD!e9Wq|Fq0L1 zU8_e9duC7}+op&Nu4LrVPf^;5%kQWRonC`Nux1Q12DGw!dEqh>d&CU zAj+7i+I47V8Z{DX3f)Wu<&mWJY0#66qFzz~prV!x33H|0XZ5JGrL>kyg8Kuv<~GPF zX7Jg?k>?vQKImX@N8&8}luca72FBc~q}8IRR4+_-0*^-(f)(&;!K5c!;cG(Z81ih% zk^?$%(2>)SeKQHb9;P6YcOi8Z@&CwL4poQW8>QDV}22Fm15H zSY>?v{2^)UQkON-ch|F|Y!tZ0$j2Rr=8*<^4fzQ!iFW{S-6kXS{8#gpL5-9(q{e+v;JuKty~&aYovfDZ!UiMkIAo54 z<^++MG=L(~NNERdd@q0n!H0*oAkURJ2JtWh!iBNzz3+3-0s|8sdEprFeHXH#kf&hh zF?N28Dtjy+0E9ujgJpZSkC6=+m*ul!0I|+g-Kg&(wr?q_9B^isc=Zq;cw`^97oobX zI7G{S!CIskcPRxG^hL!+Ko(x&a>6NCt)r2OhuE(ClMgxlCR3D9Ow>3y#CAPIfGFbJ zlB;x+y@GY8^H+1&(s@FWd@2<5+mGDV~y#!j9?CCc2uDTVCUh)#aZWUUM_r zmN?WN(i}zHYz^Xz4+vinC_)>?df-y|!jOwmEyEv#I#*)|ALME~tnOhY&KONrP9>JX zA7+!+V(_}Aqe9{HK1&t9SjaYZ;(Ps6z5PjI17uGtZmp*IF_*n!T1{Ct5KR% zO+uIemWndaU(hlrKzSn|V)K)@PvIDX8o9Lw)=Z6U{i7o{+&J?3$fivjZn|OJ_t(wa zKV0_x(%QNTDPVMJ+oD#V-&83D%U&;wM#>*86aQD)>!r2PvPa9xzK>|-d8MSkcz5KH zk@epjx#8vwn>OLrm+t;`6t}LFDouW$HQJ_i8Us=#!ll1gR{BWUbO|;}{g0GIP^b(i z<`z=sA{l<~BhrDi=ew)#J@aMsVqCbR%0$Ds0jC^Vf9u~ zy%s!byrT;bTqm;nH$Tr<=aSKbXKFw3+&fQQm?T!j$&){6EwdtTVD5pQGY3~Ls(9nn zQ|~bN@X3~NEpX3fJd+n5#vy@V7~oJ-$7NeNW(bOmgZ>SVBBJ0V9t9`qFh3v)j_f9m zsc}actpN^>BBy6nQ*INIK$@BX5mu;1_@qj{7duaW;|#J0Xi@EM?U{i#_FGJX#Ux4@ z_S?3BgBP+t75^gtt}E-x-o9D#u?H1kX#Uv6f7yJyD6khRYuJPNV>NJuVu@p%>p(zk z(K=x#teLk7cM10icL?LHRKI=H?^jOc)^hRUu6XW_soXUQiZFtW8cq%$Uhw{SF8g-w z+Fj+s|p+cO5)*_!LKB-vMgV#-pccFl+{a zS?KB$v^nY+4;;A)#gYGq)K4-rlVgy2JZYZLc|~!PhnE@vNZ0*v^&?H zd}O3wZ@%d!v%Y`ik&|n8YSp!|_4hn{a%87gWl`y_62~oen>kydmdf&KcA-pCS7gmL zyJdR#Djf=FcaEHV`0fo`zME)_tk}J6jq-J8V$HVQDS#X#&zP7?DT)j;**09q}ElM^~;y*&6Vp?4-9r5j;vbO^1x72GgI}l zJ9XNOEmZBwUz5MaRUNWrpmW~Yt76SfL-(iF4X^wDNq}dQ^dbK0WU{lmjy|SO>HuH0 zsr;h>F_X!!IX2c|taj<*e#r(wo_&!^s5j=nnqiNhhGU&DJBo}{$yt-zg)ZS?KDRb= zNfZ%Q?ciSGS?U4oZ{f2otZX{;86?fa7*%4h;ur~v!@U%y?I7G~oR5i|=!&_j6NeRK z2Zdf>?gjaS9EbUuf`P;ErNi)z)VK}kcHu7cG^;&lZqG$$L5DNsLiVD3!dEsP&<55* z%n86yaw!FSL{C`Uj+U{<%SOQi9Bu3GQdqSK(KLNN+6E~KXS?!QAhSndpl5;vVYaYy zUL1>#(zQ_>_)~lkdo~4Tv@K%-ox#nBVmQlU@2^*73!4~^Oi+DrQhkg179ibE2qYC? zHUZWN(u0j0i$%x_d`F1PM&K1iYlWI<4hcmuu^=Lwf+Y~3LxD@7CYnrasFG6qSxbp7 zhDIhwKme1>S)JJ!Yoh3fT+%K(1r)M5auy6cC&wmol2jT^7$_tu&{9Jy|Li_rPDs3- zS6=ngr#^qJc!iANkuPP7w*k{4DU^3+QF1lvzrfzXy z_veqF+I{i2$D|LQ`uk(kPa90OZi9H`(3yh=1~2}0(YnmqMdCn7xI9pr--~lS2KL$R zO>3{g-FDt{{PVjd-L=Iy0Ri){6UfVyFd*y}#z6~*q?ClRg3Ap!7x+&gq_>k_Mvg4T zVX})Z;XRRu5)i>R@vi{=j=*?8-k}l|JTRc~CGdNNjk2NWdN==!S0pP)o-elI% zj+03Di1K_EkS7)vlj1iF#k`Ar+!|5fb#p%1Lvul5m)maQh(56Z&QrcFj!sf1pbv4T zAI;r_E@Y*7UHx0395ec$unl!~3#$;uw~$1z27@D!TVtbHIzGkYD#z1w0&^7+ImIb2 zEJhlH=p9ozJ)iV%isyQhxnod=rgE9Yc>hf_U-kD8j{H^{ezK_o_k=pszJ z?j+eVyb9|fysN3i_&|m(9Owh+N|PBt$ykyw%7{;K*m7;uV%3~~3)7#ULh#ybG<}xD z<=ZeBLilq`7%L;3CS<@ahk=mEWgO>JdaFBF+o`1Q+5)V)T-k;*2=I>(EUSzZ@mLFv zAO*Y7F7G%9nO~)GxQ*1-RuE`%B0y&g5pt1G0qZ>%EMb37rjqVp*jaFa;*6M1!4KgM zK}jbh7kN)5%oiw?O140|55cAMdv*oV#~yQ7W|4+-x94^!_HuGvORV1OEA8k^ zwvQ}Lj5MZwT~Ad{e|}R#d09r+X6UPRFfsM`rfW?rlB>6AZn!;vc-OAlr=uo&&HMj_ zh{KuQHfOWg2bK9`hHon+>=8~1;{(*8wgDJJ-#kv2;sjk7j-Z>c5k7CCqt>Qq&H(BW zVrK1>ybrD1*?|U0fZ5WX>uJxebes*k8V6PpECSltOC^=fWvj6bodAP$ymJ+$e3om7 zDD_QogPcl{Fc<WVUvKYQ1N%E_ zrhR4JrV7}9_gX8g>QFP1Qd3gtpe(RI_aL^3^wAv*x~bt4<6k5u3O< zd*y8QcBiR2y!z%YM=30u@+H0!ao>G5T zcmKNO<#mzN)qB#-p~fbM+Z(l+bQbern)+w`r&i%wW}Th=cXR9Gs<>R)hsAXzg2nwy zKy=MXtdCGg-gwOs8o)J#L_fj(1#wNP?XAgbmHrOUMZrFs-GJMVnEyGEKmgTwt zlV}&t^(@-d+10&aqXO+kh}p|HGUosfGOIa)fnS1jg}Dynf`wc(C z-FXC(;5`FrAJa+r4XLLoU53hg2(Ml2LFA7Eua+GVY541~sChqnAFXaK?P@t$wPEdb z6>Swv?8nrSh%OYXZC^E-0IuDlstEi@&M+=>1A zxV-gV?1MOJ*Q40)ipz(dz&^=&V_ePy14y6=XAmm@Yq17Ty*?-@WjexyL_VsWBD*?F;zr?Y%U)@!wtO<05~qh0gF}A90#Q z(9#c{;Mi`G?kc&RK3QafCW{&9v@q2=7eT|vkn$G37m0k=37x-qs??#@0CVvjhvWVC z>3d{nMa541-~O$xu5aQ0#lrrN4zZd;fx^xwTj?rX)Jj)5zN0qtYj*B@nqTv+Z(S_x z=f6dlO`k37!ncqq*j!o=4Ke_$(W}DvVp{27GX@z+h*AT{!7w^5gj0y4gGo|JfJ`U8 z?>3r2t>A`cxnTrByiHVzT27UyC07H&AL^kl!%axDU86D=_8Bt#w#vHJI?y z5M`m~^dQ`wu%89-1=^5B6%HvNb^Zx861iD|z=pz1<1SJjsS1o*AkKxa6rAqgaV{!_ z|3W4B!#bxWXo^ULTqmP)Mv9n%7N>5KWj}A$e^a03L?BWN|C$64D5Goj#7nDi3qN*= zN7?GNz!k{|$WH&^T+~~tI+|DeJpf=^64Y{t*ALii-l0R=5P!`HM@1w*rv z&moXFiDOw)7?dK$et+c7lG(fva$GFM~ zCLUC&(}3DF0fYyZ$_!lKg3TMOX-KwGIkHwdz*|?~nWr^^?DmAHgh~l6BCHBnCCE%h z6pL7AuwGz!2?M>sMNyJX;KvP%bHF)oTz#n1sc&!{?7s2q`%nDi0|#EdeQRv>P=yY} z^cs8ejprYG{+>hKD=fMikUREl@a?jzUeC|OvJuSe^}rQNtK>-gJ@1~m<}YsR7`^qb zzWtvMm;%}+U^Ke7Jock!?)>9_-`E{GzPU2dd(Hag&H3$14sB((%&Ff&utShox17iD zgHr?&KNJU=riZxgoyTTy4nSxO{fZS{K~Yl`g9>68RoqYcq@pqNvgK5%J@%K%n(gfb zg3h%#WETRY1bHz?TF%+MRpG{#G@Y4&wildI#X3cdHxD~is+6zBzq3kF$wdWuI=0@c zuXi8lI{Wh_H@|#v|JhrwTNkrz;{u_wOw?5CeSb+C)-)01lMUSG1a#D4C?T>jac zHdTEk(#9hHxbDdtm$#4J{K?+Ep9`oBmU_F_*|X`)TTg%DxnFMVsye>0vU%~bk!8*K zox4B#Jh#2UTLpWE6?4dXFoIq!jPW`}Fw~kj^-Nf2VWUOB9Nd*uvqyQ&LZz}HdyGxq zfQq~V=wi~E09C!hM&fhs5MSniJC}#y#dx{W6AC12+fj4!6&ui@gMG_*bp1a2L}@ri z0+As1tw9$qB_q?QJ);j+raF?l_wFaeX>POQ3~{OhqX+#2(aN(jJ*Fbv;g z6LJKMLfihOK#hhue@8sGKbhM(C9mBJkNwUaG)M2;jVXL5=oP2NO*`p;=@1UU$>=4I zBO|g$>)XisGSNI}g@z=+@5l!j^1tZN!piKm5nH8G6P=|SQ3PBNr8aVC<#r`<2d4lq zA3u1A?tBmt3FC(j(&nKZSQ)NDzt9araWd6!!}Ntf^|NY2YyXn9)Yuz2{}Xb2drPWG zt2%_3%bW)tWCxr8FA2Kp2oF#&As{LjY|m}8%T{>H`1*kyp-S>5j4MoJn9_g`1zZn! zVT?#(B}3XKoP&cIaRh`iMwii${$-JzI1kGt=~*074qH9C13HD9^z6Xq6?Zawpwivw z`P6rpEgJgUqwML^cdi(09$3mpy!F)3qa`UB{Ok>MZxSZ13?kRmZ)JrY2FeRJUCrJ=?f% z-`bX7Y5U%eyKY?@33g8B4*%#!hkx=D-Y4(@Ul(N|BD_Zz@(mSbU$U>ILF(nj!rsM` zjuqxk#i)+qtw^^du#%V|GRbK6jz^0j)X z&ManGHhWD*m8A+eLu_LQ%T>0~(qihnjKqZ^juEhP;eK9F@)7gc`yf0Ny1ken9(!* zZipbj4aB{(w?(diN&b$wS7z?L1c-4n_o7ysW#XIrB$IRB*GUfs`z+>@EMFTuu;FzS zVrelyz@GxNOqrq)AxH&27^SsOHu>QZHzx6 zXH=nK*`t@V4EoCl_zkF&zjuFOb8m~PL>r?z3(t$b_xto0^u0^_3%8rVt}1|2zJq!) zPzV(L(;1h$3bpO=f_Yf%1Ofv>T}^Ac;5R5b6kHGxwH6ilXyL^VQ_OaKJ3Dx)ed+Z{ z#*)`BZU1AotUacHeny7WlZ&t1xjcXOHpAjrcPmh^-q!BeV#C(_A6NBU6_EVR;ot14 zi#IpN>u&!0NYllChQg*gJiLE<@2ZEA`3o6syu8}ss4kCdGruaS1G@$Fs~lvG!-5gB zQcSo;AfsFvtUBC>T@%C#VX~2;tc*}BVWzhUVZm`PK&JtMXG8Cb@g$@%8z)~3C?OG6 zgbpacrx?+OU^xK^N*NXpZf1v7!^0&A8U>Jf;R*-SBHVOIhYgVt?obbw01Py^@~|er zNaD8d`=i~A?OP|V-R)#6UIwg?EeGav>ApoTd_R9~&4xwm-A2`)t=O?+#qymyFSJSj za52apWbZaLJrrnatNf>*O#g-GIB;ShS&^LnL7^WM_|0072_WYH4c^pvz=4%f2$W*^ ztyP*5o`f1o{}9>A z1lY4xxodK)7w8>+}1|#Pep{%UFuL0-URIiztU5vxwjkG}vv1FrLHc(d)}lHu~YBw|yYQ z@C)=ihihus;p)~D{JXa;a6MeSf|ll6KCTHn7UX${`XI?&Az(=$9Lf^VZYc}RAfIv- z=PkTQG|>)Wg(LNHX>{n%$vnC#n7wbKIJQ8huPq}58Uqzy?d&5b+3FK}G^L3~?Vhgfb;=3le4$kKWxBxw@8(~6Ie+2r%gg_c zb@D7k>^T3LZXP-vT|LxwO%=P%-(V^A=kHJtNjiQm|7)d)@)xqH{JmFaDV>EH^l6pu*eISWPAf`^Fs;W&K&*jip1#FHH!|1HM)C$$sE7D_ugMB z>w2M1I^f@aLQwo8om1l=_u}k5(4%1{q6*r>dzw-~DPBRus!t(>%ch94jaQZICi8a6 z{<2CkggUz^K2+`_dXa&ZIKIq2KD=o&H&b*{jIrIea+r$DaO^iDGg2TFqeE@>a~f@( z(AYOX1`q0;ymMZTabKz4naXY9l}iYN{|OrY?7`6;p{la_)bPsBFvF8i=6{oaJ^!00 z*)RUb*!fSaeY~x09ngFR%l`4d9^b!ze7fS}@%01p45rOnAe#jRp%ex)E?v2_QVmU^ z04-xu#j>7u5*IeIxBjK7#Kx96{puIkeTWaRI*ijlGncCjcDw4^pzP8)%nmUkwObrM zyUvhr-YHsLB^Pe?iRv<&6y3v&@a&TeQ}C~?7w#57wj|f}aHIH3Rf*Omm`xJ7afIWRx|BxWNj@iGr~(MOt4`#DT;UV{Q%>;7ht93estm1}P6M^Orx? z799nPus}$NC}&QLj*7_U$@e*bVstdGoc-`#fG(J98JsL$N<}6ITd=Pb=I0mQQ^qFe zsqBQuVzY3IFy2pNa(HUIf0(3%eq@5e=W@sj$kywwMgxEsu7v{sg%;2?<=TNAZlN?^ zNY%JHo?D0d2mfi;+quQyZB(daS0@OHw;>^K#rRzeLRqk?<(42DQ2o#_4Z@X$m<57p z3nX3;Oin@Rkin40Rw?}pU2NVi7n{%!Nb^T#L{#?s*Ej~9oIIi7D%K!;z}A2L zK4w1ur66;fji%;J9sM`Nv~HEr?l7v{+SrM^Pw-ubo$ubz-?6FLWCU3+#pDm~9uD>d zAOHU2e6Oxvd|oY{WA?jOKl)FnMYY*!Xlz{31&&g?T~lr7S}}LKvC-h1{u!x{iQ(ad z*l#pWzqllZed) z3Iu%MWK={cu)7ez3?+357}6=}1wy)EQ72n3JV)Rak{c)oMJpEPIP4g*uLOpU7Jxr; zX(9_p0LfenBiL7GVL^cIlf~;2-=Le&K-Br6QL(nD3LVgGRZwF^m>HpcM2^^)&VYAa z0LToz8Ss38#qw{B68?uEW@alSnbGJp&H=yQruqf>*Kq+QtrdYL0^AH(vx062eI^Sj zWhIau4+*)-I1S^i@!TpT{#Zq}o~;|u4S{Ot*=m1T zFPIW7eItd1gPR*jY!rDWA#_Ii)`U34F4>2O42S>xB!4hHom$!eq+fk4-fG>Zgs z$7OUuI8?Ry;d5U<_weR@4V_)8xX;&MUexGXy?wQ-agn*f=ZmYlIve(7`wg{*todi= zEWY~(u0D18)YSuQ)M-xaTIuvV54RwD<*pZwEna-=gXw+_85nG##%W9x zWSuddW8IHlyMb#Lh+lH>_#B4^COADQ8W}yPr75vIpu`CdB~CQpTqUQWuB;}9P%5q{ z9(siF5>}-WowdMXi#dU$bRuOaf*O>Wfl*#2DEZuhK)N?ygLr=6u%2Zoo39!wJv!2u z(`+&!`L5Hf9=$Z(@B3pI--3mT1M9)z9+Mc%*cBVF0e9Zqq`gk%ooBGzDdP0yXm0XD zaTcl|#l$o!P|;R&#J9;qz|}|$*k+#kngr`QGG1d~LIRYV)p%zer|74Iwg5BAM!=|n z3k9TSLTwW$+e1!A-H(eW)Poj;fg?DT$ECxd7zX6J80Cx!^1kZ{ApSWfbuPUU0P#DX zEdaztLC;2!lbBs;Kx$!8=vbqA6i2KZw{3B**VV`^I4b;17>9@xlWS5~P~pbd zL@Ot`KDMEDU_FO{%QTfUDN!36uz1?!I?Q5(Fq_XajwCcm>Q6+u!2!4EXOzii#gx1g z{c9~*D0CK7)dtYz=y~!GdHWVPNv!s=P~*Cds5-eBPSKbAPn=E^mYaGcAa zBW|*yBZi_$j=5cDKPT9Ob9NXFnWip%7~&_5({zG5@Ti5Y%I=>Db@z=~x16 z;L>*ANw(yq@8FpLc*6qliSqA(PWWXFx_)4gjD_GGg<{2D2;sT2|F$#NZnd`bf7i9U z8>#MAckgz6x2JOd{>q-rnS-0l>u5=;E8k2B9%lFYPgEHeSGLqSty`}>b6fw7r%!)Q z34koz^&LeA%<{G-A2}ES8%d%95)ffJb=-3ZXJHx~ra<;`;k5!#BlyJ8=61CC6lHNB znl0FyU~D2@QMkc95n8-Fl>Z@OlUs05af3I(+Nuz+ti)FP6!(Ig>}Yen6KlLD2Cs*! z0n92`@8Q^x8$sodT*_P&7=oAarRJ9QE=Bj@p?L`}WP47CR~5lP2|%2J=oO}QiSy@h zF%}*zeukVMT_H6(U}wVCAb!_iAO3wnJTZgT^2J=`(bw zeJO9h{CoKa^6x$KQx%C?;TG6pVVM^zs-dhq@>g*O_#+PNR9A?IiW46Cq3a|+c&~eB z4>erRPIvzJQ}4X<)JfM5|CP4}m#MPQIkSQu7>iP9;~RyXHZB{=xCSv{beAAAF49_3 zau7yYFj4!6i__R-1L_u#PLtOF>Az%Z!p%2;3`KAp=5DVN0t1Br^rHn+vyxg@ZBOzQ ziPotk4{Ahy&w|{4a$5#Th~Z06;u*8kc*ndTjZ$XfZKD#tE(j-2s)aEw2VH;xA^Uz- zEu7qTadO*9W!;(K18fiu3gmXC_*kqp6>n2aWdS5^G`~Fldr;a26dD4Ri}WL zM!%#lr%(nCX~JEPzz&j}tvmreGgE^ubZ zCcCkPNCm{E$bQUFXUi)Z8oLSREV~hm_;O7+)jF_*6h~Ouae(vXy9>22S93v3OhHMR z8J0?me-w_N0TK(CEMgh56!X$H6W*W}NQt3P28X4X_lBTi3va`Bc!R-||8rCMmHkY*Fa93)o%4{Sf*^fDVIKA&mTIxE1{r;h37-(Ygj_z~7Tywm zF8sPUDrV+P42Pm!4(X*8r!iDbA}-+T1*{*x??_R9)JRaGsJdAaQqima$Gs|GYnFNzUW`SP)0cN8-rl=2ukLcaMqkqo1QrTR%?7~Oq^idjilmH4( zbY2;L#lEV_^233PV;|9D|M!CD@274)I!d23mW$gLGYgf@e^fU_e^YZjY!)(R7)X~i zco%jF|60iMvz_xagUG!mE|*k5=9D8zuLYG49Jw6E0P7UXAqqkDHi`Nw zF14wcBI;K|tmkT<9L0iYYJr~`^8SVdi4bj^d9eZ|fQSPU4)Q~8H~}ejVu!mQ0uqE) zw=K7P3U+dN53Y_PlxRFy1$b<`+L?Hvdt;mK!f;BT5}Zn=W!baRq@qA9hF zdrqPbIYapj>g*GpT>}at5k%k=F{q$tX9g6lCYOL`2{}sv&f22W4z|Qj$X>kbV-P6x zfHCxF$Y7)u!eHSpI{JXF^*g`g%=ige%O|hNBC0m)|19vd7Tq_sqT=*pXQ8Qc*!Fo^ zlV>)WavBH;$Tu0>jdP4BXdY4{=s&EIf~fr_VmrOuqbCL|j!W;tZ+P)7ewMd=(KkW* zMJMFb<-qzQ5rwSDptT{H)__ivyAHahCR9fEV$wDiDcS}kp-Z%las+KANY&^nC!K>7 ze;&(+Ol**6bB#R2tlL|Sb6f%8QOCf|+2jmPFX4&WewQZlF)G|ibU1Ugl>o$BHaezg zD`OX7H=C)?Ih$Fo#AHbnUPy_#Of7<;s0hn#_4N%GAJs=ikYXozLWdGC(IrsmSDL0KCpZwnP`044h|U0X-SeGJ%ee z6vzZJuq9da0XB9XXLVEsqL3-Xkl2M1p|{{W#>=A7q4tPV<07Zo2GJR8rqD(aPzJVk z2+jx#10Fl4ZI?wvNRI=+i+4sqbUK(0dbM^haBoCp4?ZF43ieuef6wBl%Q!7~(&xO8T!0aXwiAwd4@I)vz@VX%|8S%3!8^t`< zz>Wc51^V_ZmJhTuApHfJ7reieG6*JjxOEG?buL7!Mwt=dQ<$;O6-}4~kDdLr+uQ z3oU`sh_`bqR)8?Uj&ph&N2kUw^Jd(6GV@ZL4T(amiZ2Bv<->2rGW?B{C(TbPuZNeI z`);Bac|`e(eW*0vtw9)){fAo6i6SBEdk*KQL+HpSIzM;^A0u`*xw*YXTo5} zpJ4YGu;Dl48`<>>9u|{+I<6Etkw2ka$ZxRFVcy5hc&@)KJ{QO$^}r_rLNo&sjMH;{ z_#iml?!gc6pQ3x`8|laBxfVG5C?4w`JiYQBR1(FNOBXnd$3lG#3HPg#su88W@LYvQ z;#H;R0XefUzc~kol!{sCb@8+F5C5%lNO^d$C@RlRDNkqLY36Y8xn9I`U0ZBNURB8N z%&B!?w?;dPO8s4WaOkqHOOG|b7DUw8ye7wE{0%+W0*CQnjQW>&EpNvPSUlVchSWkX zNHST<7KRB49{zSirej|>||2;KN^D*;#68+wSeQM$EbD4g^-*1SS zRY{5ZLph%r?36X0zbJkVd^cvipB0m=@_OWe`siN4MlRRTOc-Jf_&sW8{2p+6KrQGo zpQ2)w-y_$UmjB)YUEngUEjcgOetb^nykUgW1~Ram=Q<_Nv5nRnU?2&NgIN%>Ipi3m zoFtflM#NqK=Gm4jAp2Kzh|Cba6xTr ziLo(F29$H}A!3jT+k0mp7w@6sk9UFIGe*TB=&u57hzk`D~#S5T|VC)v;#Gudz z?kgoTP$r3-3dqhu99K=8<1dQoqo4N`2+_`|aVO6c?leNLMA%Ffo*#-NqA*k3b&!Hn zULL^PlmgV5GqlUy1P`e%G)0d%$G8V2jSFitrjr^^ zehyjiJ5e)wrDnMAjpxmdk9Wn$i_(=U)Q_K32}ir!1@{TEl3Y6fSwu3X5^)S!b||u% z_EA4YQ|!V8j;>~?jt^Cal)c=E43$5+dO9<|nl5vkx(t*IF2_&8r()%Z-&)woz!}NB z9MkWdny7J-Uj-}`4SWN32Q6XZC%Ppqj>CKpjSSjqk#Z(z%e9komcrQR1(N)2*zG6O zWEE40) z-!ERV{p9xTC)e(KWZ%9=magmST))1vi#v^ujx{Mz+RiE#iyrFz<=GgTI``~ zwu@f6Xy3*Ex?$bA8`i0^oD%24z1#r79CT5y^gTXl<@eKNZIF?QdYVzF;BmmDnW1T5 zO~AB8?x-o*%$2XXO!RYtY$;53{_Hc0!<>YFXR$!OQm_|>b>xo@1EYb|sdd2f=)yEg zbin#B3iK)=-IUxo@No&UjuJXC;5DdDNgTw~kqkJ2kCFhFA_p^!rYQ=AQvaAfm0xdn zS@j`Je|pc@@%62hCZgm;Df}UvT^3kJ0rt8K{8XF3`leVLz>tLy=?%%;05PLd8pAZ7 zL2ZD8Qvap|Yn%B@ijE5RJ9+0ps=3TY@w^1wSZCudc_g*jf*EufC9>+#!(KLQpQvc> zBF3HEI)|J_QW^mmWppu*&=R3;Xav2-S(T_aJ6zZ$fDcEADZX}c#TQ^?h@L^zf{F(c zN|;)Tq&=u9pu{vDNLs*+A!j>5C1$tpE=?YO=Fp>0f9m9cXAUJx@9qwtdi2lEY#Yu# zd;0E!!JhM(osZnL_PMopJ+d=%`uf_>F8%V-$79!@9`kjt>-N!yxNl~Yz5A=D)^56P z@2Yj7z}n%x*KJ%g_V3@jW$0*ENUw3$_UvAKb70e*D;q49hLv}2y5Tvu(dd3|Z1uYS z{&kmr%w4}+=uya)=^%LxIyWX4%*qH!p-ziF1StoiC{*nl)H0v1Ir}8SRM4qpJ&3F* zAhXP#3!qx{u=Y@%KM?5Dpduma@F|z$#ugUjXqr|8(v#a*X4^?|jOlFkMcm+;ALbX??RcoFJfTz=CYhx}F!Idnj{Q5Z+47^q-)G(Kb?3+R;j zD?+TMS6sqhQK4rel4a!;Ni2mPWl;k3!5X*}FI!)Mw?hgnz!0PDxe%qp5#$U4RApBM zrY$`oc4FvHyjtC$Q`M?!cLD*YqXQmFEE@FSd*hJnV2^EV2bZ)GxtlFwJX#V8*c&P@vmi`oevl;VVUc3OB%QR`1%i+FxRe z`)>Tyr`T^5D>f#=f?aR6ouB1i%_o#17d+6spaVO&_aiGP2zxt;7tpY!!jN zIcfsEn`6C^V{d|bH)>N(k<>$7npbos7UBu5*~QuaVq`V{=n94`Lxx(e8yDrBA|CIf z`Y{-Ovn2OV<5Q`}vmdWIr_XT}lYN)h9lvHJ=7xg4k1s3c*iPs_R}}PpOOkSyan&D7 z3F6iivveOobeJ2U2SEf<^iD90k|adB&SL0lXZ4mKV%K=}^g+CQnQ4qQ;WzFD=Y(aWAi&vr6|ujo=UWqga8)sf0Bojrv&yzvMn-fV^F} zS9nZ#R+td}si2{wHY(!sVj2D_@08s60(x9sd}8yld%jeSkn7OY#K@sLpCGqYYkXp8 z&#j-Pqw%SimR@<{!Kdi3Q<-*O;;WcawFt+S1NFEOxowEPhcr#{NoNn$USP4pToUA zm&ko(D))3^{JF1?$obskP}{y@lkGSKQ^;8^;1-wvnU!CGyg+h-?h2I*4)O)J;f6$e zqYT!-xn)4HJX0QkfSK(-=s3R~Plo51d;Q9k1}WrLrryIR@>>~e^veU|Mu}i-4%ATlvy{kOI$Jlun8AHZwN_mot zGKDxUC;X%vgp&f<6<17+H?5%dYoY{$Sk!x`a;rF8Y#jw>Gh(@ig9|cIF$^23IfeUY zAWqq2a20`bN=9ghoFN1~QV0$rWnfbocLCNpO*4b;K9Q@T?D8lVA4i0g2!T^0Xtp>!#7m! zARt$HhzXUUjrTvZ{OC81hLbnF>d{wLR)!4PA3wHfNm*ve(T=_OUtei;*ldC9uU}2? z*p*I~)wkd9;`8^cU9|hT?JxebTHs*W4*LZQ%@L~qw0B(GCH`~B<&JfSd(zIMCZOJ3 zp=ou*p;lcNvIHy2Hg)KA&IgZKYkZ{^&o*)Y)3N;%5#b2L8*u71pB_ z*3WGP@UQd@rlEgBzd6dA12J~g9M@jHIS?m|7D0R*C3{4pTsNmtHrmfoqx3EtJcJ1~ zH`6eKXqcBWBO5nS5(tEBzPx1X9&oH5p}nJy+k)X$bzoO*?9twC#E4YVEgm*XMuKkl)4@Pga?xMC;TTRVwM0x|6SM)xjPH)3GMY{Uz0~28>scCPJ+D0HlDST#$W){&nzl znG1SM2*yOqJ^=(tQCQf6A|7y9B)&2c?cHVkDF<+h4+{t8f`$(s)sCos1wThMY)=b% zCiP+usP7;#Lt%*%q_Rtjgc3Y>3N?ezt-`PVv57&et^k zMYR!E+f`ok`@dE;-dwX5g8J4+CdpdPuO=M2gV?1*xZJ@M-ERk2i=M(5HTd+10oV+oHh98Qw4ZvlsKZj>m4jwasK_IzM~pOG{UoFDS*R zF2oOBL{6*o(0`-YZB5r8r%}S|R8vzrdFt&NiVqH_kv7b$mLll}w6COfG_c>i<0>z6 zzr%jh;0WeFy+Q5q+P(Qj`9=8hs5j(4B}F<}PnW3~IE&BqRy-vgNNbm~Kd-ILw=dVG z1NqPAO~D$|FMnyO39|oUJEwnD`5fET8-KsW(8YSGodEAa?j^GQc+lsdnQ`g|dM;)9 z2JE0pYjC*Kg4tH;K!&^NtUanWcuJ=yJz{Bn)F5WHPD`!xf)EnbA&;2BJqe?ZF$R4< z0p|8L;ZwpmA{Aq~01qWDNsPx@sik9K^Z+b)2vmkhYDtW%IPJYkkHdDDqub-T#7qvBLS*CaOkQ9m12Dy-lag>_Mb#Z-1f>?;yR|In-{IwlB8PHDx zIfYLJn*m$ifKB${Of|^0ZSrz#1r^>3h4$Q_5S+yAxms9}9ODjWl*EK;Ff7XzFa`_q zN-R?E;*O>@48?g4}?w!s-M~U!9tB0Jcr2{pA!+OQ5)- zMj#e^Rz*#rrM|uekpwOEt-I5U2kRpC!mfC}|5SE_?~HQWFxh!wAzsG6GA)~ZQj2eM z3wZ*towxdtVy>pHYt`I?@7x}aMSBMPO1T@jsaUm)fBmUqH&*-tu($|DcpY2e^|}Jt zhE51~3V$Muw@_1TCL`!lWDz1~K<$>{z#qLo}=&8kRA@N+I;ZP@f&W$SwS`+ zPxQ<69i4ssE7wu+J0ujZ3JtHK9skWJZt{35_w7G)90$0$enwH1lvG6U%X_tj)IyXD zLQBa0g3G=TG8$3CRH(p!;i{&rd2p~3WlI`y&=5M{)~A`5hmI7Bc@%s|fxHVApPApC zLp&?4=h=$bu-p9~`TtOo5S1~9BjnEK)*aO&YZ8sC4}|~2+?#;6QJ!nVdS^7+m(ggo zB-`5MU9n_a-eN1Uvp5^hPRM4G5V8OXVF_CjvlR*yXn;VWl$1h&mKI4)3KZJZ3mW5EGNPQD0vcbs`M{3#24r-?yK6RxvV9ihaL00D9AsoJnN*SpoZ(Lyt zRVYGXBK6I;z4*FS;{#aCbbOMYz}xm|^ttR`6!pyz)6Qq^x4gK|Raf%wV&{0p)zePx zJ?%^G=RXViKLnvT4jD^%AS-m`P8vIiA;E{FN3{<<1e-2iO92AVpfnyUR`8M)N_HgD z)(DLg#v5^=w87_A(u25_oSia8K^z{8l9|^fP_WcRp?VX+9wrthl_t74_a1pP!BMSg z>t`aQH%q3&Y{uZDH!Q18&ud86<^%HEPVWs%y0YtM&Z>{kw<|XLV@$?gIly1U?^oHG zrDxmy%iA_|b%%WZ6&0@Pq`PtXJ@HUyrmj#~ah`12H-6#N`2o@eurzn>KkmtR+ijQV?C#f{7%U zX^RFLVkf8cGJ>a1*V7PV<&jnfj|<-*e8n(8aCp-S6c%s<@qMlQ#Ds<|OX<%WrQ`I% z9|Lh^olu2mp}2llS4M3?Dq+K@s0;k^MhYg4R2Ye0gG_&LH|7X#4D=6Beznodc>FF*fr=DA()q6n*Ksy-hvQRCC%IT9>SxwRdy-hOW-~?&#nTLKvaw zX4IvGktp7PHl0fqw6G8Hn8`LRBbBJ0{Aa!3^O$VL>FvyjJw%TW4rJ9@4Et4Jwu4&a z8ym6us4NAjRTuINOc)fj@@f7$gimU+r5%vXAz&X$?&Z*udVE-lt0HqbPxNe8F$F=L zpO1Y#OV+HVp6zy(2H|QcHb6ne1v8qPT~uF!94o|lN>Yo@1ITjhY|DEo5KKiWh)0ee z!m>*~7aTWwW1!XGQQ}h+(XC7IGAjzN>*LDa`2*fZG6Sd!W$We z!qb6xL!+;wd9Z%j+BN6Y4m9>BFNrXpHFjWI)65k(@uH%t^Byg@5(B zvtQWJS|tdl{nm=5^jp`ZA4p3~bXi(ElKqVXwdbr^yR3e&xx?4k5Dy4?6f@Sw2JA&W z=~`*{uW!+n0%@2!Eyqy+ryfm8&WH6C}X= zAo43Gs5o#T0WL$*f3>7jg0_`1HRv)6g3%?LA6pF&Te?yM2sVxwZBCg&1e%e+R}@`D zM~jTMZ6rD)&G@G!rZuG_97_btkH-+9TJcjgmCwR=MOitNm1%Fsau}UfG(MU}Qqktrb#;%43<``B|I-n04F-||KtgImt2j%zUu*By?h7v5MU8yrdeT$SzB-BOQO4l4ph}Mt z8j-6ZF@T_WJ~f7(29u1S4WXJL6QvX;=#!f>1}SF(pCsZqW42HYtP6F75y0?IlSWx`1Q26Ds0<-s%#}XQrQn7|jWr&3uUUN(?w+Su z^P+QFTpcvGlk5qUKZ9sdK!X@mj`6i$E04xWzToGFl^jJcYFi|iF#1VeQ+DymoQ28! z1PvC)fv(U?4PK;KZR3S`XT zpc~v-(PL=AOI9d zMbR51=zt}g3;3yQFq_LJx!Y%LZ?6D8%E6i(RyHc?Z6+K3=|vU3wiCKtpVSb=`!+|q zcF&vX(YtD7J6q31jd)KsV2Lc8HAksyp!SVcTNPo58O^dfDw~aLNKmX>{l&}1kJI23 zBRig|+Lh^A5H-b(?57&yRnR3)M7Yl<2?TtNj?_xx!UYdQJyEuBVg(yWH$bTcObSdH zUS%tUX#rZ?wghSK9`Xu^1|zw`pd{wqD09!Zrk*o#+#<7UhX!9{E12Z)++SY02dty& zu+eO@7VOeW_21P05DgAU|@FL+Z`4<+$FA0meM6 zVkI*d+``kEz0VgS!;hh#_;jDww7nx1tKtS#EtuFdC6@;gK>-it=ko}lJ?H@hcLktJ zkxN!=S;jbv0g4>;-1paqsK}9{sFRCqRKmGM@94?h;5#UKMybr13p)?~^%L5;R?xtY z7A=U=u+pO$ZVQ7mn{GaICIWMW6&EE>f(VBEeHNEg}hpQ!T+w(2_>h1=TJFh0qzH z@H^b>+i;z31@ZP6%ek=upK9ls=sIB$?bVL59M03OfaUxT?{yLtfP3|l9j4uD#Xq{& z23}A(3x6k-z@!o;9>4j_du0v$_He^=GyE1<4!3;<#^gV=BlK8wDu1Feb?n3Un$exv zqJ;ZIqT1yBmV(m}(`U9Vmf0*afP7irz-MdQ$=jXQUT1AwHhIH%l*tz64|vx5g=>r4 zSyLl`?$>+je!U-czwi?A_T|F>nM-KoGsZ%LHWsEg8nyD7?JGR34TduY&eZ)DIH!;v zv-U~O=nc9Wgy0ptuzh_wN{?h%0{uuk#_dxTvflT%(4;HsP=riBDwQPDdyb-g z^sBuuyq};0n6fzH!VyMC1k7Pc9x;H`uztiwuizsZQCvQJ^wO)S8xiz&7tK>vu<4kf zmkc(vkJqP7-IEg-^VSs=rDTXjsqS3dE#+F1?r1uimxhNYzCQ8Ik7a}{zL#IJKjULN z^z6dy#C1;LQ5kFFrbi#uUp4Wk-?z5jq5f$L+bl$mK0|hn?L@)wcjzrn-8N$LDH?Lb zXk$ing%fxpan_D!mm$KmXYU#P+YbKh7CfPZC$yXKgpR2vwBV7<5?)2*^EgNZNd~jU zjxG8RA_z~AcSns9?%Iu1N_W)EZ1Y%cCHp*kz5j#xo%-ifAI$HPeyjf1_-hN@6GZ22u-C0R=KS=1g^re zd<@=xN??g+N6u-obGwX~ia>N2;zWlb1+d%Y{0Px`6R%+*0>>J~U`uwe-W2C_6wh%L zD?3U}%kim-t8D#Pk(>)4)AVh#Il01Zh{sx&7Dm& zrdrUz1=2zu2d4#%V&t@d89)IAy%!65YHBHix-#T5nVeht{`0<3T2)6o=OTl9Zm0I) zzW?mo;xw6jY{;Q_OnSRz{a*D_wMD&j?|L&zQ+vb$U%2^Ux4dQTK96t~nm_#MPdCYq!X54^*SWK9gWxf7cUF+_l~;n4}q#$trx^;C~Fu6q55maPk#gVu>X((up>EwU&xxHqTIvg(oz_e%G9-7*F>iD!Rx_1c1VQK2# zbCcLEjB8}{fmsRqX=3W;OL7Fy0$VOnqrGc)tvQ&dX7+zi1vKsVPu}yXeWz|%ICXT| z<`fPeEe<*EhYmJJw}59@A~>f|(YINeGNz%U11K0nfHKUuE;Kc6p5V}3l;-Y9pt>!_ z;4Ii3WnV4uK9loK^O0+2+LRzlqvjaoS`{k2WuZXo(kaYEszat%w4GFpOaRs(oq`+c z^h9$Fedw}3_?nd|_F=n++12OXaCj8^t8CqmjeMWQDo9&Pe^h__pu=oAJS_vA**HA! z8+L_RUwhDwp#2+czMXmONNH7=@yF_8ui6!h+3_H&{$pvY#4HvdH%`-2LqLjB=#BCh zL7av8OAHYw^%G3vk{2Y8BXAaTkmu=BFUehMllmVX?TlH*vJqK!IRzvjP8_d}M$Vi} ze@(hg;73&!D5wOZxRZRow4G=*d|&z=&$!HhpN&tBB-PB|Nqo*E7lN1&Q@Ote1Uyj| zbh5G`WgZ&SZBu-uTro8=zgcKYink|sCik`PKHR=PnH;|YANJFSeIK~l4iqdDc0fZt zgpG+qYXxM|OuWQy-ukKKAO{37QzBKXD zY3)n#4cKw^sa!>x>ROCLgEW#038PMnYMcox%qXO5dG#sL)J`B38iWcUTQ zqRnBh+tIybPUd|gI>cx16kD1mfKIzBOyH81_leLo+M822PFrEl%=RcNXAM#T0sUyEq6 z9X89XFj}Ly5HwPHFcw3KQUeg}L;)2UougJ^IGLX<&CoxnY5;|;kjXb(y% zhvyed3+2cGuz>M~@=1iz(zJ-_(o8cvX)B8z?+>FdJ0cIyR&l-P9hQ@Sx zBwUJV@gRz*({Y@p;uQB*>OVBpq;2d()PguOGl&P#%)pp~gM;pL`WPfaTHGm(!8*cG zE8x^b`VpxGP4wCAuSiBH%jv_W44SlnfIxYS>{*aa-IE*yR!JQ$w-gsX)JgD@Lv$N58Fw$u3zJDpEovkoUe z5T1;CoqFEdQ+>jt)r?4*PWA~#E6D)lC!VEGbRKT7@_HNO`{a2wMng3_tz%e_cZlG- zTM60hX*j7ObuL%+-4lPBe(S86_X*B&ORhS0JeW$?R^ps#>wyzkqdwj%p0TpWPNUgF zh#+(ji7qfJ( z5`JS2>GWQC!s0XsA9T_e{CKf#yo?RJUP#*A(^_*SbflwC%bTR z^&z@eF6SGO$O_s^H+5$1+4LQ_q#-b-hM~dBMH!!7B*sqfLL~h2bpG*z-F=IzMi@q@ z$ghsNXS>x=|MX$GmvZH`bJdA>JYKC9LLoL<{eSi>QChRKXGwsC_AFB3%x5{ZG+?#; zh-Xp!P*!HUS;4QkY9@wj{=u_M^u?>$Xegu>s^jthvuBB5X8mtH3rxd2YMXJDD1Ao1 zOo!Am9h&>(O`i53v^-B@Z;zkecM5XlX#JzX_BYI@A!3s{kL+E9<2Qg?j6)G~*`kSa z1;Eu`LritRqY(Kx(T3|v8wyb320BVf#SyjSTFkQ zdcD(A5vq3V|8AE3OortdkV0xe6xsKk7PAm|G0CdNgZRnptt zfe?yHx&Nd-+Pe{jCxlDw?v5FXV~<1m3Dfy;j{Om!dQnkXFN(tOZgAP}2`2k(Hs@}u z^NNp)dPzc&c*$sVJYw@=OEgH>BQWV#V7i}b({Z$EFV#xn*a+BK8K636k|@@!xuSK!G&c>!(_zWL!D}?6c|}p4`l`XVT~i^fspys4e*Q*k_Koj+ zlB(V_h2i@)Ays<0fe zGQli`6B`!&LUG(^cdIua<=1@@mry&kpkB~V;QQKycA{JkE4T{5sfD)K%sH#IG!CRo z6VPBerwCgvgEpuhZm!Z6Jb!^wUZsxWc`mAqwOlD%XU?POtix5D5AT*zYDTC@SF)}~ zn=D(412bJm^i?fw1P&}Fl~NQmhclWn>M+k{&^QIk0LTLoRefNV=TDmERe(}Ywih>&tCE8)ZRy4(nc1~X6|R>acH3`pC>=Zd zx)p=Vw$$Ww*hPQ7XLa4it6X)-g-w~(_M!ZoWbiwWD2`j~?%CH4_E$)*FWzDi1go$) zXj*knI2)_=du1gaYN+k#T2Oo2kE)K?-HM}Vh(+sUgW@^pWTHh>;+6hY{lSKGDDH+X zm`U}_Iyd{NUj?6WC~o^R=7z>x0OW}$$LS3ir#;~RDg$T_4F*7CPB;nHG7o3g3(4F$ z(3>G5L8vy9{);vgGoA#SA<{CnIprYm`A>QQ9n9!sK2p?UX;{>5`|g`Q>r+?KpkWVp z{PdIb1ezJ~$BgTXwEIc_&%W>kOE@eh@3&;L`h!uku>OGEy=s}_*y>O&b=z;Iv#>dH zIe)wRh^MSRC@YGM?Rpi-eT=jO@dTc04)WSGCo0@rHMwFZNQyv>iLsR{_7fP4=T|o$ zqv$Y-(^mtV)J!w94rmFQg3WdGskwkpZCUPAsB6YZvLj+i768}yfnE0@2|w?q@GmW* zlTRLxYL%YI#c(ns&vE*|prX?IF=>H&kMiutnb>F>?a-Q%X=l>rB5_P@qeBA}QON0%&@&I22 zQF9~n>?Qqk7Oz~tbtZ*9^<&R&X<4>>!^X`Lr8XKf&t8yQx?<@3O{io+tu^8dM3JhT zEjx_V8V;&W5{74x6?bJyyU`$sw0zU}wm}PT%5rhhXvuGRuefUTt21AGt6Gb*tUwfE z9ikBDTM>nrJNngc_D>xd!jV24*+fUS(ljocQwEpEUd>p)6a z8RtyfadC&PAj|$(ZBO6aMXT0bc=5LFJ1^2=H>X}%p+Pb@Wq%+VtF6nm%^NAjNocOXOk{Y7Ad=(jvYl>Cfdwx6k7TIf^@;rVBEwmUM~edE?X?p+Ff+YCu1Y@_VdS#fky(y&;R%d zyjxwu;UB@fb4BF0@jom?rP-ywyFES^{*Kq9zh8=vON7G(hXPL!UfH=$yDgwTz_tan zR~ssKJ;@JgCrmsL2ngHo>aYmglsAV#C#wF8LC=yHs|T+ref~Lpz^(?;wLvzme*v;Z@E(5s(`p|h9N+1T4%{rBmHZP)sSZOWg)9~6~84B1KI!bj&H5kdy zUC7fB!67mSs>M8DfQ$X8Pv8RD&3pSBInxV?H;)+8G&_C>pXR){{htmeUU zuGu!zpxk%G<#uCk$>j%@JvdnRpfcahET+y>fAg%S<|=np!@TZuv*(zkuGs8`u2e#) zNOWfh>Sr0B&9Q@wRrf!}*!Vlbe~ufgyUw5el||u0x6iw1ZpNoS@c|o08N9DBQL@Rw zSW`IBo~W=Hga@Gvn;ib?rf@VD^;-;#Y5pn*QHW9EqSbkMa1j1-xac&$I&)EWgda5$ zA|OJ+-}?wuAU5q_4>%l$soufF@tXDz@Yk;YF8gPPL*3>;>J|BzroK1IS=y=hiL(se zFrY9HkAnG&Bp)o~2+5hbQf=0gw+?xzFpEKW8>4;&5QV7MYCEuvFx&!cSAZfBaqHQA zqySn;OTm)AtL*XKN3JMSK$a#TPA1FP@baW0r~vXJ70ZSO@!REF5V+hqc~AvGsT9MmJ> z>NxywS)y#3KUSX48JgxBF970g6Y$95uupO%xNUN9G-;?keTp!CQwq9J;#74rEsbwTW zAv8-ir12EJRP7e|9i={`tUX&5tEp}3nLj{XH`i6_C}neQK_I&&yFhscR6Jh4MKG_hmHj=S&PF@B!lQp{$NiI@Fh z&BU7~#R@F(-aks){v{*pJuHSwVH6)bqtA8k>B>pcTac4oiz1v6$jIQ>NT`autwh>T z1j_}|-;nD7_aAZ_kSB+1hIXiS(>u9c>tqa&RJPonr_O8#XrP$aC>r7rvSa0W{j`4` z6u&b&*-=c%#br=ZLe$M+Xd@|kB$?t}TneLe*+?jy{7@&Oh!{G#ADMK|Rz}k`nO?1v z=ebH<=uTZ}J_Um6Gt=FB|*%tUO_Wp5VdS^@2*Bm24^Sc8q@@sTgOlI4l2r_0kVEjOWVEF?I zA7=Ct>Rn!9_2lG*>?;TBI!P*`%H?uSs<0gC#Uq8~IsV#*&ZN?-Q}b?tmRFSr3DVT` z`pA~n6nV{)Ksll?ohc|Wwd240{10Z=)+yVNLQIgF!}L1AUy1Gn>VJV=QJ)d7C-8dK z*>yD?<);f8JeIZvZO<8-G`Ie5v^Ovk<+{!V)ZTqg7Vn@ z-?#UvwnV$~M$_7OdfT50`~BZ&Z!XKEAMo|79a#QVx>3#`=p`x{l2&l`2sX4N&`%(i zM1chOg}SrlLNB#yf!3-{40jCtlf#{0gj%5}c*&62QtqBb=XUqNR-M&No3l`}xY&(# z2*)EDM@SF>a*{HOT_bh%9Scdu%u>p!4EHE?yNp8&)$XOXLg}}stdIkQvvps6Opua@C9kC%;!;s^s<|W4c$(U z+vE0DXKT8v0;xp}F+;%P*t29+Z$o6!%=Vcb$=!1n3Duz>ihw}X;xRg%p#XD5Yrh#f z!rB6N6G6T%H#*%5C)>?A6>g<=L%3CIH*PCUi^IWU=OYW~NS;Z~8?8%(h%oX$BefL| zmI!{H-;8hy-1zj5TI?S;S}GX7cJb;@&vq?J++651r=2cWljzK|OP8qst~WVEMe#7R zGnyG_3c5XEtI=!@D$)MtZGnme8>N=lnr?Wq)zk{%dSvCY`e3M9STtvMvIDKNDAF+V z+$DP)o`4})vp5x~>aNLFd)=PyhIC!BTZyhN>=6WNHXRh$ld;V@+g!38mRFRzCO6Ptt*hGo|zIfo3d?0l!RS8r_gW-(oZvUg${dLN#c)p|fc~|js!p%i}Uv@zRdc z!^Df+)pPg#_@)mBYTa5f^9Yawl-)_=H5H8*AqWiQ8i~8&E;qn;KEF5D>W&-JZdcBw z0SvGaZ{>(#d%mvHw6)+SaH$4O&gWWNVy7Ye{>5XNRsV4z_3`>y7LVI9yZ%=7Kh!_p z+JH~X-WXh<@=3C$T;As|9{~8dS)hwWXvZgUC zi>$LUl?rv=KyQ_ucYV60<W2YwEnM2V1;#wTbz1^TS!0{XD6J8f(}d^$*pu z5Mc87%ImvAsZ_Xg(X3pM*}PVBrNgJxq(V=`aycCsLQz}q4_uFn0<$m+^Lj1j^BKM8VZJkZZjNo$wf0KTUG6M$1JbcHkP?QR>Cq!K7~Crf!Ok z5|%krOpT4q?&!s=!~E@#sjfU~YLBd5*M?n-#)|9Y(pA`X?byiW*IqR>c}weeLU3Hp zi3h<{QoKHkIXiO4O*i9&En`%f?G8*~x%36(N`Hp44?cibxpWBU9?lZWbqQM(0%&_{ zndY~T$;F1zQrz)gF)^wGXGx-gydUi37Ef@hA)-zs(^k{`M1rVN%64J;ts@ejc{IVV zy$Ta?`_Qd4t?$@^S$m+Pbkof^>Na9(KI1Cg{W$5Wk9-=tIxfLUU-|+ru4j;izAbK%4BPr(Y9ty zRY(!pn)}14zB$QoI60>;6+Um(sts!z!Ioq;yV|n#Yu5Pu>9oITEfbYc)!MbKStM6H zQ<%M8Jf{ECR!AL42I@ zoRP-x7v@}W+lB8RXbvQ2wy`(WkJWj_2)jsF_RL^1mrD*lvlMTs-nnysGH1^FCuZdH zp@EkNg6(a;oOp#b`ucv_Cw`6HrhYOi`0Cj{)t>K32F71KCz)#vh0M+NoFy@5^@aGD zOP&*M>hEtN5Ib@}ua*7_yaQ=sxyrk<>60-C1H~1RZEP|E!Msy}Tc^h|!PsYQRc1-Lf~Kb<;+>67 z**kt7oA{K+5+Rqq33!?b+Fu z79S!fc{fG?g3N@f^NNNfg3h$JEzRKc(T+?<1O3hMz(%!UG6hC%%W)yMwCR;h|~4_k$x(dv7!gRwW+GS#m>#a6RFs$T}I z-l_gj{hhdu^{T&9e>AcEq9GO*7!%ar4_&1GFPzVW+gY>v7xkaS{j5^`C-twmPb0+& zr2SZPtkA-VOCy9S_7VQYkstd|R*x6Q$&mn_khCWLMKGtmIZ`TX8qN z0y)o*dOfrU39C5j_tCb`f9hy7LVF@nItm^OY{%mKr~oh!zFQ9;_*ZO>Kt(7_sKlbt z#S2g%gUE%U6AVFq$6cI;jA9r$RK?4=K**5JwG$Zoe+*s91?Z_`G!8apWV;IL$eOC z>kmGAP)OXMK5&EZn^hCft`z;jiFrX9E0lvjJX!mX@W8#Or#p$22N)A!G~^W}5Luf9 z2$SYbTqA%xorEwVmzI)|5Fa3pdk_PI5}06(d7g?wNT)PaQUP^;gR5LU1Db9}F{BhL zu&!0m`WT9(IZ1nqtCVUun}|3Ga*vbm1-=#?6u@|b8>(cdPG;#-zy~tK;JtjQ{>r77 zU%vE%+m>Gb#duKPSdqBJGyK{OFRO2OKEYx~4-6kYI(&dVP*eHk${PMM=hOw4UlWYS zgTk%7{ri7@9dnNM_nO~*=9zb&nMtQU9n7Dx?mHYp#zius83JHXRA&DZ)LTPrV8DY zFGD?}E9rrSN9OZnO^WH6&+Z&5O6HgtIujIo;f8I3W!na|^%dx*XXFjD?BT=0h}y`q z>JRYyFse@sO4m!D!(8sx4Z=HdAz@%!xn{RDQ#>DcvMp2Ge5|ycZlsJPYj zY{HkSZCt+M0-7@CgQkyr9pB#6yKrYXl^DpIu4ql`za4C>s&ZPJl;rBBMV=o26KbHU zCG6Ut3hlO4)`nWl+3#Na^!OvP`QCdCv37Itg1!OIjEv|qd19^cA^m}H+-$52n@sV_ zP~2?FG#f3kiAUBBn@kU^+qtJ9e09e%mtyNm^)8CID5!gKPB%f5U#S}c-yiCFu7Eq1 z*Fc#M<$DJTq8ux38Y^xBy`nZMcVez~Yyz@>X3wJa7i^_IFuO_#bPcMStiT*zbe092 zp|L3}?$=X`E0kshf+o-+3cyz3f7;v9mP$kAG`g|f2KR@bx)81pkcd$U1>*Flx3+Xk z%6QtK*PDC^12Y*E`}Pqg9t~7i>t{sFuKL~otp4Su4XOIv)j?%lr&k!3C8kdy@q_+5zL$_% zJTdE_C%o3~NqL#|2d%z*v^QjnIXyEbdLC?F8fx0?p0z_UrYrP2b{K@m-2o$h9)qJ=Mz=&%VUA?!b1%-_}^)gs3>-+LnM9NC$si9EeGZ;3E46Xa^mU znv~7l<79?6oUdgusE(*Dt zl_DdRA8g3o2R?@{5;Tsb2RN^~zflNq_aCzs_*ELlxOvTiZ?nl}}D_Ef7~fqWpLs)Z0Re zJuEmmOUX?nbXq3k`V`Wqj0IGTg#@I$Q-!oBIft2_b`=}x=F7nwWTgeUe(IZ# zSt~1>XY@}W48k|miaC6XSG!=598TYwYZYC8W($YR_IZj=r53v9F9bn(oHZvygaG{^ z_n<)c>^}W5gnjtwO^#DPjYq}}(QoOPXc(RPt;zLi>bGcp;=C$a=n?TqU{N>@APwjh z;Fom6XFLNGWk3l}H7QDm(*vUo`8bs>MSrERRxj2Sq1m9qRW(((LS_JFR45Ao5PdSi zWe$p24w;04gW^0uL6$rirz5sdnhKks))i<@%Q_jDNHhka{K+sT8<^hx7Zd;RHas6=f+Eue=E?t^? z;J$l=FNzBn6q(3aWmRumTT-~@_XqE;s*1&CB?^7H4VPZ`?a;n`FGV8J7|xM|-`#i7 z&RS6hVUB+0!iBwUiWSdJ`kjvR*^n(jdUg#g0hv!peU?;a1778l2@@04x&U!Ivc#@{ zF@;oiq{k#(?#XxI3lpn^FDw*qAHPDpJtQN1p(jr97)tR?9uJ=Pp3MlydN3a-?dhp8TkR3KAoM zSy;_vUqyBQBAhdsKgk&lz}D+Vbb~k!swp24>k?;1@FES6&mRnG!ui3)h#pL}66$ZN z!u^zfMlcm}`V(X-mg=sr>+V|B{g>g3<{52v@I)A=Zmlz-F5Zd{LoVN<+|?fI&~R73xij@oWId-G}vyctGmf& zFxqd-zkJ2SY~jI)txbjB(G|bbUJK&)=<6o`jla&mT;J7I&%Z>cGwZDAkN40mPp~`K zBkXBV@w~`hVZUK-L4?r~+=TJTjo4PiawtI>D>`s97|xVZO|c&y*uep`7uN6|5yKga z2rkWG;U=w2I~Oat(E$WL@bnIN5s*MO`NcfKfhi#2>l_lfpd3)hpsP_*30;9tdWPSn z6mI-87!f3CgNlIrf)0TnqHn|Z`N`7eKimU&T1&b|Oo45XuE!cjXYg<0Uk#;$KH%Bf z=uVJ)*ot2?_&xC^W=P{`3a3Lg#Bn3|8B=ZkEZ7=}&>8=@PQxFR-wpQRP&!3R4mhBF zeh)nb#conG;T=$Ea0Y&c_Tc;S^x$GQC_+=(rBH^lMnf*!O26xG$!Bx0WDMG4rSkYz zzo(bAG~r9y(3bR&;7r74v=Ee5qrr_whk`_ps<&EV40+_t;#lRX3V2&1xflw}2{vT5 z#6&UXxjr7)GRt3IFDf3()ie4Vt$N51rOIeZ`cj@t95%hsGMJv#x+Bps2Nm~XoAYa& zP_e9*P^c}YfP2It_)>}tPkH-!HC;0YT4z|(k!VzOFo!cJhfpF%Fb4d|V9J!*7I1Af(InOAJx`itvAW7s=V(gn?FJ@#EKOJ4+~Bv` z1m-gvyrN$aT!PP;V0}xxdA$)?J4R+^mId)Zbam94u68o3*{j&?%n_^b>Gd9K+Sz3= z8GIGVFj%dir@JbA@=k@BYb!(+3x_HNW_B4Z2EEnjV$2h8c^H1klxB9x;_z8QzD!=I z3q>TeRT9lM&w#lhSkY!-Os=SNrDD;L&n^fCgVksk!{@a5ymda2RaM#*|2Zas8BE@Y zUNGn-z)F!kBoL3JUJ^y4@y`O%H$*G`8O+sgNwS*t(rPfg8uZR>f&i`)!D15~Ac{oH z&ctMgAlXHy*(_mg*z2fMfIJh-E`wy248mpp)mC{%GGVsqElMml5cNo+-C1V{*nC!J zzXPtB3X>t?5Dg72v(m1ww=9U61G2BOX@=t6+Sc#6t7Z4M&%3tX%PK>4kMwWcd+GMB zAFXblS0f0qWEEp3x2;l2I#%T8?wd7FiZ;h9lw_pBYF#kTR-LN~S)GEd!tX=z0lT7i zF9^v-#a!t_Lt+SpBNdEw+tIK#mvHf{3v3a+{}!{esYY~mH8%zNO|nUl%*GbkIX`7G zG*$HZE1CQ9h=#KnaUw@?^c%VXVuQ$QsXaKFqbS z4}cJZgO_O7D2E-?p(wsesx&gIPO?KR$C?S37G+W`2lz$fZwXXIlC>>u?S=kz=W}Hx zoW?SVOju|A@=Y7CrƓCICn66&u!PHl6pn& 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%0D%8GQ!Ai?6y^fVUY%4hi>cI9O zLX=J3DHSY+vee$io`(?dV`*K5jVlu_M*&6KZ#y5kO}G!!fRarfSG-kCqKT7RdUmx` zZ8*MxM={=r#u?V6GvR+MqvVYIIco1mREhWS7GL|mIh|HktQE{?y$URGPr_;N&F|@# z>KmbE{WV639zj~Ypo|N8EgGRE<90{>z*!=1GQQnUc=yKJ=lOL(E&8GA@k&#nb3S78 z2~$l}Ed}zBUd3T(0LT^stYB&&oa|IV-&AJVaw8~mHWMPKd0-V_G+It&RLaVzd{!xE z=yijDt{oYE0WCuuZ~bU-@qR1KE2CPy$(S>9%a#99{>W%}eNJS*K`a62duWuWt@{^0 ze}`;-N4aloctp8TFucy{fuPBXs+J>tPNtul^b?~f&G(5d?9-~WcgkRtWIJr|+2RG! znoQ zFK427bm31w^XkXgv)c;o9rd(XUh#b$c?r}~H_D`#p<^4g8I5><)S}M7Db*?z>DVBpqjI$=GS&UzqSv`Zy9z=?FM>M z$rt4Jf=YvoU(gwzQai(pj#J5Rj$jJ0c+`G|AbMl5r;GGM~TrwS&{ZW6G z8y%ha^2FCZ6sNb^Uw+B_v>okc(T>E#br$*&0k4glA9;kmYU205PN#2Ie!mrMp?#;H z20h1gE~ohiu}SO%G@raC35YiO1Yo5bk`Op+#$^}c#1{Z2r}4k^ z=YFaD&)L`JqpkOR@{?#Os{0D6d-vPQf0H&72(IG-YB}{VRh$P>YH;gSMPXNvva1C?5I(-A| z!4}MJJZtv1<`;?i>efPRDZcU&k*yD}NS1lfku$Riz~OSN!xi1W;Z{{WBeI;sZb4q; zsF<6u6g0)0ZJXRQ5W7&8?1QV)pK5c{;NcKeccdnfnt3#0*Xb-R7X3{UPOYC8b<`XuY0ibyg-v7H;xb7PhWEY^84^_Nq?> zt{8y8?SU%-pCUIVuC^XtyH${_STs6m*U|d*cRv33o$K|qj+<2uRzYff4Us2DsG`4Y zopUDeq6ff*HWCG3vw#2`A|^U#spuq9v9lVCbIwWQ92OWQ+{KI~kQ)mUxR~p8AOqQ0 zQAMFE2V{7N;V!f3_drn1t^_5j9SI!l|)k42sVQLJOw44W#@a%8_r_2(z6t1l^{S$vO0aptCqXoM!BSd`kzvfHk zI`0zoR2gh-6RxupKlmGc_-?;5CnY95KO^p^?}kiPXy z^^SIy3IaHk;StxaDx%;H-40>y)=-LoeD^?{zr8L-rm>lhUzLd{Y6bBT{{saL&ri{a z22iyec2-hv0&^A}L!oFyJ2MhXl6ll@MP}uTzvZox`Bk*;`&x3(V5GV2 zh2JT^e1O**rn4@Qx4&YRknyz#%ve+YEt+daRx_gTE$#P}M_)Bd20i}(s`*`EJBJJg z^9=dKU6xNEe$hk5uL=!W9--ABpP2Bp&gc#7h4M+5nAFPhA1>NV(J$c>1kpnKAOy3< z@0&T8{uY*XdX$sqNhl{va+r*l%(=AY+uXNE#ATdvQKWx`fir^y@maz%V}CWc6|#jt!kHkz3foKzXlp{Fxp=C<&j@ZpwyCtHq$!)LF+7f0aY@Ov`aEoCHnHANt((*ORU{Znv}XNK{shy!OwFAUr-Z@)~&4RGhjaN9J-q|jupE{vTdwXMc| z*0x?4iF;wt^RmSedkj>aR`#A36IRE2Fr}gMR|a&$&^YAHdaa zqClIaOGO7wOr|{K##2$DUGlFeBih!C+L2G_EqD(s71l&mZ4*VB%4)}alivk~Ia zgzH(4vgLA3A4bSW`;^xwULQ%_pK6KmA_|ITUQ~W2qHV~x&f~e?GwhjK!j-fS;mK^I z1*aeRycyE-W=IcTvkoV|-{YCd2VHl*O@iuZtDn*)UUjrJT(nK7vVvXS+fav^R#Stf zH4Ji*2BGbDNp6!l8gVH;Ai23~;`h@Qi)PX$IF-za_2_k1BwAOE(@e{2n(8HawU&xj zGxTO_wTe2;s>sTd4HQ)yC<_LHm=$;LKvZ=Ms=p|yp;~|_4K#MP>8nOH3h>A5ah*0ivsQ}XDpll!5s+|x7VX+fv zXjwd^7g$^MWPtWFAhJ4L9`6SRY0DxKxhC`hvD$aglroB_bJPb0ZJ+%W?M2kYe>M}| zL}uFB(?oU5Sbbs_&hzogJl_-niN_;DW7b_v-U-i~@l~a+JdI6n!b&***_>IvNvx$u zYemVSjLWlSW!y2f`3{{A{Z}S}!C;M&bGy-a&Hq_h{I!#12{rsnWjVhz;Oh@4i{!w< z%4`|s9FkZ&FTglY~ga2n`@kRfaWdZNyOxc??I-^~ty3`^nI3<(Q z3Ia*W316Syc9KX{aJ87f2g5Dp&Afyi8T)O6x=@uHyGOu(>$Ik zHTb4B7@(r~i)8a`n(2iiZ0<#yUf;gXsMjzJjNQz#7HgHehClL+1p1MHHBTq!R-6oj zzHKq+87D0nmBX{XeN+n7cx(d8naw69$e4^AYnGjEe;_LVUU{T@qgkfu%gu7@EQ#OG zOFuxA1E(=RY&Nq9F)YK-qx(!Ie!nZ+XEIs#87)`b!mu32BAU}``G-w5e8y-ve1}Hd z&*bxUdKTAdH*lqNmUXRoqR4g`^NK4fKOJ2FoRmn5qpA#xG07a#W=Al#362) zi%(h=;_4<6Y z8+hp#PyYO{uF7!Kh-f|M32hkqiNxPvmX#Y%llMMCq(MZb&QZ({G!(TN*Av8Y7)#*w z1(?-a2xhe!#<2$M4T=0x0ui=UDDe1tQK_&MA_ySlm21tf5rG+NsZ=y}&Vk)oUd+#J z%`cJ)%`H$T#+A5EmaJ_Bw(3)?HkSX5GSQ}m@!55;D)FUG?$+;lPnl(j&uaqydO;&u@3tVuz(~Pr$BI5zW7Hj# zu`C#mboH!CeC%hgr+G;>Kdoh{B~ZtTsGebsqks%Qu1-v zDQi)AK#(L8+WV?rB|*hvJ;ByrTlNb`#`Cqwd|N5+OF$R%CV_n0o*)*4<}oF7`1 zh?L1XOZzK>lGW)9(${3ePvo$nPWu&|?JJ@|uT#GM6EaeMjsohZY<>!l9|CfUeCp>J zZdecmNm&_L>0BkEM`eK*C%z<`ck2%s$j#Az5Q8K z3v~%qtRq-R@qCa>`EKHgSVbnM<^)8R!sOH%&o`baaFzsK1WE;0b0Sd;Hxg=0AD*BZ z!*JTD`Xqw2FiimR!T+2pw7`r6lhdT9`Q(f=iL^eowkC%ZP&WC&G86Pm{Ogm@knV3x zOngIm3cW-2xV5tRaTUY!zff-Xv17ZHaYT*s(v=c_AD-K<;H7^kNB(i;)R;*0&UN3o z4q~1l7Lp=-8_THm)Fx^hbs4>ZDh`&hau&v)xvZ~$!SeOnJ7L?CEj_a}wPfjrjaxVf zZPdn}*_K?qY-H1B4Ls#bV-}~s9zQAaTBr>kxJf*r1ny*eFe_%d!}sUpLMbHW}aH^8@40eXXzZWCTCy#ZNZFlU?|ox879L zui7Kz1LK7*(>wXPaSng+7$*$L4PzQ|w7@a%5XPL275HS2Fy`MAz$ab8SbbL=PLL$W z6ghUnF+U=V^^Nr6lL29@e_#_n!QZ){@;!^;d&ZWKZ(ApfEnT-vy}!J2XFa)t-`zmo z#oxA(eA{MWY|G|dY96*i9>%tjoZ$Q0;r?@9OTM`Qm&iD_11`sQlAGmX8sV)=$Xl1f zksG@VK8iT0?^fTfK@IL?t@)j;MVw~JjZ0gpoFF&?bzQv!Lo3$pxOC^PJ(t90{D*Rl zoW>$Joc=&veKOVA)!WxUFtlLtlBLU*uUNN!!$#c3Tefc7zT?u%F82Bd{Rey0RAJ#D z9s#R&pC19y$q~R*CK10p?bEJhCZ|yCza=psbE$RI=Ttw0LTy8m_?@N_MT*2vQE_0YO@Nc>e1eO+4%ncJvdx*m)0Ei+ zY0M%{0~7vw0->x+hJY!Uz>?Yr z7G1NmQzPAX#X+++x$xl8B@YbOKOoJOkwMoM>1*zZHG5@mMxegF%@I^Ize^Z1i~he3l-g>M9=QNW_Dpr)%pre%ygh>mcy)H1%7TH2=) zB(Rj7NB8qQ;X42pxc6W~i~R=rH=b8^@^;n6RQX;%L1~B9hkZ~R@xllbOH-Q2iuzJf zPlRec3)Z?pqJBxGLIB!TB9^j3T`N8}mJ0Lmd6fik2HfmkXhI`MiByFcVp`5;*lg4P z31H{GZ1MRF>P5JSQoFU)&>cY}a0N2-Hf@xnz&7qdywow@x2gs)X0P$__ zP5^^*ODW$XfU}z`p7#R=^_Zt77=`6563@>q73UI!rny=?SgP@0SsKqXm8}Gb+^Hwg z7|}#AOTyN&U{cAbJb5AfL#5(CFWeshy6k1@ir4XzKN1&$e02<9kvwL+dQ}UBCFXZH zd_5M4E`h!E{E`?N^HfKclqb!CiNWK_25h%^p|#MP5v6Cmf!exQ*W5v9x&g7!MmBb` zeYins6LC@nB`DSgvuswCEmUnr<@c&Y=%kY}{@>ucEWcof?ag*W2E{dg6=UF3dI2ETd&Fv2r8OgzugNo;l^KdOgYs^y9nf z6BE04@4oA<-DlU(qNLX|h&k|^)f0c#Nk*Ec5B-kY`R{RowW5HDx>%c2?@+}swE0{> zM=IESc#d?H#@t@8wgPAapj_k<5bKbMgCo9{xZbyvrZ;kn+Q?Z@0E#VHXv~&6i27C` z8iII|EfweV!TmYD3mciwM}+(mETp)hnLSt0dbqU4lWV_;8P3{NJc=GM91R zA@$ut&8JpS;{-v_22e6ETP-RTXj6iCKUJ52ARz|R5Xb5pTIa(Y(<2olabi*G5Km>= zsuwMXyGx`(G6C~aCayxNEfNa?zL8%p6L zeiy615XB@}Rhv{K7S@RVu9iBVc$Df_pzkffQBcUqi&gMS94 z+>N0jarVboF1R-6isa6tj71)BhsjqyKwn=Krs@5;m42xsTpw-hu*$ZYL~V!H85wE} zXq;Al|H2jBjlQAImd@7jzWyP)#_eiAC_IVnkR!O(P=B*1@U=C8jj<>brBj|?t~bln zdec?vO`Ngc<0$tm!c`9S29?&%;0~rGe_E(3vROhqNPIH~k!>{mi>OTJ?^9_JSMb^e zD?dJ4917ithhx+tiZRBLMVBvB{=n*ZMv|;ZZ}G3XCm*nqj-s!9gA>xFo zR^4d1)|4vxdRG|h>@If=J=DK1+=^>w$k*7pYTePg57et)ij@m?xO}2J4M(e{J zl7D4xKTSimQKl(-X!TTr>ZX=b+o(&aqtq?bL(~h@*U*bp(NQJ?9*&=yHFVi^&w`0< zPN{J0NvzS&87A^)0Z#{?iRZsm%HI^vk0Wc{oB&`N9e5UcvC^+wNfQBL-mFq_7O@1+is9*}nSgOLHvmS58V`hJ zX#)DXtd#E+AapE0m;hL$?L!N64f#E#{E$#shwt868asOHI(+N0QvR}d{%EPNZxm
KT23~?3Dw&p)A=062yj$!;@;Sv13 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 literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/images/marker-shadow.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/images/marker-shadow.png new file mode 100644 index 0000000000000000000000000000000000000000..d1e773c715a9b508ebea055c4bb4b0a2ad7f6e52 GIT binary patch literal 797 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 literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/leaflet/images/spritesheet.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/leaflet/images/spritesheet.png new file mode 100644 index 0000000000000000000000000000000000000000..f7035a1cb0294a91eaedd98d2cbc0de6264eb4f9 GIT binary patch literal 1056 zcmV+*1mF9KP)^cqr000000000000000000000001}0u3|)s5-;puuZqwcDub(csIZEHt~3&VXFw9 z=S}Dq3)Dexi9xvEV5Dhi)kbe9jqQL|8Ub3b#khy(tYgUY?(RiCn z90SpaZPZKS$*92+NJaP-|e z*+P3q)ZU8&?Y+?KZ}|`G;oSX4g2Bs{iwx>FbBYFUO+J?;8V0MJqEL$%hwPHfa}=E` zonPVhPJ3_Y*bT&*e94n9J5II0^Sn`xyiS$t&?+#f8zLZOiAMYt%w+x?$gzi^Bif*&Cl|&@@sNZ*q5>VKmx&adr9P98S#y8by=#s z#)GTmiNry=ug>qSKwm`SNz#GV|Is)RT2MTADN_28bJ>37$o``|vVLOJVC?)oIodlg z*~UutGtV_xUY7VI7_NL2W(Pime9pta^!fq-00000000000000000000000000H`3p a1Q-A)p~XwR_AF)q0000 literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/leaflet/leaflet.draw.css b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/leaflet/leaflet.draw.css new file mode 100644 index 000000000..fd57473f5 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/leaflet/leaflet.draw.css @@ -0,0 +1,302 @@ +/* ================================================================== */ +/* Toolbars +/* ================================================================== */ + +.leaflet-draw-section { + position: relative; +} + +.leaflet-draw-toolbar { + margin-top: 12px; +} + +.leaflet-draw-toolbar-top { + margin-top: 0; +} + +.leaflet-draw-toolbar-notop a:first-child { + border-top-right-radius: 0; +} + +.leaflet-draw-toolbar-nobottom a:last-child { + border-bottom-right-radius: 0; +} + +.leaflet-draw-toolbar a { + background-image: url('images/spritesheet.png'); + background-repeat: no-repeat; +} + +.leaflet-retina .leaflet-draw-toolbar a { + background-image: url('images/spritesheet-2x.png'); + background-size: 270px 30px; +} + +.leaflet-draw a { + display: block; + text-align: center; + text-decoration: none; +} + +/* ================================================================== */ +/* Toolbar actions menu +/* ================================================================== */ + +.leaflet-draw-actions { + display: none; + list-style: none; + margin: 0; + padding: 0; + position: absolute; + left: 26px; /* leaflet-draw-toolbar.left + leaflet-draw-toolbar.width */ + top: 0; + white-space: nowrap; +} + +.leaflet-touch .leaflet-draw-actions { + left: 32px; +} + +.leaflet-right .leaflet-draw-actions { + right:26px; + left:auto; +} + +.leaflet-touch .leaflet-right .leaflet-draw-actions { + right:32px; + left:auto; +} + +.leaflet-draw-actions li { + display: inline-block; +} + +.leaflet-draw-actions li:first-child a { + border-left: none; +} + +.leaflet-draw-actions li:last-child a { + -webkit-border-radius: 0 4px 4px 0; + border-radius: 0 4px 4px 0; +} + +.leaflet-right .leaflet-draw-actions li:last-child a { + -webkit-border-radius: 0; + border-radius: 0; +} + +.leaflet-right .leaflet-draw-actions li:first-child a { + -webkit-border-radius: 4px 0 0 4px; + border-radius: 4px 0 0 4px; +} + +.leaflet-draw-actions a { + background-color: #919187; + border-left: 1px solid #AAA; + color: #FFF; + font: 11px/19px "Helvetica Neue", Arial, Helvetica, sans-serif; + line-height: 28px; + text-decoration: none; + padding-left: 10px; + padding-right: 10px; + height: 28px; +} + +.leaflet-touch .leaflet-draw-actions a { + font-size: 12px; + line-height: 30px; + height: 30px; +} + +.leaflet-draw-actions-bottom { + margin-top: 0; +} + +.leaflet-draw-actions-top { + margin-top: 1px; +} + +.leaflet-draw-actions-top a, +.leaflet-draw-actions-bottom a { + height: 27px; + line-height: 27px; +} + +.leaflet-draw-actions a:hover { + background-color: #A0A098; +} + +.leaflet-draw-actions-top.leaflet-draw-actions-bottom a { + height: 26px; + line-height: 26px; +} + +/* ================================================================== */ +/* Draw toolbar +/* ================================================================== */ + +.leaflet-draw-toolbar .leaflet-draw-draw-polyline { + background-position: -2px -2px; +} + +.leaflet-touch .leaflet-draw-toolbar .leaflet-draw-draw-polyline { + background-position: 0 -1px; +} + +.leaflet-draw-toolbar .leaflet-draw-draw-polygon { + background-position: -31px -2px; +} + +.leaflet-touch .leaflet-draw-toolbar .leaflet-draw-draw-polygon { + background-position: -29px -1px; +} + +.leaflet-draw-toolbar .leaflet-draw-draw-rectangle { + background-position: -62px -2px; +} + +.leaflet-touch .leaflet-draw-toolbar .leaflet-draw-draw-rectangle { + background-position: -60px -1px; +} + +.leaflet-draw-toolbar .leaflet-draw-draw-circle { + background-position: -92px -2px; +} + +.leaflet-touch .leaflet-draw-toolbar .leaflet-draw-draw-circle { + background-position: -90px -1px; +} + +.leaflet-draw-toolbar .leaflet-draw-draw-marker { + background-position: -122px -2px; +} + +.leaflet-touch .leaflet-draw-toolbar .leaflet-draw-draw-marker { + background-position: -120px -1px; +} + +/* ================================================================== */ +/* Edit toolbar +/* ================================================================== */ + +.leaflet-draw-toolbar .leaflet-draw-edit-edit { + background-position: -152px -2px; +} + +.leaflet-touch .leaflet-draw-toolbar .leaflet-draw-edit-edit { + background-position: -150px -1px; +} + +.leaflet-draw-toolbar .leaflet-draw-edit-remove { + background-position: -182px -2px; +} + +.leaflet-touch .leaflet-draw-toolbar .leaflet-draw-edit-remove { + background-position: -180px -1px; +} + +.leaflet-draw-toolbar .leaflet-draw-edit-edit.leaflet-disabled { + background-position: -212px -2px; +} + +.leaflet-touch .leaflet-draw-toolbar .leaflet-draw-edit-edit.leaflet-disabled { + background-position: -210px -1px; +} + +.leaflet-draw-toolbar .leaflet-draw-edit-remove.leaflet-disabled { + background-position: -242px -2px; +} + +.leaflet-touch .leaflet-draw-toolbar .leaflet-draw-edit-remove.leaflet-disabled { + background-position: -240px -2px; +} + +/* ================================================================== */ +/* Drawing styles +/* ================================================================== */ + +.leaflet-mouse-marker { + background-color: #fff; + cursor: crosshair; +} + +.leaflet-draw-tooltip { + background: rgb(54, 54, 54); + background: rgba(0, 0, 0, 0.5); + border: 1px solid transparent; + -webkit-border-radius: 4px; + border-radius: 4px; + color: #fff; + font: 12px/18px "Helvetica Neue", Arial, Helvetica, sans-serif; + margin-left: 20px; + margin-top: -21px; + padding: 4px 8px; + position: absolute; + visibility: hidden; + white-space: nowrap; + z-index: 6; +} + +.leaflet-draw-tooltip:before { + border-right: 6px solid black; + border-right-color: rgba(0, 0, 0, 0.5); + border-top: 6px solid transparent; + border-bottom: 6px solid transparent; + content: ""; + position: absolute; + top: 7px; + left: -7px; +} + +.leaflet-error-draw-tooltip { + background-color: #F2DEDE; + border: 1px solid #E6B6BD; + color: #B94A48; +} + +.leaflet-error-draw-tooltip:before { + border-right-color: #E6B6BD; +} + +.leaflet-draw-tooltip-single { + margin-top: -12px +} + +.leaflet-draw-tooltip-subtext { + color: #f8d5e4; +} + +.leaflet-draw-guide-dash { + font-size: 1%; + opacity: 0.6; + position: absolute; + width: 5px; + height: 5px; +} + +/* ================================================================== */ +/* Edit styles +/* ================================================================== */ + +.leaflet-edit-marker-selected { + background: rgba(254, 87, 161, 0.1); + border: 4px dashed rgba(254, 87, 161, 0.6); + -webkit-border-radius: 4px; + border-radius: 4px; +} + +.leaflet-edit-move { + cursor: move; +} + +.leaflet-edit-resize { + cursor: pointer; +} + +/* ================================================================== */ +/* Old IE styles +/* ================================================================== */ + +.leaflet-oldie .leaflet-draw-toolbar { + border: 1px solid #999; +} \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/leaflet_fullscreen/fullscreen.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/leaflet_fullscreen/fullscreen.png new file mode 100644 index 0000000000000000000000000000000000000000..fdd3a8eedc5934405f8a7c5703e4ed6f9eea1674 GIT binary patch literal 142 zcmeAS@N?(olHy`uVBq!ia0vp^Qb26N#0(@~HXV=#Qk(%kA+A8$0StCNPUr=4m`Z~D zf*BfSYx_w6c}AWtjv*4^$q5Q#8EX@wt~R)28yFZoT+GSn^y}i=#bye(>~pjg|2>Ri iz1Y#*wsP^hdIl?Bx&5~ir~LuyX7F_Nb6Mw<&;$U98!CVR literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/leaflet_fullscreen/fullscreen@2x.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/leaflet_fullscreen/fullscreen@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..f41a81b8105fdbdf46a79092ec71dccf8a015b5b GIT binary patch literal 155 zcmeAS@N?(olHy`uVBq!ia0vp^CP19Q#0(@4M_GRXQk(%kA+A8$0StCNPUr=4m`Z~D zf*BfSYx_w6dG?+zjv*GOlM^ID8nUmhVijm|k(;ZztDSrAUe7d}o+ibK>z0P;IzCEW v8`U{wUHICl)+Ys0p96A_7u?L)<;Kpi(z2mi^Ya=bpivB-u6{1-oD!Mli { + float: left; +} + +.navbar-nav>li>a { + padding-top: 15px; + padding-bottom: 15px; +} + +.navbar-form { + width: auto; + padding-top: 0; + padding-bottom: 0; + margin-right: 0; + margin-left: 0; + border: 0; + -webkit-box-shadow: none; + box-shadow: none; +} + +.navbar-form .form-group { + display: inline-block; + margin-bottom: 0; + vertical-align: middle; +} + +.navbar-form .has-feedback .form-control-feedback { + top: 0; +} + +.col-md-2 { + width: 16.66666667%; +} + +.col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 { + float: left; +} + +.uk-offcanvas-page { + margin: 0 !important; + padding-left: 270 !important; + position: fixed; + -webkit-transition: margin-left .3s ease-in-out; + transition: margin-left .3s ease-in-out; +} + +.modal-content { + -webkit-box-shadow: 0 5px 15px rgba(0,0,0,.5); + box-shadow: 0 5px 15px rgba(0,0,0,.5); +} + diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/map.css b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/map.css new file mode 100644 index 000000000..8c1c448c7 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/map.css @@ -0,0 +1,54 @@ + +.navbar { + background-color: rgba(54, 51, 45, 0.7); + background: rgba(54, 51, 45, 0.7); + color: rgba(0, 0, 0, 0.8); + border-radius: 0px 0px 0px 0px; + -webkit-box-shadow: 0px 16px 29px -17px rgba(33, 20, 4, 1); + -moz-box-shadow: 0px 16px 29px -17px rgba(33, 20, 4, 1); + box-shadow: 0px 16px 29px -17px rgba(33, 20, 4, 1); + border: none; + margin: auto; + z-index: 0; +} + +.uk-notify { + z-index: 2147483647 !important; + +} + +.leaflet-top { + top: 30px !important; +} +#mapSearch { + border: 0; +} + +#container { + position: fixed; + top: 0px; +} + +.leaflet-top { + /*To prevent cutting off the top element by header bar in dashboard*/ + top: 50px; +} + +.leaflet-right { + /* to prevent showing layers controller over objectInfor side pane */ + z-index: 0; +} + +.leaflet-popup-content { + width: 200px; + margin: 6px; +} + +#objectInfoCloseButton:hover { + cursor: pointer; + color: firebrick; +} + +.sectionJointStyle { + stroke-dasharray: 3, 20; +} \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/style.css b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/style.css new file mode 100644 index 000000000..b225f7915 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/style.css @@ -0,0 +1,34 @@ +/* + * Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. + * + * WSO2 Inc. licenses this file to you 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. + */ + +/*html, body {*/ + /*height: 100%;*/ +/*}*/ + +#map { + height: 100%; + width: 100%; +} + +.sectionJointStyle { + stroke-dasharray: 3, 20; +} + +.leaflet-control-attribution.leaflet-control { + font-size: 8px; +} \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/uikit/LICENSES b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/uikit/LICENSES new file mode 100644 index 000000000..fd675ecad --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/uikit/LICENSES @@ -0,0 +1,7 @@ +Copyright (c) YOOtheme GmbH + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/uikit/addons/uikit.addons.css b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/uikit/addons/uikit.addons.css new file mode 100644 index 000000000..b608362ab --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/uikit/addons/uikit.addons.css @@ -0,0 +1,1124 @@ +/*! UIkit 2.8.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */ + +/* ======================================================================== + Component: Dotnav + ========================================================================== */ +/* + * 1. Remove default list style + * 2. Remove whitespace between child elements when using `inline-block` + */ +.uk-dotnav { + /* 1 */ + padding: 0; + list-style: none; + /* 2 */ + font-size: 0.001px; +} +/* Items + ========================================================================== */ +/* + * 1. Reset whitespace hack + * 2. Remove the gap at the bottom of it container + */ +.uk-dotnav > li { + display: inline-block; + /* 1 */ + font-size: 1rem; + /* 2 */ + vertical-align: top; +} +.uk-dotnav > li:nth-child(n+2) { + margin-left: 15px; +} +/* + * Items + * 1. Remove the gap at the bottom of it container + * 2. Hide text if present + */ +.uk-dotnav > li > a { + display: inline-block; + -moz-box-sizing: content-box; + box-sizing: content-box; + width: 20px; + height: 20px; + border-radius: 50%; + background: rgba(50, 50, 50, 0.1); + /* 1 */ + vertical-align: top; + /* 2 */ + overflow: hidden; + text-indent: -999%; +} +/* + * Hover + * 1. Apply hover style also to focus state + * 2. Remove default focus style + */ +.uk-dotnav > li > a:hover, +.uk-dotnav > li > a:focus { + background: rgba(50, 50, 50, 0.4); + /* 2 */ + outline: none; +} +/* OnClick */ +.uk-dotnav > li > a:active { + background: rgba(50, 50, 50, 0.6); +} +/* Active */ +.uk-dotnav > li.uk-active > a { + background: rgba(50, 50, 50, 0.4); +} +/* Modifier: 'dotnav-vertical' + ========================================================================== */ +.uk-dotnav-vertical > li { + display: block; +} +.uk-dotnav-vertical > li:nth-child(n+2) { + margin-left: 0; + margin-top: 15px; +} +/* ======================================================================== + Component: Slidenav + ========================================================================== */ +/* + * 1. Required for `a` elements + * 2. Dimension + * 3. Style + */ +.uk-slidenav { + /* 1 */ + display: inline-block; + /* 2 */ + -moz-box-sizing: border-box; + box-sizing: border-box; + width: 60px; + height: 60px; + /* 3 */ + line-height: 60px; + color: rgba(50, 50, 50, 0.4); + font-size: 60px; + text-align: center; +} +/* + * Hover + * 1. Apply hover style also to focus state + * 2. Remove default focus style + * 3. Required for `a` elements + * 4. Style + */ +.uk-slidenav:hover, +.uk-slidenav:focus { + /* 2 */ + outline: none; + /* 3 */ + text-decoration: none; + /* 4 */ + color: rgba(50, 50, 50, 0.7); + cursor: pointer; +} +/* Active */ +.uk-slidenav:active { + color: rgba(50, 50, 50, 0.9); +} +/* + * Icons + */ +.uk-slidenav-previous:before { + content: "\f104"; + font-family: FontAwesome; +} +.uk-slidenav-next:before { + content: "\f105"; + font-family: FontAwesome; +} +/* Sub-object: `uk-slidenav-position` + ========================================================================== */ +/* + * 1. Container width fits its content + * 2. Corrects max-width behavior (3.) if padding and border are used + * 3. Responsive behavior + * 4. Create position context for dropdowns + */ +.uk-slidenav-position { + /* 1 */ + display: inline-block; + /* 2 */ + -moz-box-sizing: border-box; + box-sizing: border-box; + /* 3 */ + max-width: 100%; + /* 4 */ + position: relative; +} +/* + * Center vertically + */ +.uk-slidenav-position .uk-slidenav { + display: none; + position: absolute; + top: 50%; + margin-top: -30px; +} +.uk-slidenav-position:hover .uk-slidenav { + display: block; +} +.uk-slidenav-position .uk-slidenav-previous { + left: 20px; +} +.uk-slidenav-position .uk-slidenav-next { + right: 20px; +} +/* ======================================================================== + Component: Form advanced + Note: Only works in Webkit at the moment + ========================================================================== */ +/* + * 1. Style + * 2. Makes box more robust so it clips the child element + * 3. Vertical alignment + * 4. Remove default style + * 5. Fix black background on iOS + */ +.uk-form input[type="radio"], +.uk-form input[type="checkbox"] { + /* 1 */ + display: inline-block; + height: 14px; + width: 14px; + border: 1px solid #aaaaaa; + /* 2 */ + overflow: hidden; + /* 3 */ + margin-top: -4px; + vertical-align: middle; + /* 4 */ + -webkit-appearance: none; + outline: 0; + /* 5 */ + background: transparent; +} +/* Radio */ +.uk-form input[type="radio"] { + border-radius: 50%; +} +/* + * Checked + */ +.uk-form input[type=checkbox]:checked:before, +.uk-form input[type=radio]:checked:before { + display: block; +} +/* Radio */ +.uk-form input[type=radio]:checked:before { + content: ''; + width: 8px; + height: 8px; + margin: 2px auto 0; + border-radius: 50%; + background: #00a8e6; +} +/* Checkbox */ +.uk-form input[type=checkbox]:checked:before { + content: "\f00c"; + font-family: FontAwesome; + font-size: 12px; + -webkit-font-smoothing: antialiased; + text-align: center; + line-height: 12px; + color: #00a8e6; +} +/* + * Disabled + */ +.uk-form input[type=radio]:disabled, +.uk-form input[type=checkbox]:disabled { + border-color: #dddddd; +} +.uk-form input[type=radio]:disabled:checked:before { + background-color: #aaaaaa; +} +.uk-form input[type=checkbox]:disabled:checked:before { + color: #aaaaaa; +} +/* ======================================================================== + Component: Form file + ========================================================================== */ +/* + * 1. Behave like form elements + * 2. Create position context for dropdowns + * 3. Clip content + */ +.uk-form-file { + /* 1 */ + display: inline-block; + vertical-align: middle; + /* 2 */ + position: relative; + /* 3 */ + overflow: hidden; +} +/* + * 1. Required for Firefox + * 2. Expand height and required for the cursor + */ +.uk-form-file input[type="file"] { + position: absolute; + top: 0; + z-index: 1; + width: 100%; + opacity: 0; + cursor: pointer; + /* 1 */ + left: 0; + /* 2 */ + font-size: 500px; +} +/* ======================================================================== + Component: Form password + ========================================================================== */ +.uk-form-password { + position: relative; + display: inline-block; + max-width: 100%; +} +.uk-form-password-toggle { + display: block; + position: absolute; + top: 50%; + right: 10px; + margin-top: -6px; + font-size: 13px; + line-height: 13px; + color: #999999; +} +.uk-form-password-toggle:hover { + color: #999999; + text-decoration: none; +} +.uk-form-password > input { + padding-right: 50px !important; +} +/* ======================================================================== + Component: Form select + ========================================================================== */ +/* + * 1. Behave like form elements + * 2. Create position context for dropdowns + * 3. Clip content + */ +.uk-form-select { + /* 1 */ + display: inline-block; + vertical-align: middle; + /* 2 */ + position: relative; + /* 3 */ + overflow: hidden; +} +/* + * 1. Required for Firefox + * 1. Required for Webkit to make `height` work + */ +.uk-form-select select { + position: absolute; + top: 0; + z-index: 1; + width: 100%; + height: 100%; + opacity: 0; + cursor: pointer; + /* 1 */ + left: 0; + /* 2 */ + -webkit-appearance: none; +} +/* ======================================================================== + Component: Placeholder + ========================================================================== */ +.uk-placeholder { + margin-bottom: 15px; + padding: 20px; + border: 1px dashed #dddddd; + background: #fafafa; + color: #444444; +} +/* + * Add margin if adjacent element + */ +* + .uk-placeholder { + margin-top: 15px; +} +/* + * Remove margin from the last-child + */ +.uk-placeholder > :last-child { + margin-bottom: 0; +} +/* Modifier: `uk-placeholder-large` + ========================================================================== */ +.uk-placeholder-large { + padding-top: 80px; + padding-bottom: 80px; +} +/* ======================================================================== + Component: Autocomplete + ========================================================================== */ +/* + * 1. Behave like form elements + * 2. Create position context for dropdowns + */ +.uk-autocomplete { + /* 1 */ + display: inline-block; + vertical-align: middle; + /* 2 */ + position: relative; +} +/* Nav modifier `uk-nav-autocomplete` + ========================================================================== */ +/* + * Items + */ +.uk-nav-autocomplete > li > a { + color: #444444; +} +/* + * Active + * 1. Remove default focus style + */ +.uk-nav-autocomplete > li.uk-active > a { + background: #00a8e6; + color: #ffffff; + /* 1 */ + outline: none; +} +/* + * Sub-object: `uk-nav-header` + */ +.uk-nav-autocomplete .uk-nav-header { + color: #999999; +} +/* + * Sub-object: `uk-nav-divider` + */ +.uk-nav-autocomplete .uk-nav-divider { + border-top: 1px solid #dddddd; +} +/* ======================================================================== + Component: Datepicker + ========================================================================== */ +/* + * Reset dropdown width + */ +.uk-datepicker { + width: auto; +} +/* Sub-object: `uk-datepicker-nav` +========================================================================== */ +.uk-datepicker-nav { + margin-bottom: 15px; + text-align: center; + line-height: 20px; +} +/* + * Micro clearfix + */ +.uk-datepicker-nav:before, +.uk-datepicker-nav:after { + content: " "; + display: table; +} +.uk-datepicker-nav:after { + clear: both; +} +/* + * Previous and next navigation + */ +.uk-datepicker-nav a { + color: #444444; + text-decoration: none; +} +.uk-datepicker-nav a:hover { + color: #444444; +} +.uk-datepicker-previous { + float: left; +} +.uk-datepicker-next { + float: right; +} +.uk-datepicker-previous:after, +.uk-datepicker-next:after { + width: 20px; + font-family: FontAwesome; +} +.uk-datepicker-previous:after { + content: "\f053"; +} +.uk-datepicker-next:after { + content: "\f054"; +} +/* Sub-object: `uk-datepicker-heading` +========================================================================== */ +/* Sub-object: `uk-datepicker-table` +========================================================================== */ +/* Block element behavior */ +.uk-datepicker-table { + width: 100%; +} +.uk-datepicker-table th, +.uk-datepicker-table td { + padding: 2px; +} +.uk-datepicker-table th { + font-size: 12px; +} +/* + * Item + */ +.uk-datepicker-table a { + display: block; + width: 26px; + line-height: 24px; + text-align: center; + color: #444444; + text-decoration: none; +} +/* + * Sub-object: `uk-datepicker-table-muted` + */ +a.uk-datepicker-table-muted { + color: #999999; +} +/* + * Hover + * 1. Apply hover style also to focus state + * 2. Remove default focus style + */ +.uk-datepicker-table a:hover, +.uk-datepicker-table a:focus { + background-color: #dddddd; + color: #444444; + /* 2 */ + outline: none; +} +/* OnClick */ +.uk-datepicker-table a:active { + background-color: #cccccc; + color: #444444; +} +/* + * Active + */ +.uk-datepicker-table a.uk-active { + background: #00a8e6; + color: #ffffff; +} +/* ======================================================================== + Component: HTML editor + ========================================================================== */ +/* Sub-object `uk-htmleditor-navbar` + ========================================================================== */ +.uk-htmleditor-navbar { + background: #eeeeee; +} +/* + * Micro clearfix + */ +.uk-htmleditor-navbar:before, +.uk-htmleditor-navbar:after { + content: " "; + display: table; +} +.uk-htmleditor-navbar:after { + clear: both; +} +/* Sub-object `uk-htmleditor-navbar-nav` + ========================================================================== */ +.uk-htmleditor-navbar-nav { + margin: 0; + padding: 0; + list-style: none; + float: left; +} +.uk-htmleditor-navbar-nav > li { + float: left; +} +/* + * 1. Dimensions + * 2. Style + */ +.uk-htmleditor-navbar-nav > li > a { + display: block; + -moz-box-sizing: border-box; + box-sizing: border-box; + text-decoration: none; + /* 1 */ + height: 40px; + padding: 0 15px; + line-height: 40px; + /* 2 */ + color: #444444; + font-size: 11px; + cursor: pointer; +} +/* + * Hover + * 1. Apply hover style also to focus state + * 2. Remove default focus style + */ +.uk-htmleditor-navbar-nav > li:hover > a, +.uk-htmleditor-navbar-nav > li > a:focus { + background-color: #f5f5f5; + color: #444444; + outline: none; + /* 2 */ +} +/* OnClick */ +.uk-htmleditor-navbar-nav > li > a:active { + background-color: #dddddd; + color: #444444; +} +/* Active */ +.uk-htmleditor-navbar-nav > li.uk-active > a { + background-color: #f5f5f5; + color: #444444; +} +/* Sub-object: `uk-htmleditor-navbar-flip` + ========================================================================== */ +.uk-htmleditor-navbar-flip { + float: right; +} +/* Sub-object for special buttons + ========================================================================== */ +[data-mode='split'] .uk-htmleditor-button-code, +[data-mode='split'] .uk-htmleditor-button-preview { + display: none; +} +/* Sub-object `uk-htmleditor-content` + ========================================================================== */ +.uk-htmleditor-content { + border-left: 1px solid #dddddd; + border-right: 1px solid #dddddd; + border-bottom: 1px solid #dddddd; + background: #ffffff; +} +/* + * Micro clearfix + */ +.uk-htmleditor-content:before, +.uk-htmleditor-content:after { + content: " "; + display: table; +} +.uk-htmleditor-content:after { + clear: both; +} +/* Modifier `uk-htmleditor-fullscreen` + ========================================================================== */ +.uk-htmleditor-fullscreen { + position: fixed; + top: 0; + left: 0; + right: 0; + bottom: 0; + z-index: 990; +} +.uk-htmleditor-fullscreen .uk-htmleditor-content { + position: absolute; + top: 40px; + left: 0; + right: 0; + bottom: 0; +} +.uk-htmleditor-fullscreen .uk-icon-expand:before { + content: "\f066"; +} +/* Sub-objects `uk-htmleditor-code` and `uk-htmleditor-preview` + ========================================================================== */ +.uk-htmleditor-code, +.uk-htmleditor-preview { + -moz-box-sizing: border-box; + box-sizing: border-box; +} +.uk-htmleditor-preview { + padding: 20px; + overflow-y: scroll; +} +/* + * Tab view + */ +[data-mode='tab'][data-active-tab='code'] .uk-htmleditor-preview, +[data-mode='tab'][data-active-tab='preview'] .uk-htmleditor-code { + display: none; +} +/* + * Split view + */ +[data-mode='split'] .uk-htmleditor-code, +[data-mode='split'] .uk-htmleditor-preview { + float: left; + width: 50%; +} +[data-mode='split'] .uk-htmleditor-code { + border-right: 1px solid #eeeeee; +} +/* CodeMirror modifications + ========================================================================== */ +.uk-htmleditor .CodeMirror { + padding: 10px; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +/* ======================================================================== + Component: Nestable + ========================================================================== */ +.uk-nestable { + padding: 0; + list-style: none; +} +/* Sub-object `uk-nestable-list` + ========================================================================== */ +.uk-nestable-list { + margin: 0; + padding-left: 40px; + list-style: none; +} +/* Sub-modifier `uk-nestable-list-dragged` + ========================================================================== */ +.uk-nestable-list-dragged { + position: absolute; + z-index: 1050; + padding-left: 0; + pointer-events: none; +} +/* Sub-object `uk-nestable-item` + ========================================================================== */ +.uk-nestable-item { + margin-bottom: 10px; + padding: 5px; + background: #f5f5f5; +} +/* Sub-object `uk-nestable-placeholder` + * The placeholder which marks the drop area + ========================================================================== */ +.uk-nestable-placeholder { + -moz-box-sizing: border-box; + box-sizing: border-box; + margin-bottom: 10px; + border: 1px dashed #dddddd; +} +/* Sub-object `uk-nestable-empty` + * The style of an empty list + ========================================================================== */ +.uk-nestable-empty { + min-height: 40px; +} +/* Sub-object `uk-nestable-handle` + ========================================================================== */ +.uk-nestable-handle { + display: inline-block; + font-size: 18px; + color: #dddddd; +} +/* Hover */ +.uk-nestable-handle:hover { + cursor: move; +} +/* Icon */ +.uk-nestable-handle:after { + content: "\f0c9"; + font-family: FontAwesome; +} +/* Sub-object `uk-nestable-moving` + ========================================================================== */ +.uk-nestable-moving, +.uk-nestable-moving * { + cursor: move; +} +/* Sub-object `[data-action='toggle']` + ========================================================================== */ +/* Hidden by default */ +[data-nestable-action='toggle'] { + display: inline-block; + color: #999999; + visibility: hidden; +} +/* Hover */ +[data-nestable-action='toggle']:hover { + color: #444444; + cursor: pointer; +} +/* Icon */ +[data-nestable-action='toggle']:after { + content: "\f147"; + font-family: FontAwesome; +} +/* + * Show if nested + */ +.uk-parent > .uk-nestable-item [data-nestable-action='toggle'] { + visibility: visible; +} +/* + * Collapsed + */ +.uk-collapsed > .uk-nestable-item [data-nestable-action='toggle']:after { + content: "\f196"; +} +.uk-collapsed .uk-nestable-list { + display: none; +} +/* ======================================================================== + Component: Notify + ========================================================================== */ +/* + * Message container for positioning + */ +.uk-notify { + position: fixed; + top: 10px; + left: 10px; + z-index: 1040; + -moz-box-sizing: border-box; + box-sizing: border-box; + width: 350px; +} +/* Position modifiers +========================================================================== */ +.uk-notify-top-right, +.uk-notify-bottom-right { + left: auto; + right: 10px; +} +.uk-notify-top-center, +.uk-notify-bottom-center { + left: 50%; + margin-left: -175px; +} +.uk-notify-bottom-left, +.uk-notify-bottom-right, +.uk-notify-bottom-center { + top: auto; + bottom: 10px; +} +/* Responsiveness +========================================================================== */ +/* Phones portrait and smaller */ +@media (max-width: 479px) { + /* + * Fit in small screen + */ + .uk-notify { + left: 10px; + right: 10px; + width: auto; + margin: 0; + } +} +/* Sub-object: `uk-notify-message` +========================================================================== */ +.uk-notify-message { + position: relative; + margin-bottom: 10px; + padding: 15px; + background: #444444; + color: #ffffff; + font-size: 16px; + line-height: 22px; + cursor: pointer; +} +/* Close in notify + ========================================================================== */ +.uk-notify-message > .uk-close { + visibility: hidden; + float: right; +} +.uk-notify-message:hover > .uk-close { + visibility: visible; +} +/* Modifier: `uk-alert-info` + ========================================================================== */ +.uk-notify-message-primary { + background: #ebf7fd; + color: #2d7091; +} +/* Modifier: `uk-alert-success` + ========================================================================== */ +.uk-notify-message-success { + background: #f2fae3; + color: #659f13; +} +/* Modifier: `uk-notify-message-warning` + ========================================================================== */ +.uk-notify-message-warning { + background: #fffceb; + color: #e28327; +} +/* Modifier: `uk-notify-message-danger` + ========================================================================== */ +.uk-notify-message-danger { + background: #fff1f0; + color: #d85030; +} +/* ======================================================================== + Component: Search + ========================================================================== */ +/* + * 1. Create position context for dropdowns + * 2. Needed for `form` element + */ +.uk-search { + display: inline-block; + /* 1 */ + position: relative; + /* 2 */ + margin: 0; +} +/* + * Icon + */ +.uk-search:before { + content: "\f002"; + position: absolute; + top: 0; + left: 0; + width: 30px; + line-height: 30px; + text-align: center; + font-family: FontAwesome; + font-size: 14px; + color: rgba(0, 0, 0, 0.2); +} +/* Sub-object `uk-search-field` + ========================================================================== */ +/* + * 1. Needed to reset iOS `input[type="search"]` appearance + */ +.uk-search-field { + width: 120px; + height: 30px; + padding: 0 30px; + border: 1px solid rgba(0, 0, 0, 0); + background: rgba(0, 0, 0, 0); + color: #444444; + -webkit-transition: all linear 0.2s; + transition: all linear 0.2s; + /* 1 */ + border-radius: 0; +} +/* + * Needed to reset iOS `input[type="search"]` appearance + * Higher specificity to override appearance set by normalize.less + */ +input.uk-search-field { + -webkit-appearance: none; +} +/* Placeholder */ +.uk-search-field:-ms-input-placeholder { + color: #999999; +} +.uk-search-field::-moz-placeholder { + color: #999999; +} +.uk-search-field::-webkit-input-placeholder { + color: #999999; +} +/* Removes cancel button in IE10 */ +.uk-search-field::-ms-clear { + display: none; +} +/* Focus */ +.uk-search-field:focus { + outline: 0; +} +/* Focus + active */ +.uk-search-field:focus, +.uk-search.uk-active .uk-search-field { + width: 180px; +} +/* Sub-object `uk-search-close` + ========================================================================== */ +/* + * 1. Required for `button` elements + * 2. Needed for Safari + */ +.uk-search-close { + display: none; + position: absolute; + top: 0; + right: 0; + width: 30px; + line-height: 30px; + text-align: center; + font-size: 14px; + color: rgba(0, 0, 0, 0.2); + /* 1. */ + padding: 0; + border: 0; + -webkit-appearance: none; + /* 2. */ + background: transparent; +} +.uk-loading > .uk-search-close, +.uk-active > .uk-search-close { + display: block; +} +/* + * Icon + */ +.uk-search-close:after { + display: block; + content: "\f00d"; + font-family: FontAwesome; +} +/* Loading icon */ +.uk-loading > .uk-search-close:after { + content: "\f110"; + -webkit-animation: uk-spin 2s infinite linear; + animation: uk-spin 2s infinite linear; +} +/* Dropdown modifier: `uk-dropdown-search` + ========================================================================== */ +.uk-dropdown-search { + width: 300px; + margin-top: 0; + background: #f5f5f5; + color: #444444; +} +.uk-open > .uk-dropdown-search { + -webkit-animation: uk-slide-top-fixed 0.2s ease-in-out; + animation: uk-slide-top-fixed 0.2s ease-in-out; +} +/* + * Dependency `uk-navbar-flip` + */ +.uk-navbar-flip .uk-dropdown-search { + margin-top: 5px; + margin-right: -15px; +} +/* Nav modifier `uk-nav-search` + ========================================================================== */ +/* + * Items + */ +.uk-nav-search > li > a { + color: #444444; +} +/* + * Active + * 1. Remove default focus style + */ +.uk-nav-search > li.uk-active > a { + background: #00a8e6; + color: #ffffff; + /* 1 */ + outline: none; +} +/* + * Sub-object: `uk-nav-header` + */ +.uk-nav-search .uk-nav-header { + color: #999999; +} +/* + * Sub-object: `uk-nav-divider` + */ +.uk-nav-search .uk-nav-divider { + border-top: 1px solid #dddddd; +} +/* + * Nested items + */ +.uk-nav-search ul a { + color: #0077dd; +} +.uk-nav-search ul a:hover { + color: #005599; +} +/* Search in offcanvas + ========================================================================== */ +.uk-offcanvas .uk-search { + display: block; + margin: 20px 15px; +} +.uk-offcanvas .uk-search:before { + color: #777777; +} +.uk-offcanvas .uk-search-field { + width: 100%; + border-color: rgba(0, 0, 0, 0); + background: #1a1a1a; + color: #cccccc; +} +.uk-offcanvas .uk-search-field:-ms-input-placeholder { + color: #777777; +} +.uk-offcanvas .uk-search-field::-moz-placeholder { + color: #777777; +} +.uk-offcanvas .uk-search-field::-webkit-input-placeholder { + color: #777777; +} +/* ======================================================================== + Component: Sortable + ========================================================================== */ +.uk-sortable { + position: relative; +} +/* + * Makes text unselectable + */ +.uk-sortable > * { + -moz-user-select: none; + -webkit-user-select: none; + -ms-user-select: none; + user-select: none; +} +/* + * Prevents images and links from being dragged (default browser behavior) + * Currently only works in Webkit + */ +.uk-sortable > * * { + -webkit-user-drag: none; + user-drag: none; +} +/* Sub-modifier `uk-sortable-dragged` + ========================================================================== */ +.uk-sortable-dragged { + position: absolute; + z-index: 1050; + pointer-events: none; +} +/* Sub-modifier `uk-sortable-placeholder` + ========================================================================== */ +.uk-sortable-placeholder { + opacity: 0; +} +/* Sub-modifier `uk-sortable-over` + * Only if `warp:true` + ========================================================================== */ +.uk-sortable-over { + opacity: 0.3; +} +/* Sub-object `uk-nestable-moving` + ========================================================================== */ +.uk-sortable-moving, +.uk-sortable-moving * { + cursor: move; +} +/* ======================================================================== + Component: Sticky + ========================================================================== */ +.uk-sticky { + z-index: 980; +} +/* ======================================================================== + Component: Upload + ========================================================================== */ +/* + * Create a box-shadow when dragging a file over the upload area + */ +.uk-dragover { + box-shadow: 0 0 20px rgba(100, 100, 100, 0.3); +} diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/uikit/addons/uikit.addons.min.css b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/uikit/addons/uikit.addons.min.css new file mode 100644 index 000000000..fc24fd2be --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/uikit/addons/uikit.addons.min.css @@ -0,0 +1,3 @@ +/*! UIkit 2.8.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */ + +.uk-dotnav{padding:0;list-style:none;font-size:0}.uk-dotnav>li{display:inline-block;font-size:1rem;vertical-align:top}.uk-dotnav>li:nth-child(n+2){margin-left:15px}.uk-dotnav>li>a{display:inline-block;-moz-box-sizing:content-box;box-sizing:content-box;width:20px;height:20px;border-radius:50%;background:rgba(50,50,50,.1);vertical-align:top;overflow:hidden;text-indent:-999%}.uk-dotnav>li>a:hover,.uk-dotnav>li>a:focus{background:rgba(50,50,50,.4);outline:0}.uk-dotnav>li>a:active{background:rgba(50,50,50,.6)}.uk-dotnav>li.uk-active>a{background:rgba(50,50,50,.4)}.uk-dotnav-vertical>li{display:block}.uk-dotnav-vertical>li:nth-child(n+2){margin-left:0;margin-top:15px}.uk-slidenav{display:inline-block;-moz-box-sizing:border-box;box-sizing:border-box;width:60px;height:60px;line-height:60px;color:rgba(50,50,50,.4);font-size:60px;text-align:center}.uk-slidenav:hover,.uk-slidenav:focus{outline:0;text-decoration:none;color:rgba(50,50,50,.7);cursor:pointer}.uk-slidenav:active{color:rgba(50,50,50,.9)}.uk-slidenav-previous:before{content:"\f104";font-family:FontAwesome}.uk-slidenav-next:before{content:"\f105";font-family:FontAwesome}.uk-slidenav-position{display:inline-block;-moz-box-sizing:border-box;box-sizing:border-box;max-width:100%;position:relative}.uk-slidenav-position .uk-slidenav{display:none;position:absolute;top:50%;margin-top:-30px}.uk-slidenav-position:hover .uk-slidenav{display:block}.uk-slidenav-position .uk-slidenav-previous{left:20px}.uk-slidenav-position .uk-slidenav-next{right:20px}.uk-form input[type=radio],.uk-form input[type=checkbox]{display:inline-block;height:14px;width:14px;border:1px solid #aaa;overflow:hidden;margin-top:-4px;vertical-align:middle;-webkit-appearance:none;outline:0;background:0 0}.uk-form input[type=radio]{border-radius:50%}.uk-form input[type=checkbox]:checked:before,.uk-form input[type=radio]:checked:before{display:block}.uk-form input[type=radio]:checked:before{content:'';width:8px;height:8px;margin:2px auto 0;border-radius:50%;background:#00a8e6}.uk-form input[type=checkbox]:checked:before{content:"\f00c";font-family:FontAwesome;font-size:12px;-webkit-font-smoothing:antialiased;text-align:center;line-height:12px;color:#00a8e6}.uk-form input[type=radio]:disabled,.uk-form input[type=checkbox]:disabled{border-color:#ddd}.uk-form input[type=radio]:disabled:checked:before{background-color:#aaa}.uk-form input[type=checkbox]:disabled:checked:before{color:#aaa}.uk-form-file{display:inline-block;vertical-align:middle;position:relative;overflow:hidden}.uk-form-file input[type=file]{position:absolute;top:0;z-index:1;width:100%;opacity:0;cursor:pointer;left:0;font-size:500px}.uk-form-password{position:relative;display:inline-block;max-width:100%}.uk-form-password-toggle{display:block;position:absolute;top:50%;right:10px;margin-top:-6px;font-size:13px;line-height:13px;color:#999}.uk-form-password-toggle:hover{color:#999;text-decoration:none}.uk-form-password>input{padding-right:50px!important}.uk-form-select{display:inline-block;vertical-align:middle;position:relative;overflow:hidden}.uk-form-select select{position:absolute;top:0;z-index:1;width:100%;height:100%;opacity:0;cursor:pointer;left:0;-webkit-appearance:none}.uk-placeholder{margin-bottom:15px;padding:20px;border:1px dashed #ddd;background:#fafafa;color:#444}*+.uk-placeholder{margin-top:15px}.uk-placeholder>:last-child{margin-bottom:0}.uk-placeholder-large{padding-top:80px;padding-bottom:80px}.uk-autocomplete{display:inline-block;vertical-align:middle;position:relative}.uk-nav-autocomplete>li>a{color:#444}.uk-nav-autocomplete>li.uk-active>a{background:#00a8e6;color:#fff;outline:0}.uk-nav-autocomplete .uk-nav-header{color:#999}.uk-nav-autocomplete .uk-nav-divider{border-top:1px solid #ddd}.uk-datepicker{width:auto}.uk-datepicker-nav{margin-bottom:15px;text-align:center;line-height:20px}.uk-datepicker-nav:before,.uk-datepicker-nav:after{content:" ";display:table}.uk-datepicker-nav:after{clear:both}.uk-datepicker-nav a{color:#444;text-decoration:none}.uk-datepicker-nav a:hover{color:#444}.uk-datepicker-previous{float:left}.uk-datepicker-next{float:right}.uk-datepicker-previous:after,.uk-datepicker-next:after{width:20px;font-family:FontAwesome}.uk-datepicker-previous:after{content:"\f053"}.uk-datepicker-next:after{content:"\f054"}.uk-datepicker-table{width:100%}.uk-datepicker-table th,.uk-datepicker-table td{padding:2px}.uk-datepicker-table th{font-size:12px}.uk-datepicker-table a{display:block;width:26px;line-height:24px;text-align:center;color:#444;text-decoration:none}a.uk-datepicker-table-muted{color:#999}.uk-datepicker-table a:hover,.uk-datepicker-table a:focus{background-color:#ddd;color:#444;outline:0}.uk-datepicker-table a:active{background-color:#ccc;color:#444}.uk-datepicker-table a.uk-active{background:#00a8e6;color:#fff}.uk-htmleditor-navbar{background:#eee}.uk-htmleditor-navbar:before,.uk-htmleditor-navbar:after{content:" ";display:table}.uk-htmleditor-navbar:after{clear:both}.uk-htmleditor-navbar-nav{margin:0;padding:0;list-style:none;float:left}.uk-htmleditor-navbar-nav>li{float:left}.uk-htmleditor-navbar-nav>li>a{display:block;-moz-box-sizing:border-box;box-sizing:border-box;text-decoration:none;height:40px;padding:0 15px;line-height:40px;color:#444;font-size:11px;cursor:pointer}.uk-htmleditor-navbar-nav>li:hover>a,.uk-htmleditor-navbar-nav>li>a:focus{background-color:#f5f5f5;color:#444;outline:0}.uk-htmleditor-navbar-nav>li>a:active{background-color:#ddd;color:#444}.uk-htmleditor-navbar-nav>li.uk-active>a{background-color:#f5f5f5;color:#444}.uk-htmleditor-navbar-flip{float:right}[data-mode=split] .uk-htmleditor-button-code,[data-mode=split] .uk-htmleditor-button-preview{display:none}.uk-htmleditor-content{border-left:1px solid #ddd;border-right:1px solid #ddd;border-bottom:1px solid #ddd;background:#fff}.uk-htmleditor-content:before,.uk-htmleditor-content:after{content:" ";display:table}.uk-htmleditor-content:after{clear:both}.uk-htmleditor-fullscreen{position:fixed;top:0;left:0;right:0;bottom:0;z-index:990}.uk-htmleditor-fullscreen .uk-htmleditor-content{position:absolute;top:40px;left:0;right:0;bottom:0}.uk-htmleditor-fullscreen .uk-icon-expand:before{content:"\f066"}.uk-htmleditor-code,.uk-htmleditor-preview{-moz-box-sizing:border-box;box-sizing:border-box}.uk-htmleditor-preview{padding:20px;overflow-y:scroll}[data-mode=tab][data-active-tab=code] .uk-htmleditor-preview,[data-mode=tab][data-active-tab=preview] .uk-htmleditor-code{display:none}[data-mode=split] .uk-htmleditor-code,[data-mode=split] .uk-htmleditor-preview{float:left;width:50%}[data-mode=split] .uk-htmleditor-code{border-right:1px solid #eee}.uk-htmleditor .CodeMirror{padding:10px;-moz-box-sizing:border-box;box-sizing:border-box}.uk-nestable{padding:0;list-style:none}.uk-nestable-list{margin:0;padding-left:40px;list-style:none}.uk-nestable-list-dragged{position:absolute;z-index:1050;padding-left:0;pointer-events:none}.uk-nestable-item{margin-bottom:10px;padding:5px;background:#f5f5f5}.uk-nestable-placeholder{-moz-box-sizing:border-box;box-sizing:border-box;margin-bottom:10px;border:1px dashed #ddd}.uk-nestable-empty{min-height:40px}.uk-nestable-handle{display:inline-block;font-size:18px;color:#ddd}.uk-nestable-handle:hover{cursor:move}.uk-nestable-handle:after{content:"\f0c9";font-family:FontAwesome}.uk-nestable-moving,.uk-nestable-moving *{cursor:move}[data-nestable-action=toggle]{display:inline-block;color:#999;visibility:hidden}[data-nestable-action=toggle]:hover{color:#444;cursor:pointer}[data-nestable-action=toggle]:after{content:"\f147";font-family:FontAwesome}.uk-parent>.uk-nestable-item [data-nestable-action=toggle]{visibility:visible}.uk-collapsed>.uk-nestable-item [data-nestable-action=toggle]:after{content:"\f196"}.uk-collapsed .uk-nestable-list{display:none}.uk-notify{position:fixed;top:10px;left:10px;z-index:1040;-moz-box-sizing:border-box;box-sizing:border-box;width:350px}.uk-notify-top-right,.uk-notify-bottom-right{left:auto;right:10px}.uk-notify-top-center,.uk-notify-bottom-center{left:50%;margin-left:-175px}.uk-notify-bottom-left,.uk-notify-bottom-right,.uk-notify-bottom-center{top:auto;bottom:10px}@media (max-width:479px){.uk-notify{left:10px;right:10px;width:auto;margin:0}}.uk-notify-message{position:relative;margin-bottom:10px;padding:15px;background:#444;color:#fff;font-size:16px;line-height:22px;cursor:pointer}.uk-notify-message>.uk-close{visibility:hidden;float:right}.uk-notify-message:hover>.uk-close{visibility:visible}.uk-notify-message-primary{background:#ebf7fd;color:#2d7091}.uk-notify-message-success{background:#f2fae3;color:#659f13}.uk-notify-message-warning{background:#fffceb;color:#e28327}.uk-notify-message-danger{background:#fff1f0;color:#d85030}.uk-search{display:inline-block;position:relative;margin:0}.uk-search:before{content:"\f002";position:absolute;top:0;left:0;width:30px;line-height:30px;text-align:center;font-family:FontAwesome;font-size:14px;color:rgba(0,0,0,.2)}.uk-search-field{width:120px;height:30px;padding:0 30px;border:1px solid rgba(0,0,0,0);background:rgba(0,0,0,0);color:#444;-webkit-transition:all linear .2s;transition:all linear .2s;border-radius:0}input.uk-search-field{-webkit-appearance:none}.uk-search-field:-ms-input-placeholder{color:#999}.uk-search-field::-moz-placeholder{color:#999}.uk-search-field::-webkit-input-placeholder{color:#999}.uk-search-field::-ms-clear{display:none}.uk-search-field:focus{outline:0}.uk-search-field:focus,.uk-search.uk-active .uk-search-field{width:180px}.uk-search-close{display:none;position:absolute;top:0;right:0;width:30px;line-height:30px;text-align:center;font-size:14px;color:rgba(0,0,0,.2);padding:0;border:0;-webkit-appearance:none;background:0 0}.uk-loading>.uk-search-close,.uk-active>.uk-search-close{display:block}.uk-search-close:after{display:block;content:"\f00d";font-family:FontAwesome}.uk-loading>.uk-search-close:after{content:"\f110";-webkit-animation:uk-spin 2s infinite linear;animation:uk-spin 2s infinite linear}.uk-dropdown-search{width:300px;margin-top:0;background:#f5f5f5;color:#444}.uk-open>.uk-dropdown-search{-webkit-animation:uk-slide-top-fixed .2s ease-in-out;animation:uk-slide-top-fixed .2s ease-in-out}.uk-navbar-flip .uk-dropdown-search{margin-top:5px;margin-right:-15px}.uk-nav-search>li>a{color:#444}.uk-nav-search>li.uk-active>a{background:#00a8e6;color:#fff;outline:0}.uk-nav-search .uk-nav-header{color:#999}.uk-nav-search .uk-nav-divider{border-top:1px solid #ddd}.uk-nav-search ul a{color:#07d}.uk-nav-search ul a:hover{color:#059}.uk-offcanvas .uk-search{display:block;margin:20px 15px}.uk-offcanvas .uk-search:before{color:#777}.uk-offcanvas .uk-search-field{width:100%;border-color:rgba(0,0,0,0);background:#1a1a1a;color:#ccc}.uk-offcanvas .uk-search-field:-ms-input-placeholder{color:#777}.uk-offcanvas .uk-search-field::-moz-placeholder{color:#777}.uk-offcanvas .uk-search-field::-webkit-input-placeholder{color:#777}.uk-sortable{position:relative}.uk-sortable>*{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.uk-sortable>* *{-webkit-user-drag:none;user-drag:none}.uk-sortable-dragged{position:absolute;z-index:1050;pointer-events:none}.uk-sortable-placeholder{opacity:0}.uk-sortable-over{opacity:.3}.uk-sortable-moving,.uk-sortable-moving *{cursor:move}.uk-sticky{z-index:980}.uk-dragover{box-shadow:0 0 20px rgba(100,100,100,.3)} \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/uikit/addons/uikit.almost-flat.addons.css b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/uikit/addons/uikit.almost-flat.addons.css new file mode 100644 index 000000000..bf2a2da8b --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/uikit/addons/uikit.almost-flat.addons.css @@ -0,0 +1,1205 @@ +/*! UIkit 2.8.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */ + +/* ======================================================================== + Component: Dotnav + ========================================================================== */ +/* + * 1. Remove default list style + * 2. Remove whitespace between child elements when using `inline-block` + */ +.uk-dotnav { + /* 1 */ + padding: 0; + list-style: none; + /* 2 */ + font-size: 0.001px; +} +/* Items + ========================================================================== */ +/* + * 1. Reset whitespace hack + * 2. Remove the gap at the bottom of it container + */ +.uk-dotnav > li { + display: inline-block; + /* 1 */ + font-size: 1rem; + /* 2 */ + vertical-align: top; +} +.uk-dotnav > li:nth-child(n+2) { + margin-left: 15px; +} +/* + * Items + * 1. Remove the gap at the bottom of it container + * 2. Hide text if present + */ +.uk-dotnav > li > a { + display: inline-block; + -moz-box-sizing: content-box; + box-sizing: content-box; + width: 20px; + height: 20px; + border-radius: 50%; + background: rgba(50, 50, 50, 0.1); + /* 1 */ + vertical-align: top; + /* 2 */ + overflow: hidden; + text-indent: -999%; + -webkit-transition: all 0.2s ease-in-out; + transition: all 0.2s ease-in-out; +} +/* + * Hover + * 1. Apply hover style also to focus state + * 2. Remove default focus style + */ +.uk-dotnav > li > a:hover, +.uk-dotnav > li > a:focus { + background: rgba(50, 50, 50, 0.4); + /* 2 */ + outline: none; +} +/* OnClick */ +.uk-dotnav > li > a:active { + background: rgba(50, 50, 50, 0.6); +} +/* Active */ +.uk-dotnav > li.uk-active > a { + background: rgba(50, 50, 50, 0.4); + -webkit-transform: scale(1.3); + transform: scale(1.3); +} +/* Modifier: 'dotnav-vertical' + ========================================================================== */ +.uk-dotnav-vertical > li { + display: block; +} +.uk-dotnav-vertical > li:nth-child(n+2) { + margin-left: 0; + margin-top: 15px; +} +/* ======================================================================== + Component: Slidenav + ========================================================================== */ +/* + * 1. Required for `a` elements + * 2. Dimension + * 3. Style + */ +.uk-slidenav { + /* 1 */ + display: inline-block; + /* 2 */ + -moz-box-sizing: border-box; + box-sizing: border-box; + width: 60px; + height: 60px; + /* 3 */ + line-height: 60px; + color: rgba(50, 50, 50, 0.4); + font-size: 60px; + text-align: center; +} +/* + * Hover + * 1. Apply hover style also to focus state + * 2. Remove default focus style + * 3. Required for `a` elements + * 4. Style + */ +.uk-slidenav:hover, +.uk-slidenav:focus { + /* 2 */ + outline: none; + /* 3 */ + text-decoration: none; + /* 4 */ + color: rgba(50, 50, 50, 0.7); + cursor: pointer; +} +/* Active */ +.uk-slidenav:active { + color: rgba(50, 50, 50, 0.9); +} +/* + * Icons + */ +.uk-slidenav-previous:before { + content: "\f104"; + font-family: FontAwesome; +} +.uk-slidenav-next:before { + content: "\f105"; + font-family: FontAwesome; +} +/* Sub-object: `uk-slidenav-position` + ========================================================================== */ +/* + * 1. Container width fits its content + * 2. Corrects max-width behavior (3.) if padding and border are used + * 3. Responsive behavior + * 4. Create position context for dropdowns + */ +.uk-slidenav-position { + /* 1 */ + display: inline-block; + /* 2 */ + -moz-box-sizing: border-box; + box-sizing: border-box; + /* 3 */ + max-width: 100%; + /* 4 */ + position: relative; +} +/* + * Center vertically + */ +.uk-slidenav-position .uk-slidenav { + display: none; + position: absolute; + top: 50%; + margin-top: -30px; +} +.uk-slidenav-position:hover .uk-slidenav { + display: block; +} +.uk-slidenav-position .uk-slidenav-previous { + left: 20px; +} +.uk-slidenav-position .uk-slidenav-next { + right: 20px; +} +/* ======================================================================== + Component: Form advanced + Note: Only works in Webkit at the moment + ========================================================================== */ +/* + * 1. Style + * 2. Makes box more robust so it clips the child element + * 3. Vertical alignment + * 4. Remove default style + * 5. Fix black background on iOS + */ +.uk-form input[type="radio"], +.uk-form input[type="checkbox"] { + /* 1 */ + display: inline-block; + height: 14px; + width: 14px; + border: 1px solid #aaaaaa; + /* 2 */ + overflow: hidden; + /* 3 */ + margin-top: -4px; + vertical-align: middle; + /* 4 */ + -webkit-appearance: none; + outline: 0; + /* 5 */ + background: transparent; +} +/* Radio */ +.uk-form input[type="radio"] { + border-radius: 50%; +} +/* + * Checked + */ +.uk-form input[type=checkbox]:checked:before, +.uk-form input[type=radio]:checked:before { + display: block; +} +/* Radio */ +.uk-form input[type=radio]:checked:before { + content: ''; + width: 8px; + height: 8px; + margin: 2px auto 0; + border-radius: 50%; + background: #00a8e6; +} +/* Checkbox */ +.uk-form input[type=checkbox]:checked:before { + content: "\f00c"; + font-family: FontAwesome; + font-size: 12px; + -webkit-font-smoothing: antialiased; + text-align: center; + line-height: 12px; + color: #00a8e6; +} +/* + * Disabled + */ +.uk-form input[type=radio]:disabled, +.uk-form input[type=checkbox]:disabled { + border-color: #dddddd; +} +.uk-form input[type=radio]:disabled:checked:before { + background-color: #aaaaaa; +} +.uk-form input[type=checkbox]:disabled:checked:before { + color: #aaaaaa; +} +/* ======================================================================== + Component: Form file + ========================================================================== */ +/* + * 1. Behave like form elements + * 2. Create position context for dropdowns + * 3. Clip content + */ +.uk-form-file { + /* 1 */ + display: inline-block; + vertical-align: middle; + /* 2 */ + position: relative; + /* 3 */ + overflow: hidden; +} +/* + * 1. Required for Firefox + * 2. Expand height and required for the cursor + */ +.uk-form-file input[type="file"] { + position: absolute; + top: 0; + z-index: 1; + width: 100%; + opacity: 0; + cursor: pointer; + /* 1 */ + left: 0; + /* 2 */ + font-size: 500px; +} +/* ======================================================================== + Component: Form password + ========================================================================== */ +.uk-form-password { + position: relative; + display: inline-block; + max-width: 100%; +} +.uk-form-password-toggle { + display: block; + position: absolute; + top: 50%; + right: 10px; + margin-top: -6px; + font-size: 13px; + line-height: 13px; + color: #999999; +} +.uk-form-password-toggle:hover { + color: #999999; + text-decoration: none; +} +.uk-form-password > input { + padding-right: 50px !important; +} +/* ======================================================================== + Component: Form select + ========================================================================== */ +/* + * 1. Behave like form elements + * 2. Create position context for dropdowns + * 3. Clip content + */ +.uk-form-select { + /* 1 */ + display: inline-block; + vertical-align: middle; + /* 2 */ + position: relative; + /* 3 */ + overflow: hidden; +} +/* + * 1. Required for Firefox + * 1. Required for Webkit to make `height` work + */ +.uk-form-select select { + position: absolute; + top: 0; + z-index: 1; + width: 100%; + height: 100%; + opacity: 0; + cursor: pointer; + /* 1 */ + left: 0; + /* 2 */ + -webkit-appearance: none; +} +/* ======================================================================== + Component: Placeholder + ========================================================================== */ +.uk-placeholder { + margin-bottom: 15px; + padding: 20px; + border: 1px dashed #dddddd; + background: #fafafa; + color: #444444; +} +/* + * Add margin if adjacent element + */ +* + .uk-placeholder { + margin-top: 15px; +} +/* + * Remove margin from the last-child + */ +.uk-placeholder > :last-child { + margin-bottom: 0; +} +/* Modifier: `uk-placeholder-large` + ========================================================================== */ +.uk-placeholder-large { + padding-top: 80px; + padding-bottom: 80px; +} +/* ======================================================================== + Component: Autocomplete + ========================================================================== */ +/* + * 1. Behave like form elements + * 2. Create position context for dropdowns + */ +.uk-autocomplete { + /* 1 */ + display: inline-block; + vertical-align: middle; + /* 2 */ + position: relative; +} +/* Nav modifier `uk-nav-autocomplete` + ========================================================================== */ +/* + * Items + */ +.uk-nav-autocomplete > li > a { + color: #444444; +} +/* + * Active + * 1. Remove default focus style + */ +.uk-nav-autocomplete > li.uk-active > a { + background: #00a8e6; + color: #ffffff; + /* 1 */ + outline: none; + box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.05); + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.1); +} +/* + * Sub-object: `uk-nav-header` + */ +.uk-nav-autocomplete .uk-nav-header { + color: #999999; +} +/* + * Sub-object: `uk-nav-divider` + */ +.uk-nav-autocomplete .uk-nav-divider { + border-top: 1px solid #dddddd; +} +/* ======================================================================== + Component: Datepicker + ========================================================================== */ +/* + * Reset dropdown width + */ +.uk-datepicker { + width: auto; +} +/* Sub-object: `uk-datepicker-nav` +========================================================================== */ +.uk-datepicker-nav { + margin-bottom: 15px; + text-align: center; + line-height: 20px; +} +/* + * Micro clearfix + */ +.uk-datepicker-nav:before, +.uk-datepicker-nav:after { + content: " "; + display: table; +} +.uk-datepicker-nav:after { + clear: both; +} +/* + * Previous and next navigation + */ +.uk-datepicker-nav a { + color: #444444; + text-decoration: none; +} +.uk-datepicker-nav a:hover { + color: #444444; +} +.uk-datepicker-previous { + float: left; +} +.uk-datepicker-next { + float: right; +} +.uk-datepicker-previous:after, +.uk-datepicker-next:after { + width: 20px; + font-family: FontAwesome; +} +.uk-datepicker-previous:after { + content: "\f053"; +} +.uk-datepicker-next:after { + content: "\f054"; +} +/* Sub-object: `uk-datepicker-heading` +========================================================================== */ +/* Sub-object: `uk-datepicker-table` +========================================================================== */ +/* Block element behavior */ +.uk-datepicker-table { + width: 100%; +} +.uk-datepicker-table th, +.uk-datepicker-table td { + padding: 2px; +} +.uk-datepicker-table th { + font-size: 12px; +} +/* + * Item + */ +.uk-datepicker-table a { + display: block; + width: 26px; + line-height: 24px; + text-align: center; + color: #444444; + text-decoration: none; + border: 1px solid transparent; + border-radius: 4px; +} +/* + * Sub-object: `uk-datepicker-table-muted` + */ +a.uk-datepicker-table-muted { + color: #999999; +} +/* + * Hover + * 1. Apply hover style also to focus state + * 2. Remove default focus style + */ +.uk-datepicker-table a:hover, +.uk-datepicker-table a:focus { + background-color: #fafafa; + color: #444444; + /* 2 */ + outline: none; + border-color: rgba(0, 0, 0, 0.16); + text-shadow: 0 1px 0 #ffffff; +} +/* OnClick */ +.uk-datepicker-table a:active { + background-color: #eeeeee; + color: #444444; +} +/* + * Active + */ +.uk-datepicker-table a.uk-active { + background: #00a8e6; + color: #ffffff; + box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.05); + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.1); +} +/* ======================================================================== + Component: HTML editor + ========================================================================== */ +/* Sub-object `uk-htmleditor-navbar` + ========================================================================== */ +.uk-htmleditor-navbar { + background: #f5f5f5; + border: 1px solid rgba(0, 0, 0, 0.06); + border-top-left-radius: 4px; + border-top-right-radius: 4px; +} +/* + * Micro clearfix + */ +.uk-htmleditor-navbar:before, +.uk-htmleditor-navbar:after { + content: " "; + display: table; +} +.uk-htmleditor-navbar:after { + clear: both; +} +/* Sub-object `uk-htmleditor-navbar-nav` + ========================================================================== */ +.uk-htmleditor-navbar-nav { + margin: 0; + padding: 0; + list-style: none; + float: left; +} +.uk-htmleditor-navbar-nav > li { + float: left; +} +/* + * 1. Dimensions + * 2. Style + */ +.uk-htmleditor-navbar-nav > li > a { + display: block; + -moz-box-sizing: border-box; + box-sizing: border-box; + text-decoration: none; + /* 1 */ + height: 41px; + padding: 0 15px; + line-height: 40px; + /* 2 */ + color: #444444; + font-size: 11px; + cursor: pointer; + margin-top: -1px; + margin-left: -1px; + border: 1px solid transparent; + border-bottom-width: 0; + text-shadow: 0 1px 0 #ffffff; +} +/* + * Hover + * 1. Apply hover style also to focus state + * 2. Remove default focus style + */ +.uk-htmleditor-navbar-nav > li:hover > a, +.uk-htmleditor-navbar-nav > li > a:focus { + background-color: #fafafa; + color: #444444; + outline: none; + /* 2 */ + position: relative; + z-index: 1; + border-left-color: rgba(0, 0, 0, 0.1); + border-right-color: rgba(0, 0, 0, 0.1); + border-top-color: rgba(0, 0, 0, 0.1); +} +/* OnClick */ +.uk-htmleditor-navbar-nav > li > a:active { + background-color: #eeeeee; + color: #444444; + border-left-color: rgba(0, 0, 0, 0.1); + border-right-color: rgba(0, 0, 0, 0.1); + border-top-color: rgba(0, 0, 0, 0.2); +} +/* Active */ +.uk-htmleditor-navbar-nav > li.uk-active > a { + background-color: #fafafa; + color: #444444; + border-left-color: rgba(0, 0, 0, 0.1); + border-right-color: rgba(0, 0, 0, 0.1); + border-top-color: rgba(0, 0, 0, 0.1); +} +/* Sub-object: `uk-htmleditor-navbar-flip` + ========================================================================== */ +.uk-htmleditor-navbar-flip { + float: right; +} +/* Sub-object for special buttons + ========================================================================== */ +[data-mode='split'] .uk-htmleditor-button-code, +[data-mode='split'] .uk-htmleditor-button-preview { + display: none; +} +/* Sub-object `uk-htmleditor-content` + ========================================================================== */ +.uk-htmleditor-content { + border-left: 1px solid #dddddd; + border-right: 1px solid #dddddd; + border-bottom: 1px solid #dddddd; + background: #ffffff; + border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; +} +/* + * Micro clearfix + */ +.uk-htmleditor-content:before, +.uk-htmleditor-content:after { + content: " "; + display: table; +} +.uk-htmleditor-content:after { + clear: both; +} +/* Modifier `uk-htmleditor-fullscreen` + ========================================================================== */ +.uk-htmleditor-fullscreen { + position: fixed; + top: 0; + left: 0; + right: 0; + bottom: 0; + z-index: 990; +} +.uk-htmleditor-fullscreen .uk-htmleditor-content { + position: absolute; + top: 41px; + left: 0; + right: 0; + bottom: 0; +} +.uk-htmleditor-fullscreen .uk-icon-expand:before { + content: "\f066"; +} +/* Sub-objects `uk-htmleditor-code` and `uk-htmleditor-preview` + ========================================================================== */ +.uk-htmleditor-code, +.uk-htmleditor-preview { + -moz-box-sizing: border-box; + box-sizing: border-box; +} +.uk-htmleditor-preview { + padding: 20px; + overflow-y: scroll; +} +/* + * Tab view + */ +[data-mode='tab'][data-active-tab='code'] .uk-htmleditor-preview, +[data-mode='tab'][data-active-tab='preview'] .uk-htmleditor-code { + display: none; +} +/* + * Split view + */ +[data-mode='split'] .uk-htmleditor-code, +[data-mode='split'] .uk-htmleditor-preview { + float: left; + width: 50%; +} +[data-mode='split'] .uk-htmleditor-code { + border-right: 1px solid #eeeeee; +} +/* CodeMirror modifications + ========================================================================== */ +.uk-htmleditor .CodeMirror { + padding: 10px; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +/* + * Apply same `border-radius` as `uk-htmleditor-navbar` + */ +.uk-htmleditor-navbar-nav:first-child > li:first-child > a { + border-top-left-radius: 4px; +} +/* + * Sub-modifier `uk-htmleditor-navbar-flip` + */ +/* Collapse border */ +.uk-htmleditor-navbar-flip .uk-htmleditor-navbar-nav > li > a { + margin-left: 0; + margin-right: -1px; +} +/* Apply same `border-radius` as `uk-htmleditor-navbar` */ +.uk-htmleditor-navbar-flip .uk-htmleditor-navbar-nav:first-child > li:first-child > a { + border-top-left-radius: 0; +} +.uk-htmleditor-navbar-flip .uk-htmleditor-navbar-nav:last-child > li:last-child > a { + border-top-right-radius: 4px; +} +/* + * Sub-modifier `uk-htmleditor-fullscreen` + */ +.uk-htmleditor-fullscreen .uk-htmleditor-navbar { + border-top: none; + border-left: none; + border-right: none; + border-radius: 0; +} +.uk-htmleditor-fullscreen .uk-htmleditor-content { + border: none; + border-radius: 0; +} +.uk-htmleditor-fullscreen .uk-htmleditor-navbar-nav > li > a { + border-radius: 0 !important; +} +/* ======================================================================== + Component: Nestable + ========================================================================== */ +.uk-nestable { + padding: 0; + list-style: none; +} +/* Sub-object `uk-nestable-list` + ========================================================================== */ +.uk-nestable-list { + margin: 0; + padding-left: 40px; + list-style: none; +} +/* Sub-modifier `uk-nestable-list-dragged` + ========================================================================== */ +.uk-nestable-list-dragged { + position: absolute; + z-index: 1050; + padding-left: 0; + pointer-events: none; +} +/* Sub-object `uk-nestable-item` + ========================================================================== */ +.uk-nestable-item { + margin-bottom: 10px; + padding: 5px; + background: #f5f5f5; + border-radius: 4px; + border: 1px solid rgba(0, 0, 0, 0.06); + text-shadow: 0 1px 0 #ffffff; +} +/* Sub-object `uk-nestable-placeholder` + * The placeholder which marks the drop area + ========================================================================== */ +.uk-nestable-placeholder { + -moz-box-sizing: border-box; + box-sizing: border-box; + margin-bottom: 10px; + border: 1px dashed #dddddd; +} +/* Sub-object `uk-nestable-empty` + * The style of an empty list + ========================================================================== */ +.uk-nestable-empty { + min-height: 40px; +} +/* Sub-object `uk-nestable-handle` + ========================================================================== */ +.uk-nestable-handle { + display: inline-block; + font-size: 18px; + color: #dddddd; +} +/* Hover */ +.uk-nestable-handle:hover { + cursor: move; +} +/* Icon */ +.uk-nestable-handle:after { + content: "\f0c9"; + font-family: FontAwesome; +} +/* Sub-object `uk-nestable-moving` + ========================================================================== */ +.uk-nestable-moving, +.uk-nestable-moving * { + cursor: move; +} +/* Sub-object `[data-action='toggle']` + ========================================================================== */ +/* Hidden by default */ +[data-nestable-action='toggle'] { + display: inline-block; + color: #999999; + visibility: hidden; +} +/* Hover */ +[data-nestable-action='toggle']:hover { + color: #444444; + cursor: pointer; +} +/* Icon */ +[data-nestable-action='toggle']:after { + content: "\f147"; + font-family: FontAwesome; +} +/* + * Show if nested + */ +.uk-parent > .uk-nestable-item [data-nestable-action='toggle'] { + visibility: visible; +} +/* + * Collapsed + */ +.uk-collapsed > .uk-nestable-item [data-nestable-action='toggle']:after { + content: "\f196"; +} +.uk-collapsed .uk-nestable-list { + display: none; +} +/* ======================================================================== + Component: Notify + ========================================================================== */ +/* + * Message container for positioning + */ +.uk-notify { + position: fixed; + top: 10px; + left: 10px; + z-index: 1040; + -moz-box-sizing: border-box; + box-sizing: border-box; + width: 350px; +} +/* Position modifiers +========================================================================== */ +.uk-notify-top-right, +.uk-notify-bottom-right { + left: auto; + right: 10px; +} +.uk-notify-top-center, +.uk-notify-bottom-center { + left: 50%; + margin-left: -175px; +} +.uk-notify-bottom-left, +.uk-notify-bottom-right, +.uk-notify-bottom-center { + top: auto; + bottom: 10px; +} +/* Responsiveness +========================================================================== */ +/* Phones portrait and smaller */ +@media (max-width: 479px) { + /* + * Fit in small screen + */ + .uk-notify { + left: 10px; + right: 10px; + width: auto; + margin: 0; + } +} +/* Sub-object: `uk-notify-message` +========================================================================== */ +.uk-notify-message { + position: relative; + margin-bottom: 10px; + padding: 15px; + background: #444444; + color: #ffffff; + font-size: 16px; + line-height: 22px; + cursor: pointer; + border: 1px solid #444444; + border-radius: 4px; +} +/* Close in notify + ========================================================================== */ +.uk-notify-message > .uk-close { + visibility: hidden; + float: right; +} +.uk-notify-message:hover > .uk-close { + visibility: visible; +} +/* Modifier: `uk-alert-info` + ========================================================================== */ +.uk-notify-message-primary { + background: #ebf7fd; + color: #2d7091; + border-color: rgba(45, 112, 145, 0.3); +} +/* Modifier: `uk-alert-success` + ========================================================================== */ +.uk-notify-message-success { + background: #f2fae3; + color: #659f13; + border-color: rgba(101, 159, 19, 0.3); +} +/* Modifier: `uk-notify-message-warning` + ========================================================================== */ +.uk-notify-message-warning { + background: #fffceb; + color: #e28327; + border-color: rgba(226, 131, 39, 0.3); +} +/* Modifier: `uk-notify-message-danger` + ========================================================================== */ +.uk-notify-message-danger { + background: #fff1f0; + color: #d85030; + border-color: rgba(216, 80, 48, 0.3); +} +/* ======================================================================== + Component: Search + ========================================================================== */ +/* + * 1. Create position context for dropdowns + * 2. Needed for `form` element + */ +.uk-search { + display: inline-block; + /* 1 */ + position: relative; + /* 2 */ + margin: 0; +} +/* + * Icon + */ +.uk-search:before { + content: "\f002"; + position: absolute; + top: 0; + left: 0; + width: 30px; + line-height: 30px; + text-align: center; + font-family: FontAwesome; + font-size: 14px; + color: rgba(0, 0, 0, 0.2); +} +/* Sub-object `uk-search-field` + ========================================================================== */ +/* + * 1. Needed to reset iOS `input[type="search"]` appearance + */ +.uk-search-field { + width: 120px; + height: 30px; + padding: 0 30px; + border: 1px solid rgba(0, 0, 0, 0); + background: rgba(0, 0, 0, 0); + color: #444444; + -webkit-transition: all linear 0.2s; + transition: all linear 0.2s; + /* 1 */ + border-radius: 0; +} +/* + * Needed to reset iOS `input[type="search"]` appearance + * Higher specificity to override appearance set by normalize.less + */ +input.uk-search-field { + -webkit-appearance: none; +} +/* Placeholder */ +.uk-search-field:-ms-input-placeholder { + color: #999999; +} +.uk-search-field::-moz-placeholder { + color: #999999; +} +.uk-search-field::-webkit-input-placeholder { + color: #999999; +} +/* Removes cancel button in IE10 */ +.uk-search-field::-ms-clear { + display: none; +} +/* Focus */ +.uk-search-field:focus { + outline: 0; +} +/* Focus + active */ +.uk-search-field:focus, +.uk-search.uk-active .uk-search-field { + width: 180px; +} +/* Sub-object `uk-search-close` + ========================================================================== */ +/* + * 1. Required for `button` elements + * 2. Needed for Safari + */ +.uk-search-close { + display: none; + position: absolute; + top: 0; + right: 0; + width: 30px; + line-height: 30px; + text-align: center; + font-size: 14px; + color: rgba(0, 0, 0, 0.2); + /* 1. */ + padding: 0; + border: 0; + -webkit-appearance: none; + /* 2. */ + background: transparent; +} +.uk-loading > .uk-search-close, +.uk-active > .uk-search-close { + display: block; +} +/* + * Icon + */ +.uk-search-close:after { + display: block; + content: "\f00d"; + font-family: FontAwesome; +} +/* Loading icon */ +.uk-loading > .uk-search-close:after { + content: "\f110"; + -webkit-animation: uk-spin 2s infinite linear; + animation: uk-spin 2s infinite linear; +} +/* Dropdown modifier: `uk-dropdown-search` + ========================================================================== */ +.uk-dropdown-search { + width: 300px; + margin-top: 0; + background: #ffffff; + color: #444444; +} +.uk-open > .uk-dropdown-search { + -webkit-animation: uk-slide-top-fixed 0.2s ease-in-out; + animation: uk-slide-top-fixed 0.2s ease-in-out; +} +/* + * Dependency `uk-navbar-flip` + */ +.uk-navbar-flip .uk-dropdown-search { + margin-top: 12px; + margin-right: -16px; +} +/* Nav modifier `uk-nav-search` + ========================================================================== */ +/* + * Items + */ +.uk-nav-search > li > a { + color: #444444; +} +/* + * Active + * 1. Remove default focus style + */ +.uk-nav-search > li.uk-active > a { + background: #00a8e6; + color: #ffffff; + /* 1 */ + outline: none; + box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.05); + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.1); +} +/* + * Sub-object: `uk-nav-header` + */ +.uk-nav-search .uk-nav-header { + color: #999999; +} +/* + * Sub-object: `uk-nav-divider` + */ +.uk-nav-search .uk-nav-divider { + border-top: 1px solid #dddddd; +} +/* + * Nested items + */ +.uk-nav-search ul a { + color: #0077dd; +} +.uk-nav-search ul a:hover { + color: #005599; +} +/* Search in offcanvas + ========================================================================== */ +.uk-offcanvas .uk-search { + display: block; + margin: 20px 15px; +} +.uk-offcanvas .uk-search:before { + color: #777777; +} +.uk-offcanvas .uk-search-field { + width: 100%; + border-color: rgba(0, 0, 0, 0); + background: #1a1a1a; + color: #cccccc; +} +.uk-offcanvas .uk-search-field:-ms-input-placeholder { + color: #777777; +} +.uk-offcanvas .uk-search-field::-moz-placeholder { + color: #777777; +} +.uk-offcanvas .uk-search-field::-webkit-input-placeholder { + color: #777777; +} +/* ======================================================================== + Component: Sortable + ========================================================================== */ +.uk-sortable { + position: relative; +} +/* + * Makes text unselectable + */ +.uk-sortable > * { + -moz-user-select: none; + -webkit-user-select: none; + -ms-user-select: none; + user-select: none; +} +/* + * Prevents images and links from being dragged (default browser behavior) + * Currently only works in Webkit + */ +.uk-sortable > * * { + -webkit-user-drag: none; + user-drag: none; +} +/* Sub-modifier `uk-sortable-dragged` + ========================================================================== */ +.uk-sortable-dragged { + position: absolute; + z-index: 1050; + pointer-events: none; +} +/* Sub-modifier `uk-sortable-placeholder` + ========================================================================== */ +.uk-sortable-placeholder { + opacity: 0; +} +/* Sub-modifier `uk-sortable-over` + * Only if `warp:true` + ========================================================================== */ +.uk-sortable-over { + opacity: 0.3; +} +/* Sub-object `uk-nestable-moving` + ========================================================================== */ +.uk-sortable-moving, +.uk-sortable-moving * { + cursor: move; +} +/* ======================================================================== + Component: Sticky + ========================================================================== */ +.uk-sticky { + z-index: 980; +} +/* ======================================================================== + Component: Upload + ========================================================================== */ +/* + * Create a box-shadow when dragging a file over the upload area + */ +.uk-dragover { + box-shadow: 0 0 20px rgba(100, 100, 100, 0.3); +} diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/uikit/addons/uikit.almost-flat.addons.min.css b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/uikit/addons/uikit.almost-flat.addons.min.css new file mode 100644 index 000000000..8a0166d22 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/uikit/addons/uikit.almost-flat.addons.min.css @@ -0,0 +1,3 @@ +/*! UIkit 2.8.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */ + +.uk-dotnav{padding:0;list-style:none;font-size:0}.uk-dotnav>li{display:inline-block;font-size:1rem;vertical-align:top}.uk-dotnav>li:nth-child(n+2){margin-left:15px}.uk-dotnav>li>a{display:inline-block;-moz-box-sizing:content-box;box-sizing:content-box;width:20px;height:20px;border-radius:50%;background:rgba(50,50,50,.1);vertical-align:top;overflow:hidden;text-indent:-999%;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.uk-dotnav>li>a:hover,.uk-dotnav>li>a:focus{background:rgba(50,50,50,.4);outline:0}.uk-dotnav>li>a:active{background:rgba(50,50,50,.6)}.uk-dotnav>li.uk-active>a{background:rgba(50,50,50,.4);-webkit-transform:scale(1.3);transform:scale(1.3)}.uk-dotnav-vertical>li{display:block}.uk-dotnav-vertical>li:nth-child(n+2){margin-left:0;margin-top:15px}.uk-slidenav{display:inline-block;-moz-box-sizing:border-box;box-sizing:border-box;width:60px;height:60px;line-height:60px;color:rgba(50,50,50,.4);font-size:60px;text-align:center}.uk-slidenav:hover,.uk-slidenav:focus{outline:0;text-decoration:none;color:rgba(50,50,50,.7);cursor:pointer}.uk-slidenav:active{color:rgba(50,50,50,.9)}.uk-slidenav-previous:before{content:"\f104";font-family:FontAwesome}.uk-slidenav-next:before{content:"\f105";font-family:FontAwesome}.uk-slidenav-position{display:inline-block;-moz-box-sizing:border-box;box-sizing:border-box;max-width:100%;position:relative}.uk-slidenav-position .uk-slidenav{display:none;position:absolute;top:50%;margin-top:-30px}.uk-slidenav-position:hover .uk-slidenav{display:block}.uk-slidenav-position .uk-slidenav-previous{left:20px}.uk-slidenav-position .uk-slidenav-next{right:20px}.uk-form input[type=radio],.uk-form input[type=checkbox]{display:inline-block;height:14px;width:14px;border:1px solid #aaa;overflow:hidden;margin-top:-4px;vertical-align:middle;-webkit-appearance:none;outline:0;background:0 0}.uk-form input[type=radio]{border-radius:50%}.uk-form input[type=checkbox]:checked:before,.uk-form input[type=radio]:checked:before{display:block}.uk-form input[type=radio]:checked:before{content:'';width:8px;height:8px;margin:2px auto 0;border-radius:50%;background:#00a8e6}.uk-form input[type=checkbox]:checked:before{content:"\f00c";font-family:FontAwesome;font-size:12px;-webkit-font-smoothing:antialiased;text-align:center;line-height:12px;color:#00a8e6}.uk-form input[type=radio]:disabled,.uk-form input[type=checkbox]:disabled{border-color:#ddd}.uk-form input[type=radio]:disabled:checked:before{background-color:#aaa}.uk-form input[type=checkbox]:disabled:checked:before{color:#aaa}.uk-form-file{display:inline-block;vertical-align:middle;position:relative;overflow:hidden}.uk-form-file input[type=file]{position:absolute;top:0;z-index:1;width:100%;opacity:0;cursor:pointer;left:0;font-size:500px}.uk-form-password{position:relative;display:inline-block;max-width:100%}.uk-form-password-toggle{display:block;position:absolute;top:50%;right:10px;margin-top:-6px;font-size:13px;line-height:13px;color:#999}.uk-form-password-toggle:hover{color:#999;text-decoration:none}.uk-form-password>input{padding-right:50px!important}.uk-form-select{display:inline-block;vertical-align:middle;position:relative;overflow:hidden}.uk-form-select select{position:absolute;top:0;z-index:1;width:100%;height:100%;opacity:0;cursor:pointer;left:0;-webkit-appearance:none}.uk-placeholder{margin-bottom:15px;padding:20px;border:1px dashed #ddd;background:#fafafa;color:#444}*+.uk-placeholder{margin-top:15px}.uk-placeholder>:last-child{margin-bottom:0}.uk-placeholder-large{padding-top:80px;padding-bottom:80px}.uk-autocomplete{display:inline-block;vertical-align:middle;position:relative}.uk-nav-autocomplete>li>a{color:#444}.uk-nav-autocomplete>li.uk-active>a{background:#00a8e6;color:#fff;outline:0;box-shadow:inset 0 0 5px rgba(0,0,0,.05);text-shadow:0 -1px 0 rgba(0,0,0,.1)}.uk-nav-autocomplete .uk-nav-header{color:#999}.uk-nav-autocomplete .uk-nav-divider{border-top:1px solid #ddd}.uk-datepicker{width:auto}.uk-datepicker-nav{margin-bottom:15px;text-align:center;line-height:20px}.uk-datepicker-nav:before,.uk-datepicker-nav:after{content:" ";display:table}.uk-datepicker-nav:after{clear:both}.uk-datepicker-nav a{color:#444;text-decoration:none}.uk-datepicker-nav a:hover{color:#444}.uk-datepicker-previous{float:left}.uk-datepicker-next{float:right}.uk-datepicker-previous:after,.uk-datepicker-next:after{width:20px;font-family:FontAwesome}.uk-datepicker-previous:after{content:"\f053"}.uk-datepicker-next:after{content:"\f054"}.uk-datepicker-table{width:100%}.uk-datepicker-table th,.uk-datepicker-table td{padding:2px}.uk-datepicker-table th{font-size:12px}.uk-datepicker-table a{display:block;width:26px;line-height:24px;text-align:center;color:#444;text-decoration:none;border:1px solid transparent;border-radius:4px}a.uk-datepicker-table-muted{color:#999}.uk-datepicker-table a:hover,.uk-datepicker-table a:focus{background-color:#fafafa;color:#444;outline:0;border-color:rgba(0,0,0,.16);text-shadow:0 1px 0 #fff}.uk-datepicker-table a:active{background-color:#eee;color:#444}.uk-datepicker-table a.uk-active{background:#00a8e6;color:#fff;box-shadow:inset 0 0 5px rgba(0,0,0,.05);text-shadow:0 -1px 0 rgba(0,0,0,.1)}.uk-htmleditor-navbar{background:#f5f5f5;border:1px solid rgba(0,0,0,.06);border-top-left-radius:4px;border-top-right-radius:4px}.uk-htmleditor-navbar:before,.uk-htmleditor-navbar:after{content:" ";display:table}.uk-htmleditor-navbar:after{clear:both}.uk-htmleditor-navbar-nav{margin:0;padding:0;list-style:none;float:left}.uk-htmleditor-navbar-nav>li{float:left}.uk-htmleditor-navbar-nav>li>a{display:block;-moz-box-sizing:border-box;box-sizing:border-box;text-decoration:none;height:41px;padding:0 15px;line-height:40px;color:#444;font-size:11px;cursor:pointer;margin-top:-1px;margin-left:-1px;border:1px solid transparent;border-bottom-width:0;text-shadow:0 1px 0 #fff}.uk-htmleditor-navbar-nav>li:hover>a,.uk-htmleditor-navbar-nav>li>a:focus{background-color:#fafafa;color:#444;outline:0;position:relative;z-index:1;border-left-color:rgba(0,0,0,.1);border-right-color:rgba(0,0,0,.1);border-top-color:rgba(0,0,0,.1)}.uk-htmleditor-navbar-nav>li>a:active{background-color:#eee;color:#444;border-left-color:rgba(0,0,0,.1);border-right-color:rgba(0,0,0,.1);border-top-color:rgba(0,0,0,.2)}.uk-htmleditor-navbar-nav>li.uk-active>a{background-color:#fafafa;color:#444;border-left-color:rgba(0,0,0,.1);border-right-color:rgba(0,0,0,.1);border-top-color:rgba(0,0,0,.1)}.uk-htmleditor-navbar-flip{float:right}[data-mode=split] .uk-htmleditor-button-code,[data-mode=split] .uk-htmleditor-button-preview{display:none}.uk-htmleditor-content{border-left:1px solid #ddd;border-right:1px solid #ddd;border-bottom:1px solid #ddd;background:#fff;border-bottom-left-radius:4px;border-bottom-right-radius:4px}.uk-htmleditor-content:before,.uk-htmleditor-content:after{content:" ";display:table}.uk-htmleditor-content:after{clear:both}.uk-htmleditor-fullscreen{position:fixed;top:0;left:0;right:0;bottom:0;z-index:990}.uk-htmleditor-fullscreen .uk-htmleditor-content{position:absolute;top:41px;left:0;right:0;bottom:0}.uk-htmleditor-fullscreen .uk-icon-expand:before{content:"\f066"}.uk-htmleditor-code,.uk-htmleditor-preview{-moz-box-sizing:border-box;box-sizing:border-box}.uk-htmleditor-preview{padding:20px;overflow-y:scroll}[data-mode=tab][data-active-tab=code] .uk-htmleditor-preview,[data-mode=tab][data-active-tab=preview] .uk-htmleditor-code{display:none}[data-mode=split] .uk-htmleditor-code,[data-mode=split] .uk-htmleditor-preview{float:left;width:50%}[data-mode=split] .uk-htmleditor-code{border-right:1px solid #eee}.uk-htmleditor .CodeMirror{padding:10px;-moz-box-sizing:border-box;box-sizing:border-box}.uk-htmleditor-navbar-nav:first-child>li:first-child>a{border-top-left-radius:4px}.uk-htmleditor-navbar-flip .uk-htmleditor-navbar-nav>li>a{margin-left:0;margin-right:-1px}.uk-htmleditor-navbar-flip .uk-htmleditor-navbar-nav:first-child>li:first-child>a{border-top-left-radius:0}.uk-htmleditor-navbar-flip .uk-htmleditor-navbar-nav:last-child>li:last-child>a{border-top-right-radius:4px}.uk-htmleditor-fullscreen .uk-htmleditor-navbar{border-top:none;border-left:none;border-right:none;border-radius:0}.uk-htmleditor-fullscreen .uk-htmleditor-content{border:none;border-radius:0}.uk-htmleditor-fullscreen .uk-htmleditor-navbar-nav>li>a{border-radius:0!important}.uk-nestable{padding:0;list-style:none}.uk-nestable-list{margin:0;padding-left:40px;list-style:none}.uk-nestable-list-dragged{position:absolute;z-index:1050;padding-left:0;pointer-events:none}.uk-nestable-item{margin-bottom:10px;padding:5px;background:#f5f5f5;border-radius:4px;border:1px solid rgba(0,0,0,.06);text-shadow:0 1px 0 #fff}.uk-nestable-placeholder{-moz-box-sizing:border-box;box-sizing:border-box;margin-bottom:10px;border:1px dashed #ddd}.uk-nestable-empty{min-height:40px}.uk-nestable-handle{display:inline-block;font-size:18px;color:#ddd}.uk-nestable-handle:hover{cursor:move}.uk-nestable-handle:after{content:"\f0c9";font-family:FontAwesome}.uk-nestable-moving,.uk-nestable-moving *{cursor:move}[data-nestable-action=toggle]{display:inline-block;color:#999;visibility:hidden}[data-nestable-action=toggle]:hover{color:#444;cursor:pointer}[data-nestable-action=toggle]:after{content:"\f147";font-family:FontAwesome}.uk-parent>.uk-nestable-item [data-nestable-action=toggle]{visibility:visible}.uk-collapsed>.uk-nestable-item [data-nestable-action=toggle]:after{content:"\f196"}.uk-collapsed .uk-nestable-list{display:none}.uk-notify{position:fixed;top:10px;left:10px;z-index:1040;-moz-box-sizing:border-box;box-sizing:border-box;width:350px}.uk-notify-top-right,.uk-notify-bottom-right{left:auto;right:10px}.uk-notify-top-center,.uk-notify-bottom-center{left:50%;margin-left:-175px}.uk-notify-bottom-left,.uk-notify-bottom-right,.uk-notify-bottom-center{top:auto;bottom:10px}@media (max-width:479px){.uk-notify{left:10px;right:10px;width:auto;margin:0}}.uk-notify-message{position:relative;margin-bottom:10px;padding:15px;background:#444;color:#fff;font-size:16px;line-height:22px;cursor:pointer;border:1px solid #444;border-radius:4px}.uk-notify-message>.uk-close{visibility:hidden;float:right}.uk-notify-message:hover>.uk-close{visibility:visible}.uk-notify-message-primary{background:#ebf7fd;color:#2d7091;border-color:rgba(45,112,145,.3)}.uk-notify-message-success{background:#f2fae3;color:#659f13;border-color:rgba(101,159,19,.3)}.uk-notify-message-warning{background:#fffceb;color:#e28327;border-color:rgba(226,131,39,.3)}.uk-notify-message-danger{background:#fff1f0;color:#d85030;border-color:rgba(216,80,48,.3)}.uk-search{display:inline-block;position:relative;margin:0}.uk-search:before{content:"\f002";position:absolute;top:0;left:0;width:30px;line-height:30px;text-align:center;font-family:FontAwesome;font-size:14px;color:rgba(0,0,0,.2)}.uk-search-field{width:120px;height:30px;padding:0 30px;border:1px solid rgba(0,0,0,0);background:rgba(0,0,0,0);color:#444;-webkit-transition:all linear .2s;transition:all linear .2s;border-radius:0}input.uk-search-field{-webkit-appearance:none}.uk-search-field:-ms-input-placeholder{color:#999}.uk-search-field::-moz-placeholder{color:#999}.uk-search-field::-webkit-input-placeholder{color:#999}.uk-search-field::-ms-clear{display:none}.uk-search-field:focus{outline:0}.uk-search-field:focus,.uk-search.uk-active .uk-search-field{width:180px}.uk-search-close{display:none;position:absolute;top:0;right:0;width:30px;line-height:30px;text-align:center;font-size:14px;color:rgba(0,0,0,.2);padding:0;border:0;-webkit-appearance:none;background:0 0}.uk-loading>.uk-search-close,.uk-active>.uk-search-close{display:block}.uk-search-close:after{display:block;content:"\f00d";font-family:FontAwesome}.uk-loading>.uk-search-close:after{content:"\f110";-webkit-animation:uk-spin 2s infinite linear;animation:uk-spin 2s infinite linear}.uk-dropdown-search{width:300px;margin-top:0;background:#fff;color:#444}.uk-open>.uk-dropdown-search{-webkit-animation:uk-slide-top-fixed .2s ease-in-out;animation:uk-slide-top-fixed .2s ease-in-out}.uk-navbar-flip .uk-dropdown-search{margin-top:12px;margin-right:-16px}.uk-nav-search>li>a{color:#444}.uk-nav-search>li.uk-active>a{background:#00a8e6;color:#fff;outline:0;box-shadow:inset 0 0 5px rgba(0,0,0,.05);text-shadow:0 -1px 0 rgba(0,0,0,.1)}.uk-nav-search .uk-nav-header{color:#999}.uk-nav-search .uk-nav-divider{border-top:1px solid #ddd}.uk-nav-search ul a{color:#07d}.uk-nav-search ul a:hover{color:#059}.uk-offcanvas .uk-search{display:block;margin:20px 15px}.uk-offcanvas .uk-search:before{color:#777}.uk-offcanvas .uk-search-field{width:100%;border-color:rgba(0,0,0,0);background:#1a1a1a;color:#ccc}.uk-offcanvas .uk-search-field:-ms-input-placeholder{color:#777}.uk-offcanvas .uk-search-field::-moz-placeholder{color:#777}.uk-offcanvas .uk-search-field::-webkit-input-placeholder{color:#777}.uk-sortable{position:relative}.uk-sortable>*{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.uk-sortable>* *{-webkit-user-drag:none;user-drag:none}.uk-sortable-dragged{position:absolute;z-index:1050;pointer-events:none}.uk-sortable-placeholder{opacity:0}.uk-sortable-over{opacity:.3}.uk-sortable-moving,.uk-sortable-moving *{cursor:move}.uk-sticky{z-index:980}.uk-dragover{box-shadow:0 0 20px rgba(100,100,100,.3)} \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/uikit/addons/uikit.gradient.addons.css b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/uikit/addons/uikit.gradient.addons.css new file mode 100644 index 000000000..f78ecc7a2 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/uikit/addons/uikit.gradient.addons.css @@ -0,0 +1,1226 @@ +/*! UIkit 2.8.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */ + +/* ======================================================================== + Component: Dotnav + ========================================================================== */ +/* + * 1. Remove default list style + * 2. Remove whitespace between child elements when using `inline-block` + */ +.uk-dotnav { + /* 1 */ + padding: 0; + list-style: none; + /* 2 */ + font-size: 0.001px; +} +/* Items + ========================================================================== */ +/* + * 1. Reset whitespace hack + * 2. Remove the gap at the bottom of it container + */ +.uk-dotnav > li { + display: inline-block; + /* 1 */ + font-size: 1rem; + /* 2 */ + vertical-align: top; +} +.uk-dotnav > li:nth-child(n+2) { + margin-left: 15px; +} +/* + * Items + * 1. Remove the gap at the bottom of it container + * 2. Hide text if present + */ +.uk-dotnav > li > a { + display: inline-block; + -moz-box-sizing: content-box; + box-sizing: content-box; + width: 20px; + height: 20px; + border-radius: 50%; + background: rgba(50, 50, 50, 0.1); + /* 1 */ + vertical-align: top; + /* 2 */ + overflow: hidden; + text-indent: -999%; + -webkit-transition: all 0.2s ease-in-out; + transition: all 0.2s ease-in-out; +} +/* + * Hover + * 1. Apply hover style also to focus state + * 2. Remove default focus style + */ +.uk-dotnav > li > a:hover, +.uk-dotnav > li > a:focus { + background: rgba(50, 50, 50, 0.4); + /* 2 */ + outline: none; +} +/* OnClick */ +.uk-dotnav > li > a:active { + background: rgba(50, 50, 50, 0.6); +} +/* Active */ +.uk-dotnav > li.uk-active > a { + background: rgba(50, 50, 50, 0.4); + -webkit-transform: scale(1.3); + transform: scale(1.3); +} +/* Modifier: 'dotnav-vertical' + ========================================================================== */ +.uk-dotnav-vertical > li { + display: block; +} +.uk-dotnav-vertical > li:nth-child(n+2) { + margin-left: 0; + margin-top: 15px; +} +/* ======================================================================== + Component: Slidenav + ========================================================================== */ +/* + * 1. Required for `a` elements + * 2. Dimension + * 3. Style + */ +.uk-slidenav { + /* 1 */ + display: inline-block; + /* 2 */ + -moz-box-sizing: border-box; + box-sizing: border-box; + width: 60px; + height: 60px; + /* 3 */ + line-height: 60px; + color: rgba(50, 50, 50, 0.4); + font-size: 60px; + text-align: center; +} +/* + * Hover + * 1. Apply hover style also to focus state + * 2. Remove default focus style + * 3. Required for `a` elements + * 4. Style + */ +.uk-slidenav:hover, +.uk-slidenav:focus { + /* 2 */ + outline: none; + /* 3 */ + text-decoration: none; + /* 4 */ + color: rgba(50, 50, 50, 0.7); + cursor: pointer; +} +/* Active */ +.uk-slidenav:active { + color: rgba(50, 50, 50, 0.9); +} +/* + * Icons + */ +.uk-slidenav-previous:before { + content: "\f104"; + font-family: FontAwesome; +} +.uk-slidenav-next:before { + content: "\f105"; + font-family: FontAwesome; +} +/* Sub-object: `uk-slidenav-position` + ========================================================================== */ +/* + * 1. Container width fits its content + * 2. Corrects max-width behavior (3.) if padding and border are used + * 3. Responsive behavior + * 4. Create position context for dropdowns + */ +.uk-slidenav-position { + /* 1 */ + display: inline-block; + /* 2 */ + -moz-box-sizing: border-box; + box-sizing: border-box; + /* 3 */ + max-width: 100%; + /* 4 */ + position: relative; +} +/* + * Center vertically + */ +.uk-slidenav-position .uk-slidenav { + display: none; + position: absolute; + top: 50%; + margin-top: -30px; +} +.uk-slidenav-position:hover .uk-slidenav { + display: block; +} +.uk-slidenav-position .uk-slidenav-previous { + left: 20px; +} +.uk-slidenav-position .uk-slidenav-next { + right: 20px; +} +/* ======================================================================== + Component: Form advanced + Note: Only works in Webkit at the moment + ========================================================================== */ +/* + * 1. Style + * 2. Makes box more robust so it clips the child element + * 3. Vertical alignment + * 4. Remove default style + * 5. Fix black background on iOS + */ +.uk-form input[type="radio"], +.uk-form input[type="checkbox"] { + /* 1 */ + display: inline-block; + height: 14px; + width: 14px; + border: 1px solid #aaaaaa; + /* 2 */ + overflow: hidden; + /* 3 */ + margin-top: -4px; + vertical-align: middle; + /* 4 */ + -webkit-appearance: none; + outline: 0; + /* 5 */ + background: transparent; +} +/* Radio */ +.uk-form input[type="radio"] { + border-radius: 50%; +} +/* + * Checked + */ +.uk-form input[type=checkbox]:checked:before, +.uk-form input[type=radio]:checked:before { + display: block; +} +/* Radio */ +.uk-form input[type=radio]:checked:before { + content: ''; + width: 8px; + height: 8px; + margin: 2px auto 0; + border-radius: 50%; + background: #00a8e6; +} +/* Checkbox */ +.uk-form input[type=checkbox]:checked:before { + content: "\f00c"; + font-family: FontAwesome; + font-size: 12px; + -webkit-font-smoothing: antialiased; + text-align: center; + line-height: 12px; + color: #00a8e6; +} +/* + * Disabled + */ +.uk-form input[type=radio]:disabled, +.uk-form input[type=checkbox]:disabled { + border-color: #dddddd; +} +.uk-form input[type=radio]:disabled:checked:before { + background-color: #aaaaaa; +} +.uk-form input[type=checkbox]:disabled:checked:before { + color: #aaaaaa; +} +/* ======================================================================== + Component: Form file + ========================================================================== */ +/* + * 1. Behave like form elements + * 2. Create position context for dropdowns + * 3. Clip content + */ +.uk-form-file { + /* 1 */ + display: inline-block; + vertical-align: middle; + /* 2 */ + position: relative; + /* 3 */ + overflow: hidden; +} +/* + * 1. Required for Firefox + * 2. Expand height and required for the cursor + */ +.uk-form-file input[type="file"] { + position: absolute; + top: 0; + z-index: 1; + width: 100%; + opacity: 0; + cursor: pointer; + /* 1 */ + left: 0; + /* 2 */ + font-size: 500px; +} +/* ======================================================================== + Component: Form password + ========================================================================== */ +.uk-form-password { + position: relative; + display: inline-block; + max-width: 100%; +} +.uk-form-password-toggle { + display: block; + position: absolute; + top: 50%; + right: 10px; + margin-top: -6px; + font-size: 13px; + line-height: 13px; + color: #999999; +} +.uk-form-password-toggle:hover { + color: #999999; + text-decoration: none; +} +.uk-form-password > input { + padding-right: 50px !important; +} +/* ======================================================================== + Component: Form select + ========================================================================== */ +/* + * 1. Behave like form elements + * 2. Create position context for dropdowns + * 3. Clip content + */ +.uk-form-select { + /* 1 */ + display: inline-block; + vertical-align: middle; + /* 2 */ + position: relative; + /* 3 */ + overflow: hidden; +} +/* + * 1. Required for Firefox + * 1. Required for Webkit to make `height` work + */ +.uk-form-select select { + position: absolute; + top: 0; + z-index: 1; + width: 100%; + height: 100%; + opacity: 0; + cursor: pointer; + /* 1 */ + left: 0; + /* 2 */ + -webkit-appearance: none; +} +/* ======================================================================== + Component: Placeholder + ========================================================================== */ +.uk-placeholder { + margin-bottom: 15px; + padding: 20px; + border: 1px dashed #dddddd; + background: #fafafa; + color: #444444; +} +/* + * Add margin if adjacent element + */ +* + .uk-placeholder { + margin-top: 15px; +} +/* + * Remove margin from the last-child + */ +.uk-placeholder > :last-child { + margin-bottom: 0; +} +/* Modifier: `uk-placeholder-large` + ========================================================================== */ +.uk-placeholder-large { + padding-top: 80px; + padding-bottom: 80px; +} +/* ======================================================================== + Component: Autocomplete + ========================================================================== */ +/* + * 1. Behave like form elements + * 2. Create position context for dropdowns + */ +.uk-autocomplete { + /* 1 */ + display: inline-block; + vertical-align: middle; + /* 2 */ + position: relative; +} +/* Nav modifier `uk-nav-autocomplete` + ========================================================================== */ +/* + * Items + */ +.uk-nav-autocomplete > li > a { + color: #444444; +} +/* + * Active + * 1. Remove default focus style + */ +.uk-nav-autocomplete > li.uk-active > a { + background: #009dd8; + color: #ffffff; + /* 1 */ + outline: none; + box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.2); + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2); +} +/* + * Sub-object: `uk-nav-header` + */ +.uk-nav-autocomplete .uk-nav-header { + color: #999999; +} +/* + * Sub-object: `uk-nav-divider` + */ +.uk-nav-autocomplete .uk-nav-divider { + border-top: 1px solid #dddddd; +} +/* ======================================================================== + Component: Datepicker + ========================================================================== */ +/* + * Reset dropdown width + */ +.uk-datepicker { + width: auto; +} +/* Sub-object: `uk-datepicker-nav` +========================================================================== */ +.uk-datepicker-nav { + margin-bottom: 15px; + text-align: center; + line-height: 20px; +} +/* + * Micro clearfix + */ +.uk-datepicker-nav:before, +.uk-datepicker-nav:after { + content: " "; + display: table; +} +.uk-datepicker-nav:after { + clear: both; +} +/* + * Previous and next navigation + */ +.uk-datepicker-nav a { + color: #444444; + text-decoration: none; +} +.uk-datepicker-nav a:hover { + color: #444444; +} +.uk-datepicker-previous { + float: left; +} +.uk-datepicker-next { + float: right; +} +.uk-datepicker-previous:after, +.uk-datepicker-next:after { + width: 20px; + font-family: FontAwesome; +} +.uk-datepicker-previous:after { + content: "\f053"; +} +.uk-datepicker-next:after { + content: "\f054"; +} +/* Sub-object: `uk-datepicker-heading` +========================================================================== */ +/* Sub-object: `uk-datepicker-table` +========================================================================== */ +/* Block element behavior */ +.uk-datepicker-table { + width: 100%; +} +.uk-datepicker-table th, +.uk-datepicker-table td { + padding: 2px; +} +.uk-datepicker-table th { + font-size: 12px; +} +/* + * Item + */ +.uk-datepicker-table a { + display: block; + width: 26px; + line-height: 24px; + text-align: center; + color: #444444; + text-decoration: none; + border: 1px solid transparent; + border-radius: 4px; + background-origin: border-box; +} +/* + * Sub-object: `uk-datepicker-table-muted` + */ +a.uk-datepicker-table-muted { + color: #999999; +} +/* + * Hover + * 1. Apply hover style also to focus state + * 2. Remove default focus style + */ +.uk-datepicker-table a:hover, +.uk-datepicker-table a:focus { + background-color: #fafafa; + color: #444444; + /* 2 */ + outline: none; + border-color: rgba(0, 0, 0, 0.2); + border-bottom-color: rgba(0, 0, 0, 0.3); + text-shadow: 0 1px 0 #ffffff; +} +/* OnClick */ +.uk-datepicker-table a:active { + background-color: #f5f5f5; + color: #444444; + border-color: rgba(0, 0, 0, 0.2); + border-top-color: rgba(0, 0, 0, 0.3); + background-image: none; + box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.1); +} +/* + * Active + */ +.uk-datepicker-table a.uk-active { + background: #009dd8; + color: #ffffff; + border: 1px solid rgba(0, 0, 0, 0.2); + border-bottom-color: rgba(0, 0, 0, 0.4); + background-origin: border-box; + background-image: -webkit-linear-gradient(top, #00b4f5, #008dc5); + background-image: linear-gradient(to bottom, #00b4f5, #008dc5); + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2); +} +/* ======================================================================== + Component: HTML editor + ========================================================================== */ +/* Sub-object `uk-htmleditor-navbar` + ========================================================================== */ +.uk-htmleditor-navbar { + background: #f7f7f7; + border: 1px solid rgba(0, 0, 0, 0.1); + border-bottom-color: rgba(0, 0, 0, 0.2); + border-top-left-radius: 4px; + border-top-right-radius: 4px; + background-origin: border-box; + background-image: -webkit-linear-gradient(top, #ffffff, #eeeeee); + background-image: linear-gradient(to bottom, #ffffff, #eeeeee); +} +/* + * Micro clearfix + */ +.uk-htmleditor-navbar:before, +.uk-htmleditor-navbar:after { + content: " "; + display: table; +} +.uk-htmleditor-navbar:after { + clear: both; +} +/* Sub-object `uk-htmleditor-navbar-nav` + ========================================================================== */ +.uk-htmleditor-navbar-nav { + margin: 0; + padding: 0; + list-style: none; + float: left; +} +.uk-htmleditor-navbar-nav > li { + float: left; +} +/* + * 1. Dimensions + * 2. Style + */ +.uk-htmleditor-navbar-nav > li > a { + display: block; + -moz-box-sizing: border-box; + box-sizing: border-box; + text-decoration: none; + /* 1 */ + height: 41px; + padding: 0 15px; + line-height: 40px; + /* 2 */ + color: #444444; + font-size: 11px; + cursor: pointer; + margin-top: -1px; + margin-left: -1px; + border: 1px solid transparent; + border-bottom-width: 0; + text-shadow: 0 1px 0 #ffffff; +} +/* + * Hover + * 1. Apply hover style also to focus state + * 2. Remove default focus style + */ +.uk-htmleditor-navbar-nav > li:hover > a, +.uk-htmleditor-navbar-nav > li > a:focus { + background-color: transparent; + color: #444444; + outline: none; + /* 2 */ + position: relative; + z-index: 1; + border-left-color: rgba(0, 0, 0, 0.1); + border-right-color: rgba(0, 0, 0, 0.1); + border-top-color: rgba(0, 0, 0, 0.1); + box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.1); +} +/* OnClick */ +.uk-htmleditor-navbar-nav > li > a:active { + background-color: #f5f5f5; + color: #444444; + border-left-color: rgba(0, 0, 0, 0.1); + border-right-color: rgba(0, 0, 0, 0.1); + border-top-color: rgba(0, 0, 0, 0.2); + box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.1); +} +/* Active */ +.uk-htmleditor-navbar-nav > li.uk-active > a { + background-color: #fafafa; + color: #444444; + border-left-color: rgba(0, 0, 0, 0.1); + border-right-color: rgba(0, 0, 0, 0.1); + border-top-color: rgba(0, 0, 0, 0.2); + box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.1); +} +/* Sub-object: `uk-htmleditor-navbar-flip` + ========================================================================== */ +.uk-htmleditor-navbar-flip { + float: right; +} +/* Sub-object for special buttons + ========================================================================== */ +[data-mode='split'] .uk-htmleditor-button-code, +[data-mode='split'] .uk-htmleditor-button-preview { + display: none; +} +/* Sub-object `uk-htmleditor-content` + ========================================================================== */ +.uk-htmleditor-content { + border-left: 1px solid #dddddd; + border-right: 1px solid #dddddd; + border-bottom: 1px solid #dddddd; + background: #ffffff; + border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; +} +/* + * Micro clearfix + */ +.uk-htmleditor-content:before, +.uk-htmleditor-content:after { + content: " "; + display: table; +} +.uk-htmleditor-content:after { + clear: both; +} +/* Modifier `uk-htmleditor-fullscreen` + ========================================================================== */ +.uk-htmleditor-fullscreen { + position: fixed; + top: 0; + left: 0; + right: 0; + bottom: 0; + z-index: 990; +} +.uk-htmleditor-fullscreen .uk-htmleditor-content { + position: absolute; + top: 41px; + left: 0; + right: 0; + bottom: 0; +} +.uk-htmleditor-fullscreen .uk-icon-expand:before { + content: "\f066"; +} +/* Sub-objects `uk-htmleditor-code` and `uk-htmleditor-preview` + ========================================================================== */ +.uk-htmleditor-code, +.uk-htmleditor-preview { + -moz-box-sizing: border-box; + box-sizing: border-box; +} +.uk-htmleditor-preview { + padding: 20px; + overflow-y: scroll; +} +/* + * Tab view + */ +[data-mode='tab'][data-active-tab='code'] .uk-htmleditor-preview, +[data-mode='tab'][data-active-tab='preview'] .uk-htmleditor-code { + display: none; +} +/* + * Split view + */ +[data-mode='split'] .uk-htmleditor-code, +[data-mode='split'] .uk-htmleditor-preview { + float: left; + width: 50%; +} +[data-mode='split'] .uk-htmleditor-code { + border-right: 1px solid #eeeeee; +} +/* CodeMirror modifications + ========================================================================== */ +.uk-htmleditor .CodeMirror { + padding: 10px; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +/* + * Apply same `border-radius` as `uk-htmleditor-navbar` + */ +.uk-htmleditor-navbar-nav:first-child > li:first-child > a { + border-top-left-radius: 4px; +} +/* + * Sub-modifier `uk-htmleditor-navbar-flip` + */ +/* Collapse border */ +.uk-htmleditor-navbar-flip .uk-htmleditor-navbar-nav > li > a { + margin-left: 0; + margin-right: -1px; +} +/* Apply same `border-radius` as `uk-htmleditor-navbar` */ +.uk-htmleditor-navbar-flip .uk-htmleditor-navbar-nav:first-child > li:first-child > a { + border-top-left-radius: 0; +} +.uk-htmleditor-navbar-flip .uk-htmleditor-navbar-nav:last-child > li:last-child > a { + border-top-right-radius: 4px; +} +/* + * Sub-modifier `uk-htmleditor-fullscreen` + */ +.uk-htmleditor-fullscreen .uk-htmleditor-navbar { + border-top: none; + border-left: none; + border-right: none; + border-radius: 0; +} +.uk-htmleditor-fullscreen .uk-htmleditor-content { + border: none; + border-radius: 0; +} +.uk-htmleditor-fullscreen .uk-htmleditor-navbar-nav > li > a { + border-radius: 0 !important; +} +/* ======================================================================== + Component: Nestable + ========================================================================== */ +.uk-nestable { + padding: 0; + list-style: none; +} +/* Sub-object `uk-nestable-list` + ========================================================================== */ +.uk-nestable-list { + margin: 0; + padding-left: 40px; + list-style: none; +} +/* Sub-modifier `uk-nestable-list-dragged` + ========================================================================== */ +.uk-nestable-list-dragged { + position: absolute; + z-index: 1050; + padding-left: 0; + pointer-events: none; +} +/* Sub-object `uk-nestable-item` + ========================================================================== */ +.uk-nestable-item { + margin-bottom: 10px; + padding: 5px; + background: #f7f7f7; + border-radius: 4px; + border: 1px solid rgba(0, 0, 0, 0.2); + border-bottom-color: rgba(0, 0, 0, 0.3); + background-origin: border-box; + background-image: -webkit-linear-gradient(top, #ffffff, #eeeeee); + background-image: linear-gradient(to bottom, #ffffff, #eeeeee); + text-shadow: 0 1px 0 #ffffff; +} +/* Sub-object `uk-nestable-placeholder` + * The placeholder which marks the drop area + ========================================================================== */ +.uk-nestable-placeholder { + -moz-box-sizing: border-box; + box-sizing: border-box; + margin-bottom: 10px; + border: 1px dashed #dddddd; +} +/* Sub-object `uk-nestable-empty` + * The style of an empty list + ========================================================================== */ +.uk-nestable-empty { + min-height: 40px; +} +/* Sub-object `uk-nestable-handle` + ========================================================================== */ +.uk-nestable-handle { + display: inline-block; + font-size: 18px; + color: #dddddd; +} +/* Hover */ +.uk-nestable-handle:hover { + cursor: move; +} +/* Icon */ +.uk-nestable-handle:after { + content: "\f0c9"; + font-family: FontAwesome; +} +/* Sub-object `uk-nestable-moving` + ========================================================================== */ +.uk-nestable-moving, +.uk-nestable-moving * { + cursor: move; +} +/* Sub-object `[data-action='toggle']` + ========================================================================== */ +/* Hidden by default */ +[data-nestable-action='toggle'] { + display: inline-block; + color: #999999; + visibility: hidden; +} +/* Hover */ +[data-nestable-action='toggle']:hover { + color: #444444; + cursor: pointer; +} +/* Icon */ +[data-nestable-action='toggle']:after { + content: "\f147"; + font-family: FontAwesome; +} +/* + * Show if nested + */ +.uk-parent > .uk-nestable-item [data-nestable-action='toggle'] { + visibility: visible; +} +/* + * Collapsed + */ +.uk-collapsed > .uk-nestable-item [data-nestable-action='toggle']:after { + content: "\f196"; +} +.uk-collapsed .uk-nestable-list { + display: none; +} +/* ======================================================================== + Component: Notify + ========================================================================== */ +/* + * Message container for positioning + */ +.uk-notify { + position: fixed; + top: 10px; + left: 10px; + z-index: 1040; + -moz-box-sizing: border-box; + box-sizing: border-box; + width: 350px; +} +/* Position modifiers +========================================================================== */ +.uk-notify-top-right, +.uk-notify-bottom-right { + left: auto; + right: 10px; +} +.uk-notify-top-center, +.uk-notify-bottom-center { + left: 50%; + margin-left: -175px; +} +.uk-notify-bottom-left, +.uk-notify-bottom-right, +.uk-notify-bottom-center { + top: auto; + bottom: 10px; +} +/* Responsiveness +========================================================================== */ +/* Phones portrait and smaller */ +@media (max-width: 479px) { + /* + * Fit in small screen + */ + .uk-notify { + left: 10px; + right: 10px; + width: auto; + margin: 0; + } +} +/* Sub-object: `uk-notify-message` +========================================================================== */ +.uk-notify-message { + position: relative; + margin-bottom: 10px; + padding: 15px; + background: #444444; + color: #ffffff; + font-size: 16px; + line-height: 22px; + cursor: pointer; + border: 1px solid #444444; + border-radius: 4px; +} +/* Close in notify + ========================================================================== */ +.uk-notify-message > .uk-close { + visibility: hidden; + float: right; +} +.uk-notify-message:hover > .uk-close { + visibility: visible; +} +/* Modifier: `uk-alert-info` + ========================================================================== */ +.uk-notify-message-primary { + background: #ebf7fd; + color: #2d7091; + border-color: rgba(45, 112, 145, 0.3); +} +/* Modifier: `uk-alert-success` + ========================================================================== */ +.uk-notify-message-success { + background: #f2fae3; + color: #659f13; + border-color: rgba(101, 159, 19, 0.3); +} +/* Modifier: `uk-notify-message-warning` + ========================================================================== */ +.uk-notify-message-warning { + background: #fffceb; + color: #e28327; + border-color: rgba(226, 131, 39, 0.3); +} +/* Modifier: `uk-notify-message-danger` + ========================================================================== */ +.uk-notify-message-danger { + background: #fff1f0; + color: #d85030; + border-color: rgba(216, 80, 48, 0.3); +} +/* ======================================================================== + Component: Search + ========================================================================== */ +/* + * 1. Create position context for dropdowns + * 2. Needed for `form` element + */ +.uk-search { + display: inline-block; + /* 1 */ + position: relative; + /* 2 */ + margin: 0; +} +/* + * Icon + */ +.uk-search:before { + content: "\f002"; + position: absolute; + top: 0; + left: 0; + width: 30px; + line-height: 30px; + text-align: center; + font-family: FontAwesome; + font-size: 14px; + color: rgba(0, 0, 0, 0.2); +} +/* Sub-object `uk-search-field` + ========================================================================== */ +/* + * 1. Needed to reset iOS `input[type="search"]` appearance + */ +.uk-search-field { + width: 120px; + height: 30px; + padding: 0 30px; + border: 1px solid rgba(0, 0, 0, 0); + background: rgba(0, 0, 0, 0); + color: #444444; + -webkit-transition: all linear 0.2s; + transition: all linear 0.2s; + /* 1 */ + border-radius: 0; +} +/* + * Needed to reset iOS `input[type="search"]` appearance + * Higher specificity to override appearance set by normalize.less + */ +input.uk-search-field { + -webkit-appearance: none; +} +/* Placeholder */ +.uk-search-field:-ms-input-placeholder { + color: #999999; +} +.uk-search-field::-moz-placeholder { + color: #999999; +} +.uk-search-field::-webkit-input-placeholder { + color: #999999; +} +/* Removes cancel button in IE10 */ +.uk-search-field::-ms-clear { + display: none; +} +/* Focus */ +.uk-search-field:focus { + outline: 0; +} +/* Focus + active */ +.uk-search-field:focus, +.uk-search.uk-active .uk-search-field { + width: 180px; +} +/* Sub-object `uk-search-close` + ========================================================================== */ +/* + * 1. Required for `button` elements + * 2. Needed for Safari + */ +.uk-search-close { + display: none; + position: absolute; + top: 0; + right: 0; + width: 30px; + line-height: 30px; + text-align: center; + font-size: 14px; + color: rgba(0, 0, 0, 0.2); + /* 1. */ + padding: 0; + border: 0; + -webkit-appearance: none; + /* 2. */ + background: transparent; +} +.uk-loading > .uk-search-close, +.uk-active > .uk-search-close { + display: block; +} +/* + * Icon + */ +.uk-search-close:after { + display: block; + content: "\f00d"; + font-family: FontAwesome; +} +/* Loading icon */ +.uk-loading > .uk-search-close:after { + content: "\f110"; + -webkit-animation: uk-spin 2s infinite linear; + animation: uk-spin 2s infinite linear; +} +/* Dropdown modifier: `uk-dropdown-search` + ========================================================================== */ +.uk-dropdown-search { + width: 300px; + margin-top: 0; + background: #ffffff; + color: #444444; +} +.uk-open > .uk-dropdown-search { + -webkit-animation: uk-slide-top-fixed 0.2s ease-in-out; + animation: uk-slide-top-fixed 0.2s ease-in-out; +} +/* + * Dependency `uk-navbar-flip` + */ +.uk-navbar-flip .uk-dropdown-search { + margin-top: 12px; + margin-right: -16px; +} +/* Nav modifier `uk-nav-search` + ========================================================================== */ +/* + * Items + */ +.uk-nav-search > li > a { + color: #444444; +} +/* + * Active + * 1. Remove default focus style + */ +.uk-nav-search > li.uk-active > a { + background: #009dd8; + color: #ffffff; + /* 1 */ + outline: none; + box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.2); + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2); +} +/* + * Sub-object: `uk-nav-header` + */ +.uk-nav-search .uk-nav-header { + color: #999999; +} +/* + * Sub-object: `uk-nav-divider` + */ +.uk-nav-search .uk-nav-divider { + border-top: 1px solid #dddddd; +} +/* + * Nested items + */ +.uk-nav-search ul a { + color: #0077dd; +} +.uk-nav-search ul a:hover { + color: #005599; +} +/* Search in offcanvas + ========================================================================== */ +.uk-offcanvas .uk-search { + display: block; + margin: 20px 15px; +} +.uk-offcanvas .uk-search:before { + color: #777777; +} +.uk-offcanvas .uk-search-field { + width: 100%; + border-color: rgba(0, 0, 0, 0); + background: #1a1a1a; + color: #cccccc; +} +.uk-offcanvas .uk-search-field:-ms-input-placeholder { + color: #777777; +} +.uk-offcanvas .uk-search-field::-moz-placeholder { + color: #777777; +} +.uk-offcanvas .uk-search-field::-webkit-input-placeholder { + color: #777777; +} +/* ======================================================================== + Component: Sortable + ========================================================================== */ +.uk-sortable { + position: relative; +} +/* + * Makes text unselectable + */ +.uk-sortable > * { + -moz-user-select: none; + -webkit-user-select: none; + -ms-user-select: none; + user-select: none; +} +/* + * Prevents images and links from being dragged (default browser behavior) + * Currently only works in Webkit + */ +.uk-sortable > * * { + -webkit-user-drag: none; + user-drag: none; +} +/* Sub-modifier `uk-sortable-dragged` + ========================================================================== */ +.uk-sortable-dragged { + position: absolute; + z-index: 1050; + pointer-events: none; +} +/* Sub-modifier `uk-sortable-placeholder` + ========================================================================== */ +.uk-sortable-placeholder { + opacity: 0; +} +/* Sub-modifier `uk-sortable-over` + * Only if `warp:true` + ========================================================================== */ +.uk-sortable-over { + opacity: 0.3; +} +/* Sub-object `uk-nestable-moving` + ========================================================================== */ +.uk-sortable-moving, +.uk-sortable-moving * { + cursor: move; +} +/* ======================================================================== + Component: Sticky + ========================================================================== */ +.uk-sticky { + z-index: 980; +} +/* ======================================================================== + Component: Upload + ========================================================================== */ +/* + * Create a box-shadow when dragging a file over the upload area + */ +.uk-dragover { + box-shadow: 0 0 20px rgba(100, 100, 100, 0.3); +} diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/uikit/addons/uikit.gradient.addons.min.css b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/uikit/addons/uikit.gradient.addons.min.css new file mode 100644 index 000000000..ed9a79b96 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/uikit/addons/uikit.gradient.addons.min.css @@ -0,0 +1,3 @@ +/*! UIkit 2.8.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */ + +.uk-dotnav{padding:0;list-style:none;font-size:0}.uk-dotnav>li{display:inline-block;font-size:1rem;vertical-align:top}.uk-dotnav>li:nth-child(n+2){margin-left:15px}.uk-dotnav>li>a{display:inline-block;-moz-box-sizing:content-box;box-sizing:content-box;width:20px;height:20px;border-radius:50%;background:rgba(50,50,50,.1);vertical-align:top;overflow:hidden;text-indent:-999%;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.uk-dotnav>li>a:hover,.uk-dotnav>li>a:focus{background:rgba(50,50,50,.4);outline:0}.uk-dotnav>li>a:active{background:rgba(50,50,50,.6)}.uk-dotnav>li.uk-active>a{background:rgba(50,50,50,.4);-webkit-transform:scale(1.3);transform:scale(1.3)}.uk-dotnav-vertical>li{display:block}.uk-dotnav-vertical>li:nth-child(n+2){margin-left:0;margin-top:15px}.uk-slidenav{display:inline-block;-moz-box-sizing:border-box;box-sizing:border-box;width:60px;height:60px;line-height:60px;color:rgba(50,50,50,.4);font-size:60px;text-align:center}.uk-slidenav:hover,.uk-slidenav:focus{outline:0;text-decoration:none;color:rgba(50,50,50,.7);cursor:pointer}.uk-slidenav:active{color:rgba(50,50,50,.9)}.uk-slidenav-previous:before{content:"\f104";font-family:FontAwesome}.uk-slidenav-next:before{content:"\f105";font-family:FontAwesome}.uk-slidenav-position{display:inline-block;-moz-box-sizing:border-box;box-sizing:border-box;max-width:100%;position:relative}.uk-slidenav-position .uk-slidenav{display:none;position:absolute;top:50%;margin-top:-30px}.uk-slidenav-position:hover .uk-slidenav{display:block}.uk-slidenav-position .uk-slidenav-previous{left:20px}.uk-slidenav-position .uk-slidenav-next{right:20px}.uk-form input[type=radio],.uk-form input[type=checkbox]{display:inline-block;height:14px;width:14px;border:1px solid #aaa;overflow:hidden;margin-top:-4px;vertical-align:middle;-webkit-appearance:none;outline:0;background:0 0}.uk-form input[type=radio]{border-radius:50%}.uk-form input[type=checkbox]:checked:before,.uk-form input[type=radio]:checked:before{display:block}.uk-form input[type=radio]:checked:before{content:'';width:8px;height:8px;margin:2px auto 0;border-radius:50%;background:#00a8e6}.uk-form input[type=checkbox]:checked:before{content:"\f00c";font-family:FontAwesome;font-size:12px;-webkit-font-smoothing:antialiased;text-align:center;line-height:12px;color:#00a8e6}.uk-form input[type=radio]:disabled,.uk-form input[type=checkbox]:disabled{border-color:#ddd}.uk-form input[type=radio]:disabled:checked:before{background-color:#aaa}.uk-form input[type=checkbox]:disabled:checked:before{color:#aaa}.uk-form-file{display:inline-block;vertical-align:middle;position:relative;overflow:hidden}.uk-form-file input[type=file]{position:absolute;top:0;z-index:1;width:100%;opacity:0;cursor:pointer;left:0;font-size:500px}.uk-form-password{position:relative;display:inline-block;max-width:100%}.uk-form-password-toggle{display:block;position:absolute;top:50%;right:10px;margin-top:-6px;font-size:13px;line-height:13px;color:#999}.uk-form-password-toggle:hover{color:#999;text-decoration:none}.uk-form-password>input{padding-right:50px!important}.uk-form-select{display:inline-block;vertical-align:middle;position:relative;overflow:hidden}.uk-form-select select{position:absolute;top:0;z-index:1;width:100%;height:100%;opacity:0;cursor:pointer;left:0;-webkit-appearance:none}.uk-placeholder{margin-bottom:15px;padding:20px;border:1px dashed #ddd;background:#fafafa;color:#444}*+.uk-placeholder{margin-top:15px}.uk-placeholder>:last-child{margin-bottom:0}.uk-placeholder-large{padding-top:80px;padding-bottom:80px}.uk-autocomplete{display:inline-block;vertical-align:middle;position:relative}.uk-nav-autocomplete>li>a{color:#444}.uk-nav-autocomplete>li.uk-active>a{background:#009dd8;color:#fff;outline:0;box-shadow:inset 0 2px 4px rgba(0,0,0,.2);text-shadow:0 -1px 0 rgba(0,0,0,.2)}.uk-nav-autocomplete .uk-nav-header{color:#999}.uk-nav-autocomplete .uk-nav-divider{border-top:1px solid #ddd}.uk-datepicker{width:auto}.uk-datepicker-nav{margin-bottom:15px;text-align:center;line-height:20px}.uk-datepicker-nav:before,.uk-datepicker-nav:after{content:" ";display:table}.uk-datepicker-nav:after{clear:both}.uk-datepicker-nav a{color:#444;text-decoration:none}.uk-datepicker-nav a:hover{color:#444}.uk-datepicker-previous{float:left}.uk-datepicker-next{float:right}.uk-datepicker-previous:after,.uk-datepicker-next:after{width:20px;font-family:FontAwesome}.uk-datepicker-previous:after{content:"\f053"}.uk-datepicker-next:after{content:"\f054"}.uk-datepicker-table{width:100%}.uk-datepicker-table th,.uk-datepicker-table td{padding:2px}.uk-datepicker-table th{font-size:12px}.uk-datepicker-table a{display:block;width:26px;line-height:24px;text-align:center;color:#444;text-decoration:none;border:1px solid transparent;border-radius:4px;background-origin:border-box}a.uk-datepicker-table-muted{color:#999}.uk-datepicker-table a:hover,.uk-datepicker-table a:focus{background-color:#fafafa;color:#444;outline:0;border-color:rgba(0,0,0,.2);border-bottom-color:rgba(0,0,0,.3);text-shadow:0 1px 0 #fff}.uk-datepicker-table a:active{background-color:#f5f5f5;color:#444;border-color:rgba(0,0,0,.2);border-top-color:rgba(0,0,0,.3);background-image:none;box-shadow:inset 0 2px 4px rgba(0,0,0,.1)}.uk-datepicker-table a.uk-active{background:#009dd8;color:#fff;border:1px solid rgba(0,0,0,.2);border-bottom-color:rgba(0,0,0,.4);background-origin:border-box;background-image:-webkit-linear-gradient(top,#00b4f5,#008dc5);background-image:linear-gradient(to bottom,#00b4f5,#008dc5);text-shadow:0 -1px 0 rgba(0,0,0,.2)}.uk-htmleditor-navbar{background:#f7f7f7;border:1px solid rgba(0,0,0,.1);border-bottom-color:rgba(0,0,0,.2);border-top-left-radius:4px;border-top-right-radius:4px;background-origin:border-box;background-image:-webkit-linear-gradient(top,#fff,#eee);background-image:linear-gradient(to bottom,#fff,#eee)}.uk-htmleditor-navbar:before,.uk-htmleditor-navbar:after{content:" ";display:table}.uk-htmleditor-navbar:after{clear:both}.uk-htmleditor-navbar-nav{margin:0;padding:0;list-style:none;float:left}.uk-htmleditor-navbar-nav>li{float:left}.uk-htmleditor-navbar-nav>li>a{display:block;-moz-box-sizing:border-box;box-sizing:border-box;text-decoration:none;height:41px;padding:0 15px;line-height:40px;color:#444;font-size:11px;cursor:pointer;margin-top:-1px;margin-left:-1px;border:1px solid transparent;border-bottom-width:0;text-shadow:0 1px 0 #fff}.uk-htmleditor-navbar-nav>li:hover>a,.uk-htmleditor-navbar-nav>li>a:focus{background-color:transparent;color:#444;outline:0;position:relative;z-index:1;border-left-color:rgba(0,0,0,.1);border-right-color:rgba(0,0,0,.1);border-top-color:rgba(0,0,0,.1);box-shadow:inset 0 2px 4px rgba(0,0,0,.1)}.uk-htmleditor-navbar-nav>li>a:active{background-color:#f5f5f5;color:#444;border-left-color:rgba(0,0,0,.1);border-right-color:rgba(0,0,0,.1);border-top-color:rgba(0,0,0,.2);box-shadow:inset 0 2px 4px rgba(0,0,0,.1)}.uk-htmleditor-navbar-nav>li.uk-active>a{background-color:#fafafa;color:#444;border-left-color:rgba(0,0,0,.1);border-right-color:rgba(0,0,0,.1);border-top-color:rgba(0,0,0,.2);box-shadow:inset 0 2px 4px rgba(0,0,0,.1)}.uk-htmleditor-navbar-flip{float:right}[data-mode=split] .uk-htmleditor-button-code,[data-mode=split] .uk-htmleditor-button-preview{display:none}.uk-htmleditor-content{border-left:1px solid #ddd;border-right:1px solid #ddd;border-bottom:1px solid #ddd;background:#fff;border-bottom-left-radius:4px;border-bottom-right-radius:4px}.uk-htmleditor-content:before,.uk-htmleditor-content:after{content:" ";display:table}.uk-htmleditor-content:after{clear:both}.uk-htmleditor-fullscreen{position:fixed;top:0;left:0;right:0;bottom:0;z-index:990}.uk-htmleditor-fullscreen .uk-htmleditor-content{position:absolute;top:41px;left:0;right:0;bottom:0}.uk-htmleditor-fullscreen .uk-icon-expand:before{content:"\f066"}.uk-htmleditor-code,.uk-htmleditor-preview{-moz-box-sizing:border-box;box-sizing:border-box}.uk-htmleditor-preview{padding:20px;overflow-y:scroll}[data-mode=tab][data-active-tab=code] .uk-htmleditor-preview,[data-mode=tab][data-active-tab=preview] .uk-htmleditor-code{display:none}[data-mode=split] .uk-htmleditor-code,[data-mode=split] .uk-htmleditor-preview{float:left;width:50%}[data-mode=split] .uk-htmleditor-code{border-right:1px solid #eee}.uk-htmleditor .CodeMirror{padding:10px;-moz-box-sizing:border-box;box-sizing:border-box}.uk-htmleditor-navbar-nav:first-child>li:first-child>a{border-top-left-radius:4px}.uk-htmleditor-navbar-flip .uk-htmleditor-navbar-nav>li>a{margin-left:0;margin-right:-1px}.uk-htmleditor-navbar-flip .uk-htmleditor-navbar-nav:first-child>li:first-child>a{border-top-left-radius:0}.uk-htmleditor-navbar-flip .uk-htmleditor-navbar-nav:last-child>li:last-child>a{border-top-right-radius:4px}.uk-htmleditor-fullscreen .uk-htmleditor-navbar{border-top:none;border-left:none;border-right:none;border-radius:0}.uk-htmleditor-fullscreen .uk-htmleditor-content{border:none;border-radius:0}.uk-htmleditor-fullscreen .uk-htmleditor-navbar-nav>li>a{border-radius:0!important}.uk-nestable{padding:0;list-style:none}.uk-nestable-list{margin:0;padding-left:40px;list-style:none}.uk-nestable-list-dragged{position:absolute;z-index:1050;padding-left:0;pointer-events:none}.uk-nestable-item{margin-bottom:10px;padding:5px;background:#f7f7f7;border-radius:4px;border:1px solid rgba(0,0,0,.2);border-bottom-color:rgba(0,0,0,.3);background-origin:border-box;background-image:-webkit-linear-gradient(top,#fff,#eee);background-image:linear-gradient(to bottom,#fff,#eee);text-shadow:0 1px 0 #fff}.uk-nestable-placeholder{-moz-box-sizing:border-box;box-sizing:border-box;margin-bottom:10px;border:1px dashed #ddd}.uk-nestable-empty{min-height:40px}.uk-nestable-handle{display:inline-block;font-size:18px;color:#ddd}.uk-nestable-handle:hover{cursor:move}.uk-nestable-handle:after{content:"\f0c9";font-family:FontAwesome}.uk-nestable-moving,.uk-nestable-moving *{cursor:move}[data-nestable-action=toggle]{display:inline-block;color:#999;visibility:hidden}[data-nestable-action=toggle]:hover{color:#444;cursor:pointer}[data-nestable-action=toggle]:after{content:"\f147";font-family:FontAwesome}.uk-parent>.uk-nestable-item [data-nestable-action=toggle]{visibility:visible}.uk-collapsed>.uk-nestable-item [data-nestable-action=toggle]:after{content:"\f196"}.uk-collapsed .uk-nestable-list{display:none}.uk-notify{position:fixed;top:10px;left:10px;z-index:1040;-moz-box-sizing:border-box;box-sizing:border-box;width:350px}.uk-notify-top-right,.uk-notify-bottom-right{left:auto;right:10px}.uk-notify-top-center,.uk-notify-bottom-center{left:50%;margin-left:-175px}.uk-notify-bottom-left,.uk-notify-bottom-right,.uk-notify-bottom-center{top:auto;bottom:10px}@media (max-width:479px){.uk-notify{left:10px;right:10px;width:auto;margin:0}}.uk-notify-message{position:relative;margin-bottom:10px;padding:15px;background:#444;color:#fff;font-size:16px;line-height:22px;cursor:pointer;border:1px solid #444;border-radius:4px}.uk-notify-message>.uk-close{visibility:hidden;float:right}.uk-notify-message:hover>.uk-close{visibility:visible}.uk-notify-message-primary{background:#ebf7fd;color:#2d7091;border-color:rgba(45,112,145,.3)}.uk-notify-message-success{background:#f2fae3;color:#659f13;border-color:rgba(101,159,19,.3)}.uk-notify-message-warning{background:#fffceb;color:#e28327;border-color:rgba(226,131,39,.3)}.uk-notify-message-danger{background:#fff1f0;color:#d85030;border-color:rgba(216,80,48,.3)}.uk-search{display:inline-block;position:relative;margin:0}.uk-search:before{content:"\f002";position:absolute;top:0;left:0;width:30px;line-height:30px;text-align:center;font-family:FontAwesome;font-size:14px;color:rgba(0,0,0,.2)}.uk-search-field{width:120px;height:30px;padding:0 30px;border:1px solid rgba(0,0,0,0);background:rgba(0,0,0,0);color:#444;-webkit-transition:all linear .2s;transition:all linear .2s;border-radius:0}input.uk-search-field{-webkit-appearance:none}.uk-search-field:-ms-input-placeholder{color:#999}.uk-search-field::-moz-placeholder{color:#999}.uk-search-field::-webkit-input-placeholder{color:#999}.uk-search-field::-ms-clear{display:none}.uk-search-field:focus{outline:0}.uk-search-field:focus,.uk-search.uk-active .uk-search-field{width:180px}.uk-search-close{display:none;position:absolute;top:0;right:0;width:30px;line-height:30px;text-align:center;font-size:14px;color:rgba(0,0,0,.2);padding:0;border:0;-webkit-appearance:none;background:0 0}.uk-loading>.uk-search-close,.uk-active>.uk-search-close{display:block}.uk-search-close:after{display:block;content:"\f00d";font-family:FontAwesome}.uk-loading>.uk-search-close:after{content:"\f110";-webkit-animation:uk-spin 2s infinite linear;animation:uk-spin 2s infinite linear}.uk-dropdown-search{width:300px;margin-top:0;background:#fff;color:#444}.uk-open>.uk-dropdown-search{-webkit-animation:uk-slide-top-fixed .2s ease-in-out;animation:uk-slide-top-fixed .2s ease-in-out}.uk-navbar-flip .uk-dropdown-search{margin-top:12px;margin-right:-16px}.uk-nav-search>li>a{color:#444}.uk-nav-search>li.uk-active>a{background:#009dd8;color:#fff;outline:0;box-shadow:inset 0 2px 4px rgba(0,0,0,.2);text-shadow:0 -1px 0 rgba(0,0,0,.2)}.uk-nav-search .uk-nav-header{color:#999}.uk-nav-search .uk-nav-divider{border-top:1px solid #ddd}.uk-nav-search ul a{color:#07d}.uk-nav-search ul a:hover{color:#059}.uk-offcanvas .uk-search{display:block;margin:20px 15px}.uk-offcanvas .uk-search:before{color:#777}.uk-offcanvas .uk-search-field{width:100%;border-color:rgba(0,0,0,0);background:#1a1a1a;color:#ccc}.uk-offcanvas .uk-search-field:-ms-input-placeholder{color:#777}.uk-offcanvas .uk-search-field::-moz-placeholder{color:#777}.uk-offcanvas .uk-search-field::-webkit-input-placeholder{color:#777}.uk-sortable{position:relative}.uk-sortable>*{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.uk-sortable>* *{-webkit-user-drag:none;user-drag:none}.uk-sortable-dragged{position:absolute;z-index:1050;pointer-events:none}.uk-sortable-placeholder{opacity:0}.uk-sortable-over{opacity:.3}.uk-sortable-moving,.uk-sortable-moving *{cursor:move}.uk-sticky{z-index:980}.uk-dragover{box-shadow:0 0 20px rgba(100,100,100,.3)} \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/uikit/uikit.min.css b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/uikit/uikit.min.css new file mode 100644 index 000000000..690f9c3ff --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/css/uikit/uikit.min.css @@ -0,0 +1,3 @@ +/*! UIkit 2.10.0 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */ + +html{font:400 14px / 20px "Helvetica Neue",Helvetica,Arial,sans-serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;background:#fff;color:#444}body{margin:0}a{background:0 0}a:active,a:hover{outline:0}a,.uk-link{color:#07d;text-decoration:none;cursor:pointer}a:hover,.uk-link:hover{color:#059;text-decoration:underline}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}:not(pre)>code,:not(pre)>kbd,:not(pre)>samp{font-size:12px;font-family:Consolas,monospace,serif;color:#d05;white-space:nowrap}em{color:#d05}ins{background:#ffa;color:#444;text-decoration:none}mark{background:#ffa;color:#444}q{font-style:italic}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{max-width:100%;height:auto;-moz-box-sizing:border-box;box-sizing:border-box;border:0;vertical-align:middle}.uk-img-preserve,.uk-img-preserve img{max-width:none}svg:not(:root){overflow:hidden}blockquote,figure{margin:0}p,ul,ol,dl,blockquote,pre,address,fieldset,figure{margin:0 0 15px}*+p,*+ul,*+ol,*+dl,*+blockquote,*+pre,*+address,*+fieldset,*+figure{margin-top:15px}h1,h2,h3,h4,h5,h6{margin:0 0 15px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:400;color:#444;text-transform:none}*+h1,*+h2,*+h3,*+h4,*+h5,*+h6{margin-top:25px}h1,.uk-h1{font-size:36px;line-height:42px}h2,.uk-h2{font-size:24px;line-height:30px}h3,.uk-h3{font-size:18px;line-height:24px}h4,.uk-h4{font-size:16px;line-height:22px}h5,.uk-h5{font-size:14px;line-height:20px}h6,.uk-h6{font-size:12px;line-height:18px}ul,ol{padding-left:30px}ul>li>ul,ul>li>ol,ol>li>ol,ol>li>ul{margin:0}dt{font-weight:700}dd{margin-left:0}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0;margin:15px 0;border:0;border-top:1px solid #ddd}address{font-style:normal}blockquote{padding-left:15px;border-left:5px solid #ddd;font-size:16px;line-height:22px;font-style:italic}pre{padding:10px;background:#f5f5f5;font:12px / 18px Consolas,monospace,serif;color:#444;-moz-tab-size:4;tab-size:4;overflow:auto}::-moz-selection{background:#39f;color:#fff;text-shadow:none}::selection{background:#39f;color:#fff;text-shadow:none}article,aside,details,figcaption,figure,footer,header,main,nav,section,summary{display:block}progress{vertical-align:baseline}audio:not([controls]){display:none}[hidden],template{display:none}iframe{border:0}@media screen and (max-width:400px){@-ms-viewport{width:device-width}}.uk-grid:before,.uk-grid:after{content:" ";display:table}.uk-grid:after{clear:both}.uk-grid{margin:0 0 0 -25px;padding:0;list-style:none}.uk-grid>*{margin:0;padding-left:25px;float:left}.uk-grid>*>:last-child{margin-bottom:0}.uk-grid+.uk-grid{margin-top:25px}.uk-grid>.uk-grid-margin{margin-top:25px}.uk-grid>*>.uk-panel+.uk-panel{margin-top:25px}@media (min-width:1220px){.uk-grid:not(.uk-grid-preserve){margin-left:-35px}.uk-grid:not(.uk-grid-preserve)>*{padding-left:35px}.uk-grid:not(.uk-grid-preserve)+.uk-grid{margin-top:35px}.uk-grid:not(.uk-grid-preserve)>.uk-grid-margin{margin-top:35px}.uk-grid:not(.uk-grid-preserve)>*>.uk-panel+.uk-panel{margin-top:35px}}.uk-grid.uk-grid-small{margin-left:-10px}.uk-grid.uk-grid-small>*{padding-left:10px}.uk-grid.uk-grid-small+.uk-grid-small{margin-top:10px}.uk-grid.uk-grid-small>.uk-grid-margin{margin-top:10px}.uk-grid.uk-grid-small>*>.uk-panel+.uk-panel{margin-top:10px}.uk-grid-divider:not(:empty){margin-left:-25px;margin-right:-25px}.uk-grid-divider>*{padding-left:25px;padding-right:25px}.uk-grid-divider>[class*=uk-width-1-]:not(.uk-width-1-1):nth-child(n+2),.uk-grid-divider>[class*=uk-width-2-]:nth-child(n+2),.uk-grid-divider>[class*=uk-width-3-]:nth-child(n+2),.uk-grid-divider>[class*=uk-width-4-]:nth-child(n+2),.uk-grid-divider>[class*=uk-width-5-]:nth-child(n+2),.uk-grid-divider>[class*=uk-width-6-]:nth-child(n+2),.uk-grid-divider>[class*=uk-width-7-]:nth-child(n+2),.uk-grid-divider>[class*=uk-width-8-]:nth-child(n+2),.uk-grid-divider>[class*=uk-width-9-]:nth-child(n+2){border-left:1px solid #ddd}@media (min-width:768px){.uk-grid-divider>[class*=uk-width-medium-]:not(.uk-width-medium-1-1):nth-child(n+2){border-left:1px solid #ddd}}@media (min-width:960px){.uk-grid-divider>[class*=uk-width-large-]:not(.uk-width-large-1-1):nth-child(n+2){border-left:1px solid #ddd}}@media (min-width:1220px){.uk-grid-divider:not(.uk-grid-preserve):not(:empty){margin-left:-35px;margin-right:-35px}.uk-grid-divider:not(.uk-grid-preserve)>*{padding-left:35px;padding-right:35px}.uk-grid-divider:not(.uk-grid-preserve):empty{margin-top:35px;margin-bottom:35px}}.uk-grid-divider:empty{margin-top:25px;margin-bottom:25px;border-top:1px solid #ddd}[class*=uk-grid-width]>*{-moz-box-sizing:border-box;box-sizing:border-box;width:100%}.uk-grid-width-1-2>*{width:50%}.uk-grid-width-1-3>*{width:33.333%}.uk-grid-width-1-4>*{width:25%}.uk-grid-width-1-5>*{width:20%}.uk-grid-width-1-6>*{width:16.666%}.uk-grid-width-1-10>*{width:10%}@media (min-width:480px){.uk-grid-width-small-1-2>*{width:50%}.uk-grid-width-small-1-3>*{width:33.333%}.uk-grid-width-small-1-4>*{width:25%}.uk-grid-width-small-1-5>*{width:20%}.uk-grid-width-small-1-6>*{width:16.666%}.uk-grid-width-small-1-10>*{width:10%}}@media (min-width:768px){.uk-grid-width-medium-1-2>*{width:50%}.uk-grid-width-medium-1-3>*{width:33.333%}.uk-grid-width-medium-1-4>*{width:25%}.uk-grid-width-medium-1-5>*{width:20%}.uk-grid-width-medium-1-6>*{width:16.666%}.uk-grid-width-medium-1-10>*{width:10%}}@media (min-width:960px){.uk-grid-width-large-1-2>*{width:50%}.uk-grid-width-large-1-3>*{width:33.333%}.uk-grid-width-large-1-4>*{width:25%}.uk-grid-width-large-1-5>*{width:20%}.uk-grid-width-large-1-6>*{width:16.666%}.uk-grid-width-large-1-10>*{width:10%}}@media (min-width:1220px){.uk-grid-width-xlarge-1-2>*{width:50%}.uk-grid-width-xlarge-1-3>*{width:33.333%}.uk-grid-width-xlarge-1-4>*{width:25%}.uk-grid-width-xlarge-1-5>*{width:20%}.uk-grid-width-xlarge-1-6>*{width:16.666%}.uk-grid-width-xlarge-1-10>*{width:10%}}[class*=uk-width]{-moz-box-sizing:border-box;box-sizing:border-box;width:100%}.uk-width-1-1{width:100%}.uk-width-1-2,.uk-width-2-4,.uk-width-3-6,.uk-width-5-10{width:50%}.uk-width-1-3,.uk-width-2-6{width:33.333%}.uk-width-2-3,.uk-width-4-6{width:66.666%}.uk-width-1-4{width:25%}.uk-width-3-4{width:75%}.uk-width-1-5,.uk-width-2-10{width:20%}.uk-width-2-5,.uk-width-4-10{width:40%}.uk-width-3-5,.uk-width-6-10{width:60%}.uk-width-4-5,.uk-width-8-10{width:80%}.uk-width-1-6{width:16.666%}.uk-width-5-6{width:83.333%}.uk-width-1-10{width:10%}.uk-width-3-10{width:30%}.uk-width-7-10{width:70%}.uk-width-9-10{width:90%}@media (min-width:480px){.uk-width-small-1-1{width:100%}.uk-width-small-1-2,.uk-width-small-2-4,.uk-width-small-3-6,.uk-width-small-5-10{width:50%}.uk-width-small-1-3,.uk-width-small-2-6{width:33.333%}.uk-width-small-2-3,.uk-width-small-4-6{width:66.666%}.uk-width-small-1-4{width:25%}.uk-width-small-3-4{width:75%}.uk-width-small-1-5,.uk-width-small-2-10{width:20%}.uk-width-small-2-5,.uk-width-small-4-10{width:40%}.uk-width-small-3-5,.uk-width-small-6-10{width:60%}.uk-width-small-4-5,.uk-width-small-8-10{width:80%}.uk-width-small-1-6{width:16.666%}.uk-width-small-5-6{width:83.333%}.uk-width-small-1-10{width:10%}.uk-width-small-3-10{width:30%}.uk-width-small-7-10{width:70%}.uk-width-small-9-10{width:90%}}@media (min-width:768px){.uk-width-medium-1-1{width:100%}.uk-width-medium-1-2,.uk-width-medium-2-4,.uk-width-medium-3-6,.uk-width-medium-5-10{width:50%}.uk-width-medium-1-3,.uk-width-medium-2-6{width:33.333%}.uk-width-medium-2-3,.uk-width-medium-4-6{width:66.666%}.uk-width-medium-1-4{width:25%}.uk-width-medium-3-4{width:75%}.uk-width-medium-1-5,.uk-width-medium-2-10{width:20%}.uk-width-medium-2-5,.uk-width-medium-4-10{width:40%}.uk-width-medium-3-5,.uk-width-medium-6-10{width:60%}.uk-width-medium-4-5,.uk-width-medium-8-10{width:80%}.uk-width-medium-1-6{width:16.666%}.uk-width-medium-5-6{width:83.333%}.uk-width-medium-1-10{width:10%}.uk-width-medium-3-10{width:30%}.uk-width-medium-7-10{width:70%}.uk-width-medium-9-10{width:90%}}@media (min-width:960px){.uk-width-large-1-1{width:100%}.uk-width-large-1-2,.uk-width-large-2-4,.uk-width-large-3-6,.uk-width-large-5-10{width:50%}.uk-width-large-1-3,.uk-width-large-2-6{width:33.333%}.uk-width-large-2-3,.uk-width-large-4-6{width:66.666%}.uk-width-large-1-4{width:25%}.uk-width-large-3-4{width:75%}.uk-width-large-1-5,.uk-width-large-2-10{width:20%}.uk-width-large-2-5,.uk-width-large-4-10{width:40%}.uk-width-large-3-5,.uk-width-large-6-10{width:60%}.uk-width-large-4-5,.uk-width-large-8-10{width:80%}.uk-width-large-1-6{width:16.666%}.uk-width-large-5-6{width:83.333%}.uk-width-large-1-10{width:10%}.uk-width-large-3-10{width:30%}.uk-width-large-7-10{width:70%}.uk-width-large-9-10{width:90%}}@media (min-width:768px){[class*=uk-push-],[class*=uk-pull-]{position:relative}.uk-push-1-2,.uk-push-2-4,.uk-push-3-6,.uk-push-5-10{left:50%}.uk-push-1-3,.uk-push-2-6{left:33.333%}.uk-push-2-3,.uk-push-4-6{left:66.666%}.uk-push-1-4{left:25%}.uk-push-3-4{left:75%}.uk-push-1-5,.uk-push-2-10{left:20%}.uk-push-2-5,.uk-push-4-10{left:40%}.uk-push-3-5,.uk-push-6-10{left:60%}.uk-push-4-5,.uk-push-8-10{left:80%}.uk-push-1-6{left:16.666%}.uk-push-5-6{left:83.333%}.uk-push-1-10{left:10%}.uk-push-3-10{left:30%}.uk-push-7-10{left:70%}.uk-push-9-10{left:90%}.uk-pull-1-2,.uk-pull-2-4,.uk-pull-3-6,.uk-pull-5-10{left:-50%}.uk-pull-1-3,.uk-pull-2-6{left:-33.333%}.uk-pull-2-3,.uk-pull-4-6{left:-66.666%}.uk-pull-1-4{left:-25%}.uk-pull-3-4{left:-75%}.uk-pull-1-5,.uk-pull-2-10{left:-20%}.uk-pull-2-5,.uk-pull-4-10{left:-40%}.uk-pull-3-5,.uk-pull-6-10{left:-60%}.uk-pull-4-5,.uk-pull-8-10{left:-80%}.uk-pull-1-6{left:-16.666%}.uk-pull-5-6{left:-83.333%}.uk-pull-1-10{left:-10%}.uk-pull-3-10{left:-30%}.uk-pull-7-10{left:-70%}.uk-pull-9-10{left:-90%}}.uk-panel{display:block;position:relative}.uk-panel:before,.uk-panel:after{content:" ";display:table}.uk-panel:after{clear:both}.uk-panel>:not(.uk-panel-title):last-child{margin-bottom:0}.uk-panel-title{margin-top:0;margin-bottom:15px;font-size:18px;line-height:24px;font-weight:400;text-transform:none;color:#444}.uk-panel-badge{position:absolute;top:0;right:0;z-index:1}.uk-panel-box{padding:15px;background:#f5f5f5;color:#444}.uk-panel-box .uk-panel-title{color:#444}.uk-panel-box .uk-panel-badge{top:10px;right:10px}.uk-panel-box .uk-panel-teaser{margin:-15px -15px 15px -15px}.uk-panel-box>.uk-nav-side{margin:0 -15px}.uk-panel-box-primary{background-color:#ebf7fd;color:#2d7091}.uk-panel-box-primary .uk-panel-title{color:#2d7091}.uk-panel-box-secondary{background-color:#eee;color:#444}.uk-panel-box-secondary .uk-panel-title{color:#444}.uk-panel-header .uk-panel-title{padding-bottom:10px;border-bottom:1px solid #ddd;color:#444}.uk-panel-space{padding:30px}.uk-panel-space .uk-panel-badge{top:30px;right:30px}.uk-panel+.uk-panel-divider{margin-top:50px!important}.uk-panel+.uk-panel-divider:before{content:"";display:block;position:absolute;top:-25px;left:0;right:0;border-top:1px solid #ddd}@media (min-width:1220px){.uk-panel+.uk-panel-divider{margin-top:70px!important}.uk-panel+.uk-panel-divider:before{top:-35px}}.uk-article:before,.uk-article:after{content:" ";display:table}.uk-article:after{clear:both}.uk-article>:last-child{margin-bottom:0}.uk-article+.uk-article{margin-top:25px}.uk-article-title{font-size:36px;line-height:42px;font-weight:400;text-transform:none}.uk-article-title a{color:inherit;text-decoration:none}.uk-article-meta{font-size:12px;line-height:18px;color:#999}.uk-article-lead{color:#444;font-size:18px;line-height:24px;font-weight:400}.uk-article-divider{margin-bottom:25px;border-color:#ddd}*+.uk-article-divider{margin-top:25px}.uk-comment-header{margin-bottom:15px}.uk-comment-header:before,.uk-comment-header:after{content:" ";display:table}.uk-comment-header:after{clear:both}.uk-comment-avatar{margin-right:15px;float:left}.uk-comment-title{margin:5px 0 0;font-size:16px;line-height:22px}.uk-comment-meta{margin:2px 0 0;font-size:11px;line-height:16px;color:#999}.uk-comment-body>:last-child{margin-bottom:0}.uk-comment-list{padding:0;list-style:none}.uk-comment-list .uk-comment+ul{margin:15px 0 0;list-style:none}.uk-comment-list>li:nth-child(n+2),.uk-comment-list .uk-comment+ul>li:nth-child(n+2){margin-top:15px}@media (min-width:768px){.uk-comment-list .uk-comment+ul{padding-left:100px}}.uk-nav,.uk-nav ul{margin:0;padding:0;list-style:none}.uk-nav li>a{display:block;text-decoration:none}.uk-nav>li>a{padding:5px 15px}.uk-nav ul{padding-left:15px}.uk-nav ul a{padding:2px 0}.uk-nav li>a>div{font-size:12px;line-height:18px}.uk-nav-header{padding:5px 15px;text-transform:uppercase;font-weight:700;font-size:12px}.uk-nav-header:not(:first-child){margin-top:15px}.uk-nav-divider{margin:9px 15px}ul.uk-nav-sub{padding:5px 0 5px 15px}.uk-nav-parent-icon>.uk-parent>a:after{content:"\f104";width:20px;margin-right:-10px;float:right;font-family:FontAwesome;text-align:center}.uk-nav-parent-icon>.uk-parent.uk-open>a:after{content:"\f107"}.uk-nav-side>li>a{color:#444}.uk-nav-side>li>a:hover,.uk-nav-side>li>a:focus{background:rgba(0,0,0,.05);color:#444;outline:0}.uk-nav-side>li.uk-active>a{background:#00a8e6;color:#fff}.uk-nav-side .uk-nav-header{color:#444}.uk-nav-side .uk-nav-divider{border-top:1px solid #ddd}.uk-nav-side ul a{color:#07d}.uk-nav-side ul a:hover{color:#059}.uk-nav-dropdown>li>a{color:#444}.uk-nav-dropdown>li>a:hover,.uk-nav-dropdown>li>a:focus{background:#00a8e6;color:#fff;outline:0}.uk-nav-dropdown .uk-nav-header{color:#999}.uk-nav-dropdown .uk-nav-divider{border-top:1px solid #ddd}.uk-nav-dropdown ul a{color:#07d}.uk-nav-dropdown ul a:hover{color:#059}.uk-nav-navbar>li>a{color:#444}.uk-nav-navbar>li>a:hover,.uk-nav-navbar>li>a:focus{background:#00a8e6;color:#fff;outline:0}.uk-nav-navbar .uk-nav-header{color:#999}.uk-nav-navbar .uk-nav-divider{border-top:1px solid #ddd}.uk-nav-navbar ul a{color:#07d}.uk-nav-navbar ul a:hover{color:#059}.uk-nav-offcanvas>li>a{color:#ccc;padding:10px 15px}.uk-nav-offcanvas>.uk-open>a,html:not(.uk-touch) .uk-nav-offcanvas>li>a:hover,html:not(.uk-touch) .uk-nav-offcanvas>li>a:focus{background:#404040;color:#fff;outline:0}html .uk-nav.uk-nav-offcanvas>li.uk-active>a{background:#1a1a1a;color:#fff}.uk-nav-offcanvas .uk-nav-header{color:#777}.uk-nav-offcanvas .uk-nav-divider{border-top:1px solid #1a1a1a}.uk-nav-offcanvas ul a{color:#ccc}html:not(.uk-touch) .uk-nav-offcanvas ul a:hover{color:#fff}.uk-navbar{background:#eee;color:#444}.uk-navbar:before,.uk-navbar:after{content:" ";display:table}.uk-navbar:after{clear:both}.uk-navbar-nav{margin:0;padding:0;list-style:none;float:left}.uk-navbar-nav>li{float:left;position:relative}.uk-navbar-nav>li>a{display:block;-moz-box-sizing:border-box;box-sizing:border-box;text-decoration:none;height:40px;padding:0 15px;line-height:40px;color:#444;font-size:14px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:400}.uk-navbar-nav>li>a[href='#']{cursor:text}.uk-navbar-nav>li:hover>a,.uk-navbar-nav>li>a:focus,.uk-navbar-nav>li.uk-open>a{background-color:#f5f5f5;color:#444;outline:0}.uk-navbar-nav>li>a:active{background-color:#ddd;color:#444}.uk-navbar-nav>li.uk-active>a{background-color:#f5f5f5;color:#444}.uk-navbar-nav .uk-navbar-nav-subtitle{line-height:28px}.uk-navbar-nav-subtitle>div{margin-top:-6px;font-size:10px;line-height:12px}.uk-navbar-content,.uk-navbar-brand,.uk-navbar-toggle{-moz-box-sizing:border-box;box-sizing:border-box;display:block;height:40px;padding:0 15px;float:left}.uk-navbar-content:before,.uk-navbar-brand:before,.uk-navbar-toggle:before{content:'';display:inline-block;height:100%;vertical-align:middle}.uk-navbar-content+.uk-navbar-content:not(.uk-navbar-center){padding-left:0}.uk-navbar-content>a:not([class]){color:#07d}.uk-navbar-content>a:not([class]):hover{color:#059}.uk-navbar-brand{font-size:18px;color:#444;text-decoration:none}.uk-navbar-brand:hover,.uk-navbar-brand:focus{color:#444;text-decoration:none;outline:0}.uk-navbar-toggle{font-size:18px;color:#444;text-decoration:none}.uk-navbar-toggle:hover,.uk-navbar-toggle:focus{color:#444;text-decoration:none;outline:0}.uk-navbar-toggle:after{content:"\f0c9";font-family:FontAwesome;vertical-align:middle}.uk-navbar-toggle-alt:after{content:"\f002"}.uk-navbar-center{float:none;text-align:center;max-width:50%;margin-left:auto;margin-right:auto}.uk-navbar-flip{float:right}.uk-subnav{padding:0;list-style:none;font-size:0}.uk-subnav>li{position:relative;font-size:1rem;vertical-align:top}.uk-subnav>li,.uk-subnav>li>a,.uk-subnav>li>span{display:inline-block}.uk-subnav>li:nth-child(n+2){margin-left:10px}.uk-subnav>li>a{color:#07d}.uk-subnav>li>a:hover{color:#059}.uk-subnav>li>span{color:#999}.uk-subnav-line>li:nth-child(n+2):before{content:"";display:inline-block;height:10px;margin-right:10px;border-left:1px solid #ddd}.uk-subnav-pill>li>a,.uk-subnav-pill>li>span{padding:3px 9px;text-decoration:none}.uk-subnav-pill>li>a:hover,.uk-subnav-pill>li>a:focus{background:#eee;color:#444;outline:0}.uk-subnav-pill>li.uk-active>a{background:#00a8e6;color:#fff}.uk-breadcrumb{padding:0;list-style:none;font-size:0}.uk-breadcrumb>li{font-size:1rem;vertical-align:top}.uk-breadcrumb>li,.uk-breadcrumb>li>a,.uk-breadcrumb>li>span{display:inline-block}.uk-breadcrumb>li:nth-child(n+2):before{content:"/";display:inline-block;margin:0 8px}.uk-breadcrumb>li:not(.uk-active)>span{color:#999}.uk-pagination{padding:0;list-style:none;text-align:center;font-size:0}.uk-pagination:before,.uk-pagination:after{content:" ";display:table}.uk-pagination:after{clear:both}.uk-pagination>li{display:inline-block;font-size:1rem;vertical-align:top}.uk-pagination>li:nth-child(n+2){margin-left:5px}.uk-pagination>li>a,.uk-pagination>li>span{display:inline-block;min-width:16px;padding:3px 5px;line-height:20px;text-decoration:none;-moz-box-sizing:content-box;box-sizing:content-box;text-align:center}.uk-pagination>li>a{background:#eee;color:#444}.uk-pagination>li>a:hover,.uk-pagination>li>a:focus{background-color:#f5f5f5;color:#444;outline:0}.uk-pagination>li>a:active{background-color:#ddd;color:#444}.uk-pagination>.uk-active>span{background:#00a8e6;color:#fff}.uk-pagination>.uk-disabled>span{background-color:#f5f5f5;color:#999}.uk-pagination-previous{float:left}.uk-pagination-next{float:right}.uk-pagination-left{text-align:left}.uk-pagination-right{text-align:right}.uk-tab{margin:0;padding:0;list-style:none;border-bottom:1px solid #ddd}.uk-tab:before,.uk-tab:after{content:" ";display:table}.uk-tab:after{clear:both}.uk-tab>li{margin-bottom:-1px;float:left;position:relative}.uk-tab>li>a{display:block;padding:8px 12px;border:1px solid transparent;border-bottom-width:0;color:#07d;text-decoration:none}.uk-tab>li:nth-child(n+2)>a{margin-left:5px}.uk-tab>li>a:hover,.uk-tab>li>a:focus,.uk-tab>li.uk-open>a{border-color:#f5f5f5;background:#f5f5f5;color:#059;outline:0}.uk-tab>li:not(.uk-active)>a:hover,.uk-tab>li:not(.uk-active)>a:focus,.uk-tab>li.uk-open:not(.uk-active)>a{margin-bottom:1px;padding-bottom:7px}.uk-tab>li.uk-active>a{border-color:#ddd;border-bottom-color:transparent;background:#fff;color:#444}.uk-tab>li.uk-disabled>a{color:#999;cursor:auto}.uk-tab>li.uk-disabled>a:hover,.uk-tab>li.uk-disabled>a:focus,.uk-tab>li.uk-disabled.uk-active>a{background:0 0;border-color:transparent}.uk-tab-flip>li{float:right}.uk-tab-flip>li:nth-child(n+2)>a{margin-left:0;margin-right:5px}.uk-tab>li.uk-tab-responsive>a{margin-left:0;margin-right:0}.uk-tab-responsive>a:before{content:"\f0c9\00a0";font-family:FontAwesome}.uk-tab-center{border-bottom:1px solid #ddd}.uk-tab-center-bottom{border-bottom:none;border-top:1px solid #ddd}.uk-tab-center:before,.uk-tab-center:after{content:" ";display:table}.uk-tab-center:after{clear:both}.uk-tab-center .uk-tab{position:relative;right:50%;border:none;float:right}.uk-tab-center .uk-tab>li{position:relative;right:-50%}.uk-tab-center .uk-tab>li>a{text-align:center}.uk-tab-bottom{border-top:1px solid #ddd;border-bottom:none}.uk-tab-bottom>li{margin-top:-1px;margin-bottom:0}.uk-tab-bottom>li>a{padding-top:8px;padding-bottom:8px;border-bottom-width:1px;border-top-width:0}.uk-tab-bottom>li:not(.uk-active)>a:hover,.uk-tab-bottom>li:not(.uk-active)>a:focus,.uk-tab-bottom>li.uk-open:not(.uk-active)>a{margin-bottom:0;margin-top:1px;padding-bottom:8px;padding-top:7px}.uk-tab-bottom>li.uk-active>a{border-top-color:transparent;border-bottom-color:#ddd}.uk-tab-grid{margin-left:-5px;border-bottom:none;position:relative;z-index:0}.uk-tab-grid:before{display:block;position:absolute;left:5px;right:0;bottom:-1px;border-top:1px solid #ddd;z-index:-1}.uk-tab-grid>li:first-child>a{margin-left:5px}.uk-tab-grid>li>a{text-align:center}.uk-tab-grid.uk-tab-bottom{border-top:none}.uk-tab-grid.uk-tab-bottom:before{top:-1px;bottom:auto}@media (min-width:768px){.uk-tab-left,.uk-tab-right{border-bottom:none}.uk-tab-left>li,.uk-tab-right>li{margin-bottom:0;float:none}.uk-tab-left>li>a,.uk-tab-right>li>a{padding-top:8px;padding-bottom:8px}.uk-tab-left>li:nth-child(n+2)>a,.uk-tab-right>li:nth-child(n+2)>a{margin-left:0;margin-top:5px}.uk-tab-left>li.uk-active>a,.uk-tab-right>li.uk-active>a{border-color:#ddd}.uk-tab-left{border-right:1px solid #ddd}.uk-tab-left>li{margin-right:-1px}.uk-tab-left>li>a{border-bottom-width:1px;border-right-width:0}.uk-tab-left>li:not(.uk-active)>a:hover,.uk-tab-left>li:not(.uk-active)>a:focus{margin-bottom:0;margin-right:1px;padding-bottom:8px;padding-right:11px}.uk-tab-left>li.uk-active>a{border-right-color:transparent}.uk-tab-right{border-left:1px solid #ddd}.uk-tab-right>li{margin-left:-1px}.uk-tab-right>li>a{border-bottom-width:1px;border-left-width:0}.uk-tab-right>li:not(.uk-active)>a:hover,.uk-tab-right>li:not(.uk-active)>a:focus{margin-bottom:0;margin-left:1px;padding-bottom:8px;padding-left:11px}.uk-tab-right>li.uk-active>a{border-left-color:transparent}}.uk-list{padding:0;list-style:none}.uk-list>li:before,.uk-list>li:after{content:" ";display:table}.uk-list>li:after{clear:both}.uk-list>li>:last-child{margin-bottom:0}.uk-list ul{margin:0;padding-left:20px;list-style:none}.uk-list-line>li:nth-child(n+2){margin-top:5px;padding-top:5px;border-top:1px solid #ddd}.uk-list-striped>li{padding:5px}.uk-list-striped>li:nth-of-type(odd){background:#f5f5f5}.uk-list-space>li:nth-child(n+2){margin-top:10px}@media (min-width:768px){.uk-description-list-horizontal{overflow:hidden}.uk-description-list-horizontal>dt{width:160px;float:left;clear:both;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.uk-description-list-horizontal>dd{margin-left:180px}}.uk-description-list-line>dt{font-weight:400}.uk-description-list-line>dt:nth-child(n+2){margin-top:5px;padding-top:5px;border-top:1px solid #ddd}.uk-description-list-line>dd{color:#999}.uk-table{border-collapse:collapse;border-spacing:0;width:100%;margin-bottom:15px}*+.uk-table{margin-top:15px}.uk-table th,.uk-table td{padding:8px}.uk-table th{text-align:left}.uk-table td{vertical-align:top}.uk-table thead th{vertical-align:bottom}.uk-table caption,.uk-table tfoot{font-size:12px;font-style:italic}.uk-table caption{text-align:left;color:#999}.uk-table-middle,.uk-table-middle td{vertical-align:middle!important}.uk-table-striped tbody tr:nth-of-type(odd){background:#f5f5f5}.uk-table-condensed td{padding:4px 8px}.uk-table-hover tbody tr:hover{background:#eee}.uk-form input,.uk-form select,.uk-form textarea{-moz-box-sizing:border-box;box-sizing:border-box;margin:0;border-radius:0;font:inherit;color:inherit}.uk-form select{text-transform:none}.uk-form optgroup{font:inherit;font-weight:700}.uk-form input::-moz-focus-inner{border:0;padding:0}.uk-form input[type=checkbox],.uk-form input[type=radio]{padding:0}.uk-form input[type=checkbox]:not(:disabled),.uk-form input[type=radio]:not(:disabled){cursor:pointer}.uk-form textarea,.uk-form input:not([type]),.uk-form input[type=text],.uk-form input[type=password],.uk-form input[type=email],.uk-form input[type=url],.uk-form input[type=search],.uk-form input[type=tel],.uk-form input[type=number],.uk-form input[type=datetime]{-webkit-appearance:none}.uk-form input[type=search]::-webkit-search-cancel-button,.uk-form input[type=search]::-webkit-search-decoration{-webkit-appearance:none}.uk-form input[type=number]::-webkit-inner-spin-button,.uk-form input[type=number]::-webkit-outer-spin-button{height:auto}.uk-form fieldset{border:none;margin:0;padding:0}.uk-form textarea{overflow:auto;vertical-align:top}.uk-form ::-moz-placeholder{opacity:1}.uk-form :invalid{box-shadow:none}.uk-form input:not([type=radio]):not([type=checkbox]),.uk-form select{vertical-align:middle}.uk-form>:last-child{margin-bottom:0}.uk-form select,.uk-form textarea,.uk-form input:not([type]),.uk-form input[type=text],.uk-form input[type=password],.uk-form input[type=datetime],.uk-form input[type=datetime-local],.uk-form input[type=date],.uk-form input[type=month],.uk-form input[type=time],.uk-form input[type=week],.uk-form input[type=number],.uk-form input[type=email],.uk-form input[type=url],.uk-form input[type=search],.uk-form input[type=tel],.uk-form input[type=color]{height:30px;max-width:100%;padding:4px 6px;border:1px solid #ddd;background:#fff;color:#444;-webkit-transition:all linear .2s;transition:all linear .2s}.uk-form select:focus,.uk-form textarea:focus,.uk-form input:not([type]):focus,.uk-form input[type=text]:focus,.uk-form input[type=password]:focus,.uk-form input[type=datetime]:focus,.uk-form input[type=datetime-local]:focus,.uk-form input[type=date]:focus,.uk-form input[type=month]:focus,.uk-form input[type=time]:focus,.uk-form input[type=week]:focus,.uk-form input[type=number]:focus,.uk-form input[type=email]:focus,.uk-form input[type=url]:focus,.uk-form input[type=search]:focus,.uk-form input[type=tel]:focus,.uk-form input[type=color]:focus{border-color:#99baca;outline:0;background:#f5fbfe;color:#444}.uk-form select:disabled,.uk-form textarea:disabled,.uk-form input:not([type]):disabled,.uk-form input[type=text]:disabled,.uk-form input[type=password]:disabled,.uk-form input[type=datetime]:disabled,.uk-form input[type=datetime-local]:disabled,.uk-form input[type=date]:disabled,.uk-form input[type=month]:disabled,.uk-form input[type=time]:disabled,.uk-form input[type=week]:disabled,.uk-form input[type=number]:disabled,.uk-form input[type=email]:disabled,.uk-form input[type=url]:disabled,.uk-form input[type=search]:disabled,.uk-form input[type=tel]:disabled,.uk-form input[type=color]:disabled{border-color:#ddd;background-color:#f5f5f5;color:#999}.uk-form :-ms-input-placeholder{color:#999!important}.uk-form ::-moz-placeholder{color:#999}.uk-form ::-webkit-input-placeholder{color:#999}.uk-form :disabled:-ms-input-placeholder{color:#999!important}.uk-form :disabled::-moz-placeholder{color:#999}.uk-form :disabled::-webkit-input-placeholder{color:#999}.uk-form legend{width:100%;border:0;padding:0;padding-bottom:15px;font-size:18px;line-height:30px}.uk-form legend:after{content:"";display:block;border-bottom:1px solid #ddd}select.uk-form-small,textarea.uk-form-small,input[type].uk-form-small,input:not([type]).uk-form-small{height:25px;padding:3px;font-size:12px}select.uk-form-large,textarea.uk-form-large,input[type].uk-form-large,input:not([type]).uk-form-large{height:40px;padding:8px 6px;font-size:16px}.uk-form textarea,.uk-form select[multiple],.uk-form select[size]{height:auto}.uk-form-danger{border-color:#dc8d99!important;background:#fff7f8!important;color:#c91032!important}.uk-form-success{border-color:#8ec73b!important;background:#fafff2!important;color:#539022!important}.uk-form-blank{border-color:transparent!important;border-style:dashed!important;background:none!important}.uk-form-blank:focus{border-color:#ddd!important}input.uk-form-width-mini{width:40px}select.uk-form-width-mini{width:65px}.uk-form-width-small{width:130px}.uk-form-width-medium{width:200px}.uk-form-width-large{width:500px}.uk-form-row:before,.uk-form-row:after{content:" ";display:table}.uk-form-row:after{clear:both}.uk-form-row+.uk-form-row{margin-top:15px}.uk-form-help-inline{display:inline-block;margin:0 0 0 10px}.uk-form-help-block{margin:5px 0 0}.uk-form-controls>:first-child{margin-top:0}.uk-form-controls>:last-child{margin-bottom:0}.uk-form-controls-condensed{margin:5px 0}.uk-form-stacked .uk-form-label{display:block;margin-bottom:5px;font-weight:700}@media (max-width:959px){.uk-form-horizontal .uk-form-label{display:block;margin-bottom:5px;font-weight:700}}@media (min-width:960px){.uk-form-horizontal .uk-form-label{width:200px;margin-top:5px;float:left}.uk-form-horizontal .uk-form-controls{margin-left:215px}.uk-form-horizontal .uk-form-controls-text{padding-top:5px}}.uk-form-icon{display:inline-block;position:relative;max-width:100%}.uk-form-icon>[class*=uk-icon-]{position:absolute;top:50%;width:30px;margin-top:-7px;font-size:14px;color:#999;text-align:center;pointer-events:none}.uk-form-icon:not(.uk-form-icon-flip)>input{padding-left:30px!important}.uk-form-icon-flip>[class*=uk-icon-]{right:0}.uk-form-icon-flip>input{padding-right:30px!important}.uk-button::-moz-focus-inner{border:0;padding:0}.uk-button{-webkit-appearance:none;margin:0;border:none;overflow:visible;font:inherit;color:#444;text-transform:none;display:inline-block;-moz-box-sizing:border-box;box-sizing:border-box;padding:0 12px;background:#eee;vertical-align:middle;line-height:30px;min-height:30px;font-size:1rem;text-decoration:none;text-align:center}.uk-button:not(:disabled){cursor:pointer}.uk-button:hover,.uk-button:focus{background-color:#f5f5f5;color:#444;outline:0;text-decoration:none}.uk-button:active,.uk-button.uk-active{background-color:#ddd;color:#444}.uk-button-primary{background-color:#00a8e6;color:#fff}.uk-button-primary:hover,.uk-button-primary:focus{background-color:#35b3ee;color:#fff}.uk-button-primary:active,.uk-button-primary.uk-active{background-color:#0091ca;color:#fff}.uk-button-success{background-color:#8cc14c;color:#fff}.uk-button-success:hover,.uk-button-success:focus{background-color:#8ec73b;color:#fff}.uk-button-success:active,.uk-button-success.uk-active{background-color:#72ae41;color:#fff}.uk-button-danger{background-color:#da314b;color:#fff}.uk-button-danger:hover,.uk-button-danger:focus{background-color:#e4354f;color:#fff}.uk-button-danger:active,.uk-button-danger.uk-active{background-color:#c91032;color:#fff}.uk-button:disabled{background-color:#f5f5f5;color:#999}.uk-button-link,.uk-button-link:hover,.uk-button-link:focus,.uk-button-link:active,.uk-button-link.uk-active,.uk-button-link:disabled{border-color:transparent;background:0 0}.uk-button-link{color:#07d}.uk-button-link:hover,.uk-button-link:focus,.uk-button-link:active,.uk-button-link.uk-active{color:#059;text-decoration:underline}.uk-button-link:disabled{color:#999}.uk-button-link:focus{outline:1px dotted}.uk-button-mini{min-height:20px;padding:0 6px;line-height:20px;font-size:11px}.uk-button-small{min-height:25px;padding:0 10px;line-height:25px;font-size:12px}.uk-button-large{min-height:40px;padding:0 15px;line-height:40px;font-size:16px}.uk-button-group{display:inline-block;vertical-align:middle;position:relative;font-size:0;white-space:nowrap}.uk-button-group>*{display:inline-block}.uk-button-group .uk-button{vertical-align:top}.uk-button-dropdown{display:inline-block;vertical-align:middle;position:relative}@font-face{font-family:FontAwesome;src:url(../fonts/fontawesome-webfont.eot);src:url(../fonts/fontawesome-webfont.eot?#iefix) format("embedded-opentype"),url(../fonts/fontawesome-webfont.woff) format("woff"),url(../fonts/fontawesome-webfont.ttf) format("truetype");font-weight:400;font-style:normal}[class*=uk-icon-]{font-family:FontAwesome;display:inline-block;font-weight:400;font-style:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.uk-icon-small:before{font-size:150%;vertical-align:-10%}.uk-icon-medium:before{font-size:200%;vertical-align:-16%}.uk-icon-large:before{font-size:250%;vertical-align:-22%}.uk-icon-spin{display:inline-block;-webkit-animation:uk-rotate 2s infinite linear;animation:uk-rotate 2s infinite linear}.uk-icon-button{-moz-box-sizing:border-box;box-sizing:border-box;display:inline-block;width:35px;height:35px;border-radius:100%;background:#eee;line-height:35px;color:#444;font-size:18px;text-align:center}.uk-icon-button:hover,.uk-icon-button:focus{background-color:#f5f5f5;color:#444;text-decoration:none;outline:0}.uk-icon-button:active{background-color:#ddd;color:#444}.uk-icon-glass:before{content:"\f000"}.uk-icon-music:before{content:"\f001"}.uk-icon-search:before{content:"\f002"}.uk-icon-envelope-o:before{content:"\f003"}.uk-icon-heart:before{content:"\f004"}.uk-icon-star:before{content:"\f005"}.uk-icon-star-o:before{content:"\f006"}.uk-icon-user:before{content:"\f007"}.uk-icon-film:before{content:"\f008"}.uk-icon-th-large:before{content:"\f009"}.uk-icon-th:before{content:"\f00a"}.uk-icon-th-list:before{content:"\f00b"}.uk-icon-check:before{content:"\f00c"}.uk-icon-remove:before,.uk-icon-close:before,.uk-icon-times:before{content:"\f00d"}.uk-icon-search-plus:before{content:"\f00e"}.uk-icon-search-minus:before{content:"\f010"}.uk-icon-power-off:before{content:"\f011"}.uk-icon-signal:before{content:"\f012"}.uk-icon-gear:before,.uk-icon-cog:before{content:"\f013"}.uk-icon-trash-o:before{content:"\f014"}.uk-icon-home:before{content:"\f015"}.uk-icon-file-o:before{content:"\f016"}.uk-icon-clock-o:before{content:"\f017"}.uk-icon-road:before{content:"\f018"}.uk-icon-download:before{content:"\f019"}.uk-icon-arrow-circle-o-down:before{content:"\f01a"}.uk-icon-arrow-circle-o-up:before{content:"\f01b"}.uk-icon-inbox:before{content:"\f01c"}.uk-icon-play-circle-o:before{content:"\f01d"}.uk-icon-rotate-right:before,.uk-icon-repeat:before{content:"\f01e"}.uk-icon-refresh:before{content:"\f021"}.uk-icon-list-alt:before{content:"\f022"}.uk-icon-lock:before{content:"\f023"}.uk-icon-flag:before{content:"\f024"}.uk-icon-headphones:before{content:"\f025"}.uk-icon-volume-off:before{content:"\f026"}.uk-icon-volume-down:before{content:"\f027"}.uk-icon-volume-up:before{content:"\f028"}.uk-icon-qrcode:before{content:"\f029"}.uk-icon-barcode:before{content:"\f02a"}.uk-icon-tag:before{content:"\f02b"}.uk-icon-tags:before{content:"\f02c"}.uk-icon-book:before{content:"\f02d"}.uk-icon-bookmark:before{content:"\f02e"}.uk-icon-print:before{content:"\f02f"}.uk-icon-camera:before{content:"\f030"}.uk-icon-font:before{content:"\f031"}.uk-icon-bold:before{content:"\f032"}.uk-icon-italic:before{content:"\f033"}.uk-icon-text-height:before{content:"\f034"}.uk-icon-text-width:before{content:"\f035"}.uk-icon-align-left:before{content:"\f036"}.uk-icon-align-center:before{content:"\f037"}.uk-icon-align-right:before{content:"\f038"}.uk-icon-align-justify:before{content:"\f039"}.uk-icon-list:before{content:"\f03a"}.uk-icon-dedent:before,.uk-icon-outdent:before{content:"\f03b"}.uk-icon-indent:before{content:"\f03c"}.uk-icon-video-camera:before{content:"\f03d"}.uk-icon-photo:before,.uk-icon-image:before,.uk-icon-picture-o:before{content:"\f03e"}.uk-icon-pencil:before{content:"\f040"}.uk-icon-map-marker:before{content:"\f041"}.uk-icon-adjust:before{content:"\f042"}.uk-icon-tint:before{content:"\f043"}.uk-icon-edit:before,.uk-icon-pencil-square-o:before{content:"\f044"}.uk-icon-share-square-o:before{content:"\f045"}.uk-icon-check-square-o:before{content:"\f046"}.uk-icon-arrows:before{content:"\f047"}.uk-icon-step-backward:before{content:"\f048"}.uk-icon-fast-backward:before{content:"\f049"}.uk-icon-backward:before{content:"\f04a"}.uk-icon-play:before{content:"\f04b"}.uk-icon-pause:before{content:"\f04c"}.uk-icon-stop:before{content:"\f04d"}.uk-icon-forward:before{content:"\f04e"}.uk-icon-fast-forward:before{content:"\f050"}.uk-icon-step-forward:before{content:"\f051"}.uk-icon-eject:before{content:"\f052"}.uk-icon-chevron-left:before{content:"\f053"}.uk-icon-chevron-right:before{content:"\f054"}.uk-icon-plus-circle:before{content:"\f055"}.uk-icon-minus-circle:before{content:"\f056"}.uk-icon-times-circle:before{content:"\f057"}.uk-icon-check-circle:before{content:"\f058"}.uk-icon-question-circle:before{content:"\f059"}.uk-icon-info-circle:before{content:"\f05a"}.uk-icon-crosshairs:before{content:"\f05b"}.uk-icon-times-circle-o:before{content:"\f05c"}.uk-icon-check-circle-o:before{content:"\f05d"}.uk-icon-ban:before{content:"\f05e"}.uk-icon-arrow-left:before{content:"\f060"}.uk-icon-arrow-right:before{content:"\f061"}.uk-icon-arrow-up:before{content:"\f062"}.uk-icon-arrow-down:before{content:"\f063"}.uk-icon-mail-forward:before,.uk-icon-share:before{content:"\f064"}.uk-icon-expand:before{content:"\f065"}.uk-icon-compress:before{content:"\f066"}.uk-icon-plus:before{content:"\f067"}.uk-icon-minus:before{content:"\f068"}.uk-icon-asterisk:before{content:"\f069"}.uk-icon-exclamation-circle:before{content:"\f06a"}.uk-icon-gift:before{content:"\f06b"}.uk-icon-leaf:before{content:"\f06c"}.uk-icon-fire:before{content:"\f06d"}.uk-icon-eye:before{content:"\f06e"}.uk-icon-eye-slash:before{content:"\f070"}.uk-icon-warning:before,.uk-icon-exclamation-triangle:before{content:"\f071"}.uk-icon-plane:before{content:"\f072"}.uk-icon-calendar:before{content:"\f073"}.uk-icon-random:before{content:"\f074"}.uk-icon-comment:before{content:"\f075"}.uk-icon-magnet:before{content:"\f076"}.uk-icon-chevron-up:before{content:"\f077"}.uk-icon-chevron-down:before{content:"\f078"}.uk-icon-retweet:before{content:"\f079"}.uk-icon-shopping-cart:before{content:"\f07a"}.uk-icon-folder:before{content:"\f07b"}.uk-icon-folder-open:before{content:"\f07c"}.uk-icon-arrows-v:before{content:"\f07d"}.uk-icon-arrows-h:before{content:"\f07e"}.uk-icon-bar-chart-o:before,.uk-icon-bar-chart:before{content:"\f080"}.uk-icon-twitter-square:before{content:"\f081"}.uk-icon-facebook-square:before{content:"\f082"}.uk-icon-camera-retro:before{content:"\f083"}.uk-icon-key:before{content:"\f084"}.uk-icon-gears:before,.uk-icon-cogs:before{content:"\f085"}.uk-icon-comments:before{content:"\f086"}.uk-icon-thumbs-o-up:before{content:"\f087"}.uk-icon-thumbs-o-down:before{content:"\f088"}.uk-icon-star-half:before{content:"\f089"}.uk-icon-heart-o:before{content:"\f08a"}.uk-icon-sign-out:before{content:"\f08b"}.uk-icon-linkedin-square:before{content:"\f08c"}.uk-icon-thumb-tack:before{content:"\f08d"}.uk-icon-external-link:before{content:"\f08e"}.uk-icon-sign-in:before{content:"\f090"}.uk-icon-trophy:before{content:"\f091"}.uk-icon-github-square:before{content:"\f092"}.uk-icon-upload:before{content:"\f093"}.uk-icon-lemon-o:before{content:"\f094"}.uk-icon-phone:before{content:"\f095"}.uk-icon-square-o:before{content:"\f096"}.uk-icon-bookmark-o:before{content:"\f097"}.uk-icon-phone-square:before{content:"\f098"}.uk-icon-twitter:before{content:"\f099"}.uk-icon-facebook:before{content:"\f09a"}.uk-icon-github:before{content:"\f09b"}.uk-icon-unlock:before{content:"\f09c"}.uk-icon-credit-card:before{content:"\f09d"}.uk-icon-rss:before{content:"\f09e"}.uk-icon-hdd-o:before{content:"\f0a0"}.uk-icon-bullhorn:before{content:"\f0a1"}.uk-icon-bell:before{content:"\f0f3"}.uk-icon-certificate:before{content:"\f0a3"}.uk-icon-hand-o-right:before{content:"\f0a4"}.uk-icon-hand-o-left:before{content:"\f0a5"}.uk-icon-hand-o-up:before{content:"\f0a6"}.uk-icon-hand-o-down:before{content:"\f0a7"}.uk-icon-arrow-circle-left:before{content:"\f0a8"}.uk-icon-arrow-circle-right:before{content:"\f0a9"}.uk-icon-arrow-circle-up:before{content:"\f0aa"}.uk-icon-arrow-circle-down:before{content:"\f0ab"}.uk-icon-globe:before{content:"\f0ac"}.uk-icon-wrench:before{content:"\f0ad"}.uk-icon-tasks:before{content:"\f0ae"}.uk-icon-filter:before{content:"\f0b0"}.uk-icon-briefcase:before{content:"\f0b1"}.uk-icon-arrows-alt:before{content:"\f0b2"}.uk-icon-group:before,.uk-icon-users:before{content:"\f0c0"}.uk-icon-chain:before,.uk-icon-link:before{content:"\f0c1"}.uk-icon-cloud:before{content:"\f0c2"}.uk-icon-flask:before{content:"\f0c3"}.uk-icon-cut:before,.uk-icon-scissors:before{content:"\f0c4"}.uk-icon-copy:before,.uk-icon-files-o:before{content:"\f0c5"}.uk-icon-paperclip:before{content:"\f0c6"}.uk-icon-save:before,.uk-icon-floppy-o:before{content:"\f0c7"}.uk-icon-square:before{content:"\f0c8"}.uk-icon-navicon:before,.uk-icon-reorder:before,.uk-icon-bars:before{content:"\f0c9"}.uk-icon-list-ul:before{content:"\f0ca"}.uk-icon-list-ol:before{content:"\f0cb"}.uk-icon-strikethrough:before{content:"\f0cc"}.uk-icon-underline:before{content:"\f0cd"}.uk-icon-table:before{content:"\f0ce"}.uk-icon-magic:before{content:"\f0d0"}.uk-icon-truck:before{content:"\f0d1"}.uk-icon-pinterest:before{content:"\f0d2"}.uk-icon-pinterest-square:before{content:"\f0d3"}.uk-icon-google-plus-square:before{content:"\f0d4"}.uk-icon-google-plus:before{content:"\f0d5"}.uk-icon-money:before{content:"\f0d6"}.uk-icon-caret-down:before{content:"\f0d7"}.uk-icon-caret-up:before{content:"\f0d8"}.uk-icon-caret-left:before{content:"\f0d9"}.uk-icon-caret-right:before{content:"\f0da"}.uk-icon-columns:before{content:"\f0db"}.uk-icon-unsorted:before,.uk-icon-sort:before{content:"\f0dc"}.uk-icon-sort-down:before,.uk-icon-sort-desc:before{content:"\f0dd"}.uk-icon-sort-up:before,.uk-icon-sort-asc:before{content:"\f0de"}.uk-icon-envelope:before{content:"\f0e0"}.uk-icon-linkedin:before{content:"\f0e1"}.uk-icon-rotate-left:before,.uk-icon-undo:before{content:"\f0e2"}.uk-icon-legal:before,.uk-icon-gavel:before{content:"\f0e3"}.uk-icon-dashboard:before,.uk-icon-tachometer:before{content:"\f0e4"}.uk-icon-comment-o:before{content:"\f0e5"}.uk-icon-comments-o:before{content:"\f0e6"}.uk-icon-flash:before,.uk-icon-bolt:before{content:"\f0e7"}.uk-icon-sitemap:before{content:"\f0e8"}.uk-icon-umbrella:before{content:"\f0e9"}.uk-icon-paste:before,.uk-icon-clipboard:before{content:"\f0ea"}.uk-icon-lightbulb-o:before{content:"\f0eb"}.uk-icon-exchange:before{content:"\f0ec"}.uk-icon-cloud-download:before{content:"\f0ed"}.uk-icon-cloud-upload:before{content:"\f0ee"}.uk-icon-user-md:before{content:"\f0f0"}.uk-icon-stethoscope:before{content:"\f0f1"}.uk-icon-suitcase:before{content:"\f0f2"}.uk-icon-bell-o:before{content:"\f0a2"}.uk-icon-coffee:before{content:"\f0f4"}.uk-icon-cutlery:before{content:"\f0f5"}.uk-icon-file-text-o:before{content:"\f0f6"}.uk-icon-building-o:before{content:"\f0f7"}.uk-icon-hospital-o:before{content:"\f0f8"}.uk-icon-ambulance:before{content:"\f0f9"}.uk-icon-medkit:before{content:"\f0fa"}.uk-icon-fighter-jet:before{content:"\f0fb"}.uk-icon-beer:before{content:"\f0fc"}.uk-icon-h-square:before{content:"\f0fd"}.uk-icon-plus-square:before{content:"\f0fe"}.uk-icon-angle-double-left:before{content:"\f100"}.uk-icon-angle-double-right:before{content:"\f101"}.uk-icon-angle-double-up:before{content:"\f102"}.uk-icon-angle-double-down:before{content:"\f103"}.uk-icon-angle-left:before{content:"\f104"}.uk-icon-angle-right:before{content:"\f105"}.uk-icon-angle-up:before{content:"\f106"}.uk-icon-angle-down:before{content:"\f107"}.uk-icon-desktop:before{content:"\f108"}.uk-icon-laptop:before{content:"\f109"}.uk-icon-tablet:before{content:"\f10a"}.uk-icon-mobile-phone:before,.uk-icon-mobile:before{content:"\f10b"}.uk-icon-circle-o:before{content:"\f10c"}.uk-icon-quote-left:before{content:"\f10d"}.uk-icon-quote-right:before{content:"\f10e"}.uk-icon-spinner:before{content:"\f110"}.uk-icon-circle:before{content:"\f111"}.uk-icon-mail-reply:before,.uk-icon-reply:before{content:"\f112"}.uk-icon-github-alt:before{content:"\f113"}.uk-icon-folder-o:before{content:"\f114"}.uk-icon-folder-open-o:before{content:"\f115"}.uk-icon-smile-o:before{content:"\f118"}.uk-icon-frown-o:before{content:"\f119"}.uk-icon-meh-o:before{content:"\f11a"}.uk-icon-gamepad:before{content:"\f11b"}.uk-icon-keyboard-o:before{content:"\f11c"}.uk-icon-flag-o:before{content:"\f11d"}.uk-icon-flag-checkered:before{content:"\f11e"}.uk-icon-terminal:before{content:"\f120"}.uk-icon-code:before{content:"\f121"}.uk-icon-mail-reply-all:before,.uk-icon-reply-all:before{content:"\f122"}.uk-icon-star-half-empty:before,.uk-icon-star-half-full:before,.uk-icon-star-half-o:before{content:"\f123"}.uk-icon-location-arrow:before{content:"\f124"}.uk-icon-crop:before{content:"\f125"}.uk-icon-code-fork:before{content:"\f126"}.uk-icon-unlink:before,.uk-icon-chain-broken:before{content:"\f127"}.uk-icon-question:before{content:"\f128"}.uk-icon-info:before{content:"\f129"}.uk-icon-exclamation:before{content:"\f12a"}.uk-icon-superscript:before{content:"\f12b"}.uk-icon-subscript:before{content:"\f12c"}.uk-icon-eraser:before{content:"\f12d"}.uk-icon-puzzle-piece:before{content:"\f12e"}.uk-icon-microphone:before{content:"\f130"}.uk-icon-microphone-slash:before{content:"\f131"}.uk-icon-shield:before{content:"\f132"}.uk-icon-calendar-o:before{content:"\f133"}.uk-icon-fire-extinguisher:before{content:"\f134"}.uk-icon-rocket:before{content:"\f135"}.uk-icon-maxcdn:before{content:"\f136"}.uk-icon-chevron-circle-left:before{content:"\f137"}.uk-icon-chevron-circle-right:before{content:"\f138"}.uk-icon-chevron-circle-up:before{content:"\f139"}.uk-icon-chevron-circle-down:before{content:"\f13a"}.uk-icon-html5:before{content:"\f13b"}.uk-icon-css3:before{content:"\f13c"}.uk-icon-anchor:before{content:"\f13d"}.uk-icon-unlock-alt:before{content:"\f13e"}.uk-icon-bullseye:before{content:"\f140"}.uk-icon-ellipsis-h:before{content:"\f141"}.uk-icon-ellipsis-v:before{content:"\f142"}.uk-icon-rss-square:before{content:"\f143"}.uk-icon-play-circle:before{content:"\f144"}.uk-icon-ticket:before{content:"\f145"}.uk-icon-minus-square:before{content:"\f146"}.uk-icon-minus-square-o:before{content:"\f147"}.uk-icon-level-up:before{content:"\f148"}.uk-icon-level-down:before{content:"\f149"}.uk-icon-check-square:before{content:"\f14a"}.uk-icon-pencil-square:before{content:"\f14b"}.uk-icon-external-link-square:before{content:"\f14c"}.uk-icon-share-square:before{content:"\f14d"}.uk-icon-compass:before{content:"\f14e"}.uk-icon-toggle-down:before,.uk-icon-caret-square-o-down:before{content:"\f150"}.uk-icon-toggle-up:before,.uk-icon-caret-square-o-up:before{content:"\f151"}.uk-icon-toggle-right:before,.uk-icon-caret-square-o-right:before{content:"\f152"}.uk-icon-euro:before,.uk-icon-eur:before{content:"\f153"}.uk-icon-gbp:before{content:"\f154"}.uk-icon-dollar:before,.uk-icon-usd:before{content:"\f155"}.uk-icon-rupee:before,.uk-icon-inr:before{content:"\f156"}.uk-icon-cny:before,.uk-icon-rmb:before,.uk-icon-yen:before,.uk-icon-jpy:before{content:"\f157"}.uk-icon-ruble:before,.uk-icon-rouble:before,.uk-icon-rub:before{content:"\f158"}.uk-icon-won:before,.uk-icon-krw:before{content:"\f159"}.uk-icon-bitcoin:before,.uk-icon-btc:before{content:"\f15a"}.uk-icon-file:before{content:"\f15b"}.uk-icon-file-text:before{content:"\f15c"}.uk-icon-sort-alpha-asc:before{content:"\f15d"}.uk-icon-sort-alpha-desc:before{content:"\f15e"}.uk-icon-sort-amount-asc:before{content:"\f160"}.uk-icon-sort-amount-desc:before{content:"\f161"}.uk-icon-sort-numeric-asc:before{content:"\f162"}.uk-icon-sort-numeric-desc:before{content:"\f163"}.uk-icon-thumbs-up:before{content:"\f164"}.uk-icon-thumbs-down:before{content:"\f165"}.uk-icon-youtube-square:before{content:"\f166"}.uk-icon-youtube:before{content:"\f167"}.uk-icon-xing:before{content:"\f168"}.uk-icon-xing-square:before{content:"\f169"}.uk-icon-youtube-play:before{content:"\f16a"}.uk-icon-dropbox:before{content:"\f16b"}.uk-icon-stack-overflow:before{content:"\f16c"}.uk-icon-instagram:before{content:"\f16d"}.uk-icon-flickr:before{content:"\f16e"}.uk-icon-adn:before{content:"\f170"}.uk-icon-bitbucket:before{content:"\f171"}.uk-icon-bitbucket-square:before{content:"\f172"}.uk-icon-tumblr:before{content:"\f173"}.uk-icon-tumblr-square:before{content:"\f174"}.uk-icon-long-arrow-down:before{content:"\f175"}.uk-icon-long-arrow-up:before{content:"\f176"}.uk-icon-long-arrow-left:before{content:"\f177"}.uk-icon-long-arrow-right:before{content:"\f178"}.uk-icon-apple:before{content:"\f179"}.uk-icon-windows:before{content:"\f17a"}.uk-icon-android:before{content:"\f17b"}.uk-icon-linux:before{content:"\f17c"}.uk-icon-dribbble:before{content:"\f17d"}.uk-icon-skype:before{content:"\f17e"}.uk-icon-foursquare:before{content:"\f180"}.uk-icon-trello:before{content:"\f181"}.uk-icon-female:before{content:"\f182"}.uk-icon-male:before{content:"\f183"}.uk-icon-gittip:before{content:"\f184"}.uk-icon-sun-o:before{content:"\f185"}.uk-icon-moon-o:before{content:"\f186"}.uk-icon-archive:before{content:"\f187"}.uk-icon-bug:before{content:"\f188"}.uk-icon-vk:before{content:"\f189"}.uk-icon-weibo:before{content:"\f18a"}.uk-icon-renren:before{content:"\f18b"}.uk-icon-pagelines:before{content:"\f18c"}.uk-icon-stack-exchange:before{content:"\f18d"}.uk-icon-arrow-circle-o-right:before{content:"\f18e"}.uk-icon-arrow-circle-o-left:before{content:"\f190"}.uk-icon-toggle-left:before,.uk-icon-caret-square-o-left:before{content:"\f191"}.uk-icon-dot-circle-o:before{content:"\f192"}.uk-icon-wheelchair:before{content:"\f193"}.uk-icon-vimeo-square:before{content:"\f194"}.uk-icon-turkish-lira:before,.uk-icon-try:before{content:"\f195"}.uk-icon-plus-square-o:before{content:"\f196"}.uk-icon-space-shuttle:before{content:"\f197"}.uk-icon-slack:before{content:"\f198"}.uk-icon-envelope-square:before{content:"\f199"}.uk-icon-wordpress:before{content:"\f19a"}.uk-icon-openid:before{content:"\f19b"}.uk-icon-institution:before,.uk-icon-bank:before,.uk-icon-university:before{content:"\f19c"}.uk-icon-mortar-board:before,.uk-icon-graduation-cap:before{content:"\f19d"}.uk-icon-yahoo:before{content:"\f19e"}.uk-icon-google:before{content:"\f1a0"}.uk-icon-reddit:before{content:"\f1a1"}.uk-icon-reddit-square:before{content:"\f1a2"}.uk-icon-stumbleupon-circle:before{content:"\f1a3"}.uk-icon-stumbleupon:before{content:"\f1a4"}.uk-icon-delicious:before{content:"\f1a5"}.uk-icon-digg:before{content:"\f1a6"}.uk-icon-pied-piper:before{content:"\f1a7"}.uk-icon-pied-piper-alt:before{content:"\f1a8"}.uk-icon-drupal:before{content:"\f1a9"}.uk-icon-joomla:before{content:"\f1aa"}.uk-icon-language:before{content:"\f1ab"}.uk-icon-fax:before{content:"\f1ac"}.uk-icon-building:before{content:"\f1ad"}.uk-icon-child:before{content:"\f1ae"}.uk-icon-paw:before{content:"\f1b0"}.uk-icon-spoon:before{content:"\f1b1"}.uk-icon-cube:before{content:"\f1b2"}.uk-icon-cubes:before{content:"\f1b3"}.uk-icon-behance:before{content:"\f1b4"}.uk-icon-behance-square:before{content:"\f1b5"}.uk-icon-steam:before{content:"\f1b6"}.uk-icon-steam-square:before{content:"\f1b7"}.uk-icon-recycle:before{content:"\f1b8"}.uk-icon-automobile:before,.uk-icon-car:before{content:"\f1b9"}.uk-icon-cab:before,.uk-icon-taxi:before{content:"\f1ba"}.uk-icon-tree:before{content:"\f1bb"}.uk-icon-spotify:before{content:"\f1bc"}.uk-icon-deviantart:before{content:"\f1bd"}.uk-icon-soundcloud:before{content:"\f1be"}.uk-icon-database:before{content:"\f1c0"}.uk-icon-file-pdf-o:before{content:"\f1c1"}.uk-icon-file-word-o:before{content:"\f1c2"}.uk-icon-file-excel-o:before{content:"\f1c3"}.uk-icon-file-powerpoint-o:before{content:"\f1c4"}.uk-icon-file-photo-o:before,.uk-icon-file-picture-o:before,.uk-icon-file-image-o:before{content:"\f1c5"}.uk-icon-file-zip-o:before,.uk-icon-file-archive-o:before{content:"\f1c6"}.uk-icon-file-sound-o:before,.uk-icon-file-audio-o:before{content:"\f1c7"}.uk-icon-file-movie-o:before,.uk-icon-file-video-o:before{content:"\f1c8"}.uk-icon-file-code-o:before{content:"\f1c9"}.uk-icon-vine:before{content:"\f1ca"}.uk-icon-codepen:before{content:"\f1cb"}.uk-icon-jsfiddle:before{content:"\f1cc"}.uk-icon-life-bouy:before,.uk-icon-life-buoy:before,.uk-icon-life-saver:before,.uk-icon-support:before,.uk-icon-life-ring:before{content:"\f1cd"}.uk-icon-circle-o-notch:before{content:"\f1ce"}.uk-icon-ra:before,.uk-icon-rebel:before{content:"\f1d0"}.uk-icon-ge:before,.uk-icon-empire:before{content:"\f1d1"}.uk-icon-git-square:before{content:"\f1d2"}.uk-icon-git:before{content:"\f1d3"}.uk-icon-hacker-news:before{content:"\f1d4"}.uk-icon-tencent-weibo:before{content:"\f1d5"}.uk-icon-qq:before{content:"\f1d6"}.uk-icon-wechat:before,.uk-icon-weixin:before{content:"\f1d7"}.uk-icon-send:before,.uk-icon-paper-plane:before{content:"\f1d8"}.uk-icon-send-o:before,.uk-icon-paper-plane-o:before{content:"\f1d9"}.uk-icon-history:before{content:"\f1da"}.uk-icon-circle-thin:before{content:"\f1db"}.uk-icon-header:before{content:"\f1dc"}.uk-icon-paragraph:before{content:"\f1dd"}.uk-icon-sliders:before{content:"\f1de"}.uk-icon-share-alt:before{content:"\f1e0"}.uk-icon-share-alt-square:before{content:"\f1e1"}.uk-icon-bomb:before{content:"\f1e2"}.uk-icon-soccer-ball-o:before,.uk-icon-futbol-o:before{content:"\f1e3"}.uk-icon-tty:before{content:"\f1e4"}.uk-icon-binoculars:before{content:"\f1e5"}.uk-icon-plug:before{content:"\f1e6"}.uk-icon-slideshare:before{content:"\f1e7"}.uk-icon-twitch:before{content:"\f1e8"}.uk-icon-yelp:before{content:"\f1e9"}.uk-icon-newspaper-o:before{content:"\f1ea"}.uk-icon-wifi:before{content:"\f1eb"}.uk-icon-calculator:before{content:"\f1ec"}.uk-icon-paypal:before{content:"\f1ed"}.uk-icon-google-wallet:before{content:"\f1ee"}.uk-icon-cc-visa:before{content:"\f1f0"}.uk-icon-cc-mastercard:before{content:"\f1f1"}.uk-icon-cc-discover:before{content:"\f1f2"}.uk-icon-cc-amex:before{content:"\f1f3"}.uk-icon-cc-paypal:before{content:"\f1f4"}.uk-icon-cc-stripe:before{content:"\f1f5"}.uk-icon-bell-slash:before{content:"\f1f6"}.uk-icon-bell-slash-o:before{content:"\f1f7"}.uk-icon-trash:before{content:"\f1f8"}.uk-icon-copyright:before{content:"\f1f9"}.uk-icon-at:before{content:"\f1fa"}.uk-icon-eyedropper:before{content:"\f1fb"}.uk-icon-paint-brush:before{content:"\f1fc"}.uk-icon-birthday-cake:before{content:"\f1fd"}.uk-icon-area-chart:before{content:"\f1fe"}.uk-icon-pie-chart:before{content:"\f200"}.uk-icon-line-chart:before{content:"\f201"}.uk-icon-lastfm:before{content:"\f202"}.uk-icon-lastfm-square:before{content:"\f203"}.uk-icon-toggle-off:before{content:"\f204"}.uk-icon-toggle-on:before{content:"\f205"}.uk-icon-bicycle:before{content:"\f206"}.uk-icon-bus:before{content:"\f207"}.uk-icon-ioxhost:before{content:"\f208"}.uk-icon-angellist:before{content:"\f209"}.uk-icon-cc:before{content:"\f20a"}.uk-icon-shekel:before,.uk-icon-sheqel:before,.uk-icon-ils:before{content:"\f20b"}.uk-icon-meanpath:before{content:"\f20c"}.uk-close::-moz-focus-inner{border:0;padding:0}.uk-close{-webkit-appearance:none;margin:0;border:none;overflow:visible;font:inherit;color:inherit;text-transform:none;padding:0;background:0 0;display:inline-block;-moz-box-sizing:content-box;box-sizing:content-box;width:20px;line-height:20px;text-align:center;vertical-align:middle;opacity:.3}.uk-close:after{display:block;content:"\f00d";font-family:FontAwesome}.uk-close:hover,.uk-close:focus{opacity:.5;outline:0;color:inherit;text-decoration:none;cursor:pointer}.uk-close-alt{padding:2px;border-radius:50%;background:#eee;opacity:1}.uk-close-alt:hover,.uk-close-alt:focus{opacity:1}.uk-close-alt:after{opacity:.5}.uk-close-alt:hover:after,.uk-close-alt:focus:after{opacity:.8}.uk-badge{display:inline-block;padding:0 5px;background:#00a8e6;font-size:10px;font-weight:700;line-height:14px;color:#fff;text-align:center;vertical-align:middle;text-transform:none}a.uk-badge:hover{color:#fff}.uk-badge-notification{-moz-box-sizing:border-box;box-sizing:border-box;min-width:18px;border-radius:500px;font-size:12px;line-height:18px}.uk-badge-success{background-color:#8cc14c}.uk-badge-warning{background-color:#faa732}.uk-badge-danger{background-color:#da314b}.uk-alert{margin-bottom:15px;padding:10px;background:#ebf7fd;color:#2d7091}*+.uk-alert{margin-top:15px}.uk-alert>:last-child{margin-bottom:0}.uk-alert h1,.uk-alert h2,.uk-alert h3,.uk-alert h4,.uk-alert h5,.uk-alert h6{color:inherit}.uk-alert>.uk-close:first-child{float:right}.uk-alert>.uk-close:first-child+*{margin-top:0}.uk-alert-success{background:#f2fae3;color:#659f13}.uk-alert-warning{background:#fffceb;color:#e28327}.uk-alert-danger{background:#fff1f0;color:#d85030}.uk-alert-large{padding:20px}.uk-alert-large>.uk-close:first-child{margin:-10px -10px 0 0}.uk-thumbnail{display:inline-block;max-width:100%;-moz-box-sizing:border-box;box-sizing:border-box;margin:0;padding:4px;border:1px solid #ddd;background:#fff}a.uk-thumbnail:hover,a.uk-thumbnail:focus{border-color:#aaa;background-color:#fff;text-decoration:none;outline:0}.uk-thumbnail-caption{padding-top:4px;text-align:center;color:#444}.uk-thumbnail-mini{width:150px}.uk-thumbnail-small{width:200px}.uk-thumbnail-medium{width:300px}.uk-thumbnail-large{width:400px}.uk-thumbnail-expand,.uk-thumbnail-expand>img{width:100%}.uk-overlay{display:inline-block;position:relative;max-width:100%;vertical-align:middle;overflow:hidden}.uk-overlay>:first-child{margin-bottom:0}.uk-overlay-area{position:absolute;top:0;bottom:0;left:0;right:0;background:rgba(0,0,0,.3);opacity:0;-webkit-transition:opacity .15s linear;transition:opacity .15s linear;-webkit-transform:translate3d(0,0,0)}.uk-overlay:hover .uk-overlay-area,.uk-overlay.uk-hover .uk-overlay-area,.uk-overlay-toggle:hover .uk-overlay-area,.uk-overlay-toggle.uk-hover .uk-overlay-area{opacity:1}.uk-overlay-area:empty:before{content:"\f002";position:absolute;top:50%;left:50%;width:50px;height:50px;margin-top:-25px;margin-left:-25px;font-size:50px;line-height:1;font-family:FontAwesome;text-align:center;color:#fff}.uk-overlay-area:not(:empty){font-size:0}.uk-overlay-area:not(:empty):before{content:'';display:inline-block;height:100%;vertical-align:middle}.uk-overlay-area-content{display:inline-block;-moz-box-sizing:border-box;box-sizing:border-box;width:100%;vertical-align:middle;font-size:1rem;text-align:center;padding:0 15px;color:#fff}.uk-overlay-area-content>:last-child{margin-bottom:0}.uk-overlay-area-content a:not([class]),.uk-overlay-area-content a:not([class]):hover{color:inherit}.uk-overlay-caption{position:absolute;bottom:0;left:0;right:0;padding:15px;background:rgba(0,0,0,.5);color:#fff;opacity:0;-webkit-transition:opacity .15s linear;transition:opacity .15s linear;-webkit-transform:translate3d(0,0,0)}.uk-overlay:hover .uk-overlay-caption,.uk-overlay.uk-hover .uk-overlay-caption,.uk-overlay-toggle:hover .uk-overlay-caption,.uk-overlay-toggle.uk-hover .uk-overlay-caption{opacity:1}.uk-progress{-moz-box-sizing:border-box;box-sizing:border-box;height:20px;margin-bottom:15px;background:#eee;overflow:hidden;line-height:20px}*+.uk-progress{margin-top:15px}.uk-progress-bar{width:0;height:100%;background:#00a8e6;float:left;-webkit-transition:width .6s ease;transition:width .6s ease;font-size:12px;color:#fff;text-align:center}.uk-progress-mini{height:6px}.uk-progress-small{height:12px}.uk-progress-success .uk-progress-bar{background-color:#8cc14c}.uk-progress-warning .uk-progress-bar{background-color:#faa732}.uk-progress-danger .uk-progress-bar{background-color:#da314b}.uk-progress-striped .uk-progress-bar{background-image:-webkit-linear-gradient(-45deg,rgba(255,255,255,.15)25%,transparent 25%,transparent 50%,rgba(255,255,255,.15)50%,rgba(255,255,255,.15)75%,transparent 75%,transparent);background-image:linear-gradient(-45deg,rgba(255,255,255,.15)25%,transparent 25%,transparent 50%,rgba(255,255,255,.15)50%,rgba(255,255,255,.15)75%,transparent 75%,transparent);background-size:30px 30px}.uk-progress-striped.uk-active .uk-progress-bar{-webkit-animation:uk-progress-bar-stripes 2s linear infinite;animation:uk-progress-bar-stripes 2s linear infinite}@-webkit-keyframes uk-progress-bar-stripes{0%{background-position:0 0}100%{background-position:30px 0}}@keyframes uk-progress-bar-stripes{0%{background-position:0 0}100%{background-position:30px 0}}[class*=uk-animation-]{-webkit-animation-duration:.5s;animation-duration:.5s;-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out;-webkit-animation-fill-mode:both;animation-fill-mode:both}@media screen{[data-uk-scrollspy*=uk-animation-]{opacity:0}}.uk-animation-fade{-webkit-animation-name:uk-fade;animation-name:uk-fade;-webkit-animation-duration:.8s;animation-duration:.8s;-webkit-animation-timing-function:linear!important;animation-timing-function:linear!important}.uk-animation-scale-up{-webkit-animation-name:uk-fade-scale-02;animation-name:uk-fade-scale-02}.uk-animation-scale-down{-webkit-animation-name:uk-fade-scale-18;animation-name:uk-fade-scale-18}.uk-animation-slide-top{-webkit-animation-name:uk-fade-top;animation-name:uk-fade-top}.uk-animation-slide-bottom{-webkit-animation-name:uk-fade-bottom;animation-name:uk-fade-bottom}.uk-animation-slide-left{-webkit-animation-name:uk-fade-left;animation-name:uk-fade-left}.uk-animation-slide-right{-webkit-animation-name:uk-fade-right;animation-name:uk-fade-right}.uk-animation-scale{-webkit-animation-name:uk-scale-12;animation-name:uk-scale-12}.uk-animation-shake{-webkit-animation-name:uk-shake;animation-name:uk-shake}.uk-animation-reverse{-webkit-animation-direction:reverse;animation-direction:reverse;-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}.uk-animation-10{-webkit-animation-duration:10s;animation-duration:10s}.uk-animation-top-left{-webkit-transform-origin:0 0;transform-origin:0 0}.uk-animation-top-center{-webkit-transform-origin:50% 0;transform-origin:50% 0}.uk-animation-top-right{-webkit-transform-origin:100% 0;transform-origin:100% 0}.uk-animation-middle-left{-webkit-transform-origin:0 50%;transform-origin:0 50%}.uk-animation-middle-right{-webkit-transform-origin:100% 50%;transform-origin:100% 50%}.uk-animation-bottom-left{-webkit-transform-origin:0 100%;transform-origin:0 100%}.uk-animation-bottom-center{-webkit-transform-origin:50% 100%;transform-origin:50% 100%}.uk-animation-bottom-right{-webkit-transform-origin:100% 100%;transform-origin:100% 100%}@-webkit-keyframes uk-fade{0%{opacity:0}100%{opacity:1}}@keyframes uk-fade{0%{opacity:0}100%{opacity:1}}@-webkit-keyframes uk-fade-top{0%{opacity:0;-webkit-transform:translateY(-100%)}100%{opacity:1;-webkit-transform:translateY(0)}}@keyframes uk-fade-top{0%{opacity:0;transform:translateY(-100%)}100%{opacity:1;transform:translateY(0)}}@-webkit-keyframes uk-fade-bottom{0%{opacity:0;-webkit-transform:translateY(100%)}100%{opacity:1;-webkit-transform:translateY(0)}}@keyframes uk-fade-bottom{0%{opacity:0;transform:translateY(100%)}100%{opacity:1;transform:translateY(0)}}@-webkit-keyframes uk-fade-left{0%{opacity:0;-webkit-transform:translateX(-100%)}100%{opacity:1;-webkit-transform:translateX(0)}}@keyframes uk-fade-left{0%{opacity:0;transform:translateX(-100%)}100%{opacity:1;transform:translateX(0)}}@-webkit-keyframes uk-fade-right{0%{opacity:0;-webkit-transform:translateX(100%)}100%{opacity:1;-webkit-transform:translateX(0)}}@keyframes uk-fade-right{0%{opacity:0;transform:translateX(100%)}100%{opacity:1;transform:translateX(0)}}@-webkit-keyframes uk-fade-scale-02{0%{opacity:0;-webkit-transform:scale(0.2)}100%{opacity:1;-webkit-transform:scale(1)}}@keyframes uk-fade-scale-02{0%{opacity:0;transform:scale(0.2)}100%{opacity:1;transform:scale(1)}}@-webkit-keyframes uk-fade-scale-15{0%{opacity:0;-webkit-transform:scale(1.5)}100%{opacity:1;-webkit-transform:scale(1)}}@keyframes uk-fade-scale-15{0%{opacity:0;transform:scale(1.5)}100%{opacity:1;transform:scale(1)}}@-webkit-keyframes uk-fade-scale-18{0%{opacity:0;-webkit-transform:scale(1.8)}100%{opacity:1;-webkit-transform:scale(1)}}@keyframes uk-fade-scale-18{0%{opacity:0;transform:scale(1.8)}100%{opacity:1;transform:scale(1)}}@-webkit-keyframes uk-slide-left{0%{-webkit-transform:translateX(-100%)}100%{-webkit-transform:translateX(0)}}@keyframes uk-slide-left{0%{transform:translateX(-100%)}100%{transform:translateX(0)}}@-webkit-keyframes uk-slide-right{0%{-webkit-transform:translateX(100%)}100%{-webkit-transform:translateX(0)}}@keyframes uk-slide-right{0%{transform:translateX(100%)}100%{transform:translateX(0)}}@-webkit-keyframes uk-slide-left-33{0%{-webkit-transform:translateX(33%)}100%{-webkit-transform:translateX(0)}}@keyframes uk-slide-left-33{0%{transform:translateX(33%)}100%{transform:translateX(0)}}@-webkit-keyframes uk-slide-right-33{0%{-webkit-transform:translateX(-33%)}100%{-webkit-transform:translateX(0)}}@keyframes uk-slide-right-33{0%{transform:translateX(-33%)}100%{transform:translateX(0)}}@-webkit-keyframes uk-scale-12{0%{-webkit-transform:scale(1.2)}100%{-webkit-transform:scale(1)}}@keyframes uk-scale-12{0%{transform:scale(1.2)}100%{transform:scale(1)}}@-webkit-keyframes uk-rotate{0%{-webkit-transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg)}}@keyframes uk-rotate{0%{transform:rotate(0deg)}100%{transform:rotate(359deg)}}@-webkit-keyframes uk-shake{0%,100%{-webkit-transform:translateX(0)}10%{-webkit-transform:translateX(-9px)}20%{-webkit-transform:translateX(8px)}30%{-webkit-transform:translateX(-7px)}40%{-webkit-transform:translateX(6px)}50%{-webkit-transform:translateX(-5px)}60%{-webkit-transform:translateX(4px)}70%{-webkit-transform:translateX(-3px)}80%{-webkit-transform:translateX(2px)}90%{-webkit-transform:translateX(-1px)}}@keyframes uk-shake{0%,100%{transform:translateX(0)}10%{transform:translateX(-9px)}20%{transform:translateX(8px)}30%{transform:translateX(-7px)}40%{transform:translateX(6px)}50%{transform:translateX(-5px)}60%{transform:translateX(4px)}70%{transform:translateX(-3px)}80%{transform:translateX(2px)}90%{transform:translateX(-1px)}}@-webkit-keyframes uk-slide-top-fixed{0%{opacity:0;-webkit-transform:translateY(-10px)}100%{opacity:1;-webkit-transform:translateY(0)}}@keyframes uk-slide-top-fixed{0%{opacity:0;transform:translateY(-10px)}100%{opacity:1;transform:translateY(0)}}@-webkit-keyframes uk-slide-bottom-fixed{0%{opacity:0;-webkit-transform:translateY(10px)}100%{opacity:1;-webkit-transform:translateY(0)}}@keyframes uk-slide-bottom-fixed{0%{opacity:0;transform:translateY(10px)}100%{opacity:1;transform:translateY(0)}}.uk-dropdown{display:none;position:absolute;top:100%;left:0;z-index:1020;-moz-box-sizing:border-box;box-sizing:border-box;width:200px;margin-top:5px;padding:15px;background:#f5f5f5;color:#444;font-size:1rem;vertical-align:top}.uk-open>.uk-dropdown{display:block;-webkit-animation:uk-fade .2s ease-in-out;animation:uk-fade .2s ease-in-out;-webkit-transform-origin:0 0;transform-origin:0 0}.uk-dropdown-flip{left:auto;right:0}.uk-dropdown-up{top:auto;bottom:100%;margin-top:auto;margin-bottom:5px}.uk-dropdown .uk-nav{margin:0 -15px}.uk-grid .uk-dropdown-grid+.uk-dropdown-grid{margin-top:15px}.uk-dropdown-grid>[class*=uk-width-]>.uk-panel+.uk-panel{margin-top:15px}@media (min-width:768px){.uk-dropdown:not(.uk-dropdown-stack)>.uk-dropdown-grid{margin-left:-15px;margin-right:-15px}.uk-dropdown:not(.uk-dropdown-stack)>.uk-dropdown-grid>[class*=uk-width-]{padding-left:15px;padding-right:15px}.uk-dropdown:not(.uk-dropdown-stack)>.uk-dropdown-grid>[class*=uk-width-]:nth-child(n+2){border-left:1px solid #ddd}.uk-dropdown-width-2:not(.uk-dropdown-stack){width:400px}.uk-dropdown-width-3:not(.uk-dropdown-stack){width:600px}.uk-dropdown-width-4:not(.uk-dropdown-stack){width:800px}.uk-dropdown-width-5:not(.uk-dropdown-stack){width:1000px}}@media (max-width:767px){.uk-dropdown-grid>[class*=uk-width-]{width:100%}.uk-dropdown-grid>[class*=uk-width-]:nth-child(n+2){margin-top:15px}}.uk-dropdown-stack>.uk-dropdown-grid>[class*=uk-width-]{width:100%}.uk-dropdown-stack>.uk-dropdown-grid>[class*=uk-width-]:nth-child(n+2){margin-top:15px}.uk-dropdown-small{min-width:150px;width:auto;padding:5px;white-space:nowrap}.uk-dropdown-small .uk-nav{margin:0 -5px}.uk-dropdown-navbar{margin-top:0;background:#f5f5f5;color:#444}.uk-open>.uk-dropdown-navbar{-webkit-animation:uk-slide-top-fixed .2s ease-in-out;animation:uk-slide-top-fixed .2s ease-in-out}.uk-dropdown-scrollable{overflow-y:auto;max-height:200px}.uk-modal{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1010;overflow-y:auto;-webkit-overflow-scrolling:touch;background:rgba(0,0,0,.6);opacity:0;-webkit-transition:opacity .15s linear;transition:opacity .15s linear}.uk-modal.uk-open{opacity:1}.uk-modal-page,.uk-modal-page body{overflow:hidden}.uk-modal-dialog{position:relative;-moz-box-sizing:border-box;box-sizing:border-box;margin:50px auto;padding:20px;width:600px;max-width:100%;max-width:calc(100% - 20px);background:#fff;opacity:0;-webkit-transform:translateY(-100px);transform:translateY(-100px);-webkit-transition:opacity .3s linear,-webkit-transform .3s ease-out;transition:opacity .3s linear,transform .3s ease-out}@media (max-width:767px){.uk-modal-dialog{width:auto;margin:10px}}.uk-open .uk-modal-dialog{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}.uk-modal-dialog>:last-child{margin-bottom:0}.uk-modal-dialog>.uk-close:first-child{margin:-10px -10px 0 0;float:right}.uk-modal-dialog>.uk-close:first-child+*{margin-top:0}.uk-modal-dialog-frameless{padding:0}.uk-modal-dialog-frameless>.uk-close:first-child{position:absolute;top:-12px;right:-12px;margin:0;float:none}@media (max-width:767px){.uk-modal-dialog-frameless>.uk-close:first-child{top:-7px;right:-7px}}@media (min-width:768px){.uk-modal-dialog-large{width:930px}}@media (min-width:1220px){.uk-modal-dialog-large{width:1130px}}.uk-offcanvas{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:rgba(0,0,0,.1)}.uk-offcanvas.uk-active{display:block}.uk-offcanvas-page{position:fixed;-webkit-transition:margin-left .3s ease-in-out;transition:margin-left .3s ease-in-out}.uk-offcanvas-bar{position:fixed;top:0;bottom:0;left:0;-webkit-transform:translateX(-100%);transform:translateX(-100%);z-index:1001;width:270px;max-width:100%;background:#333;overflow-y:auto;-webkit-overflow-scrolling:touch;-webkit-transition:-webkit-transform .3s ease-in-out;transition:transform .3s ease-in-out}.uk-offcanvas.uk-active .uk-offcanvas-bar.uk-offcanvas-bar-show{-webkit-transform:translateX(0%);transform:translateX(0%)}.uk-offcanvas-bar-flip{left:auto;right:0;-webkit-transform:translateX(100%);transform:translateX(100%)}.uk-offcanvas .uk-panel{margin:20px 15px;color:#777}.uk-offcanvas .uk-panel-title{color:#ccc}.uk-offcanvas .uk-panel a:not([class]){color:#ccc}.uk-offcanvas .uk-panel a:not([class]):hover{color:#fff}.uk-switcher{margin:0;padding:0;list-style:none}.uk-switcher>:not(.uk-active){display:none}.uk-tooltip{display:none;position:absolute;z-index:1030;-moz-box-sizing:border-box;box-sizing:border-box;max-width:200px;padding:5px 8px;background:#333;color:rgba(255,255,255,.7);font-size:12px;line-height:18px;text-align:center}.uk-tooltip:after{content:"";display:block;position:absolute;width:0;height:0;border:5px dashed #333}.uk-tooltip-top:after,.uk-tooltip-top-left:after,.uk-tooltip-top-right:after{bottom:-5px;border-top-style:solid;border-bottom:none;border-left-color:transparent;border-right-color:transparent;border-top-color:#333}.uk-tooltip-bottom:after,.uk-tooltip-bottom-left:after,.uk-tooltip-bottom-right:after{top:-5px;border-bottom-style:solid;border-top:none;border-left-color:transparent;border-right-color:transparent;border-bottom-color:#333}.uk-tooltip-top:after,.uk-tooltip-bottom:after{left:50%;margin-left:-5px}.uk-tooltip-top-left:after,.uk-tooltip-bottom-left:after{left:10px}.uk-tooltip-top-right:after,.uk-tooltip-bottom-right:after{right:10px}.uk-tooltip-left:after{right:-5px;top:50%;margin-top:-5px;border-left-style:solid;border-right:none;border-top-color:transparent;border-bottom-color:transparent;border-left-color:#333}.uk-tooltip-right:after{left:-5px;top:50%;margin-top:-5px;border-right-style:solid;border-left:none;border-top-color:transparent;border-bottom-color:transparent;border-right-color:#333}.uk-text-small{font-size:11px;line-height:16px}.uk-text-large{font-size:18px;line-height:24px;font-weight:400}.uk-text-bold{font-weight:700}.uk-text-muted{color:#999!important}.uk-text-primary{color:#2d7091!important}.uk-text-success{color:#659f13!important}.uk-text-warning{color:#e28327!important}.uk-text-danger{color:#d85030!important}.uk-text-left{text-align:left!important}.uk-text-right{text-align:right!important}.uk-text-center{text-align:center!important}.uk-text-justify{text-align:justify!important}.uk-text-top{vertical-align:top!important}.uk-text-middle{vertical-align:middle!important}.uk-text-bottom{vertical-align:bottom!important}@media (max-width:959px){.uk-text-center-medium{text-align:center!important}}@media (max-width:767px){.uk-text-center-small{text-align:center!important}}.uk-text-nowrap{white-space:nowrap}.uk-text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.uk-text-break{word-wrap:break-word;-webkit-hyphens:auto;-ms-hyphens:auto;-moz-hyphens:auto;hyphens:auto}.uk-container{-moz-box-sizing:border-box;box-sizing:border-box;max-width:980px;padding:0 25px}@media (min-width:1220px){.uk-container{max-width:1200px;padding:0 35px}}.uk-container:before,.uk-container:after{content:" ";display:table}.uk-container:after{clear:both}.uk-container-center{margin-left:auto;margin-right:auto}.uk-clearfix:before,.uk-clearfix:after{content:" ";display:table}.uk-clearfix:after{clear:both}.uk-nbfc{overflow:hidden}.uk-nbfc-alt{display:table-cell;width:10000px}.uk-float-left{float:left}.uk-float-right{float:right}[class*=uk-float-]{max-width:100%}[class*=uk-align-]{display:block;margin-bottom:15px}.uk-align-left{margin-right:15px;float:left}.uk-align-right{margin-left:15px;float:right}@media (min-width:768px){.uk-align-medium-left{margin-right:15px;margin-bottom:15px;float:left}.uk-align-medium-right{margin-left:15px;margin-bottom:15px;float:right}}.uk-align-center{margin-left:auto;margin-right:auto}.uk-vertical-align{font-size:0}.uk-vertical-align:before{content:'';display:inline-block;height:100%;vertical-align:middle}.uk-vertical-align-middle,.uk-vertical-align-bottom{display:inline-block;max-width:100%;font-size:1rem}.uk-vertical-align-middle{vertical-align:middle}.uk-vertical-align-bottom{vertical-align:bottom}[class*=uk-height]{-moz-box-sizing:border-box;box-sizing:border-box}.uk-height-1-1{height:100%}.uk-height-viewport{height:100vh;min-height:600px}.uk-responsive-width,.uk-responsive-height{-moz-box-sizing:border-box;box-sizing:border-box}.uk-responsive-width{max-width:100%;height:auto}.uk-responsive-height{max-height:100%;width:auto}.uk-margin{margin-bottom:15px}*+.uk-margin{margin-top:15px}.uk-margin-top{margin-top:15px!important}.uk-margin-bottom{margin-bottom:15px!important}.uk-margin-left{margin-left:15px!important}.uk-margin-right{margin-right:15px!important}.uk-margin-large{margin-bottom:50px}*+.uk-margin-large{margin-top:50px}.uk-margin-large-top{margin-top:50px!important}.uk-margin-large-bottom{margin-bottom:50px!important}.uk-margin-large-left{margin-left:50px!important}.uk-margin-large-right{margin-right:50px!important}.uk-margin-small{margin-bottom:5px}*+.uk-margin-small{margin-top:5px}.uk-margin-small-top{margin-top:5px!important}.uk-margin-small-bottom{margin-bottom:5px!important}.uk-margin-small-left{margin-left:5px!important}.uk-margin-small-right{margin-right:5px!important}.uk-margin-remove{margin:0!important}.uk-margin-top-remove{margin-top:0!important}.uk-margin-bottom-remove{margin-bottom:0!important}.uk-border-circle{border-radius:50%}.uk-border-rounded{border-radius:5px}@media (min-width:768px){.uk-heading-large{font-size:52px;line-height:64px}}.uk-link-muted,.uk-link-muted a{color:#444}.uk-link-muted:hover,.uk-link-muted a:hover{color:#444}.uk-link-reset,.uk-link-reset a,.uk-link-reset:hover,.uk-link-reset a:hover{color:inherit;text-decoration:none}.uk-scrollable-text{height:300px;overflow-y:scroll;-webkit-overflow-scrolling:touch;resize:both}.uk-scrollable-box{-moz-box-sizing:border-box;box-sizing:border-box;height:170px;padding:10px;border:1px solid #ddd;overflow:auto;-webkit-overflow-scrolling:touch;resize:both}.uk-scrollable-box>:last-child{margin-bottom:0}.uk-overflow-container{overflow:auto;-webkit-overflow-scrolling:touch}.uk-overflow-container>:last-child{margin-bottom:0}.uk-position-absolute{position:absolute!important}.uk-position-relative{position:relative!important}.uk-position-cover{position:absolute;top:0;bottom:0;left:0;right:0}.uk-display-block{display:block!important}.uk-display-inline{display:inline!important}.uk-display-inline-block{display:inline-block!important}@media (min-width:960px){.uk-visible-small{display:none!important}.uk-visible-medium{display:none!important}.uk-hidden-large{display:none!important}}@media (min-width:768px) and (max-width:959px){.uk-visible-small{display:none!important}.uk-visible-large{display:none!important}.uk-hidden-medium{display:none!important}}@media (max-width:767px){.uk-visible-medium{display:none!important}.uk-visible-large{display:none!important}.uk-hidden-small{display:none!important}}.uk-hidden{display:none!important;visibility:hidden!important}.uk-invisible{visibility:hidden!important}.uk-visible-hover:hover .uk-hidden,.uk-visible-hover:hover .uk-invisible{display:block!important;visibility:visible!important}.uk-visible-hover-inline:hover .uk-hidden,.uk-visible-hover-inline:hover .uk-invisible{display:inline-block!important;visibility:visible!important}@media print{*{background:transparent!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}a,a:visited{text-decoration:underline}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100%!important}@page{margin:.5cm}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}} \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/gadget.json b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/gadget.json new file mode 100644 index 000000000..521698497 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/gadget.json @@ -0,0 +1,26 @@ +{ + "id": "geo-dashboard", + "title": "Geo Dashboard", + "type": "widget", + "thumbnail": "gadget/geo-dashboard/img/thumbnail.png", + "settings": { + "personalize": true + }, + "data": { + "url": "gadget/geo-dashboard/index.xml" + }, + "styles": { + "borders": false, + "title": false + }, + "notify": { + "select": { + "type": "address", + "description": "This notifies selected state" + }, + "cancel": { + "type": "boolean", + "description": "This notifies cancellation of state selection" + } + } +} \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/fav/wso2_fav.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/fav/wso2_fav.png new file mode 100644 index 0000000000000000000000000000000000000000..15f87be78dd9dfe0523f8e77817f7babf377f6aa GIT binary patch literal 5343 zcmZ`-WmHsOv>%Xe22mI~6lA0u>Fx#*8R?FZkWR?~k(P7_=|2c44Z_gfB|{HNBa#C{ zz43i}AKqQ-+`aBuci(&Vy1&@x!t{03$VosX004koLtWVr8{cDxC=mhnoH!~h002BV za8^>%ceb?!0Q`}O=@Zb0_H+YsZKvZ^#1e!?I0;=ax$tDgMyq531;4hDM*R_oC7Y$J ztiyw)mAaY56aYJK)#sS9&JBD zr#|%A=xJ#F5&ByCC@o@i+home=Fw(-7|Yz`Ae7tYHIeyT%>&gLp|E$yO+dC)#ntC3gEHpKm-@hgR(MAyDw_1;zj{S((70o*4~$16?kpZ8l-SK2&7QHNgdQHBu@>SnQU`xehkJ#*ufX^Y;}4E)FEal(c{*i{3PsPOz*0%yJR8MVB0r$ z8)B~hoQIJuthKG7;ftT)kHeoYbyorkTCd_9TMoD+ac~`wgNH+R{9|EFg*~2-yr6v~ zQtOm4bUFC^HKr&O(pj=L`B;kR_GO5Iw@r?2Fr-6L3JET_7J`o&wE%w!(E&W$PU zb!Pp%3tc}yj{|VopFwoY5xMubvb3?g)LY>onQP|@w+nP^X*(*tKB>N@{-~j*0b0*e zSAUAcKO{UXx+uADM^&4yC0#6~Y59PUP4gOhMNhX>Pw~H7$vSq}QM|hxJ$I;)wDJ%n z-Ri$+dvc!oLqdDKv8?r*X%s_G&jvS8MV|I?(kA6$m<6vG?2X{%(mQ?LaXD z8Ai~k`Ej=kTJZMu*Lnh(AhjfucMvVfb5%MsO#;KQAtXgV*VF2q$01FMBGei&0G7vtS__$eph{;FbDk4pOpNgq-@78&a8y!*#tFqjA} zXJ(Gs9-W@PosfSWe)^~L6~NPfMu*`cmi`1bT58JJh&`^9+QP7b_^tXYZvcRl=HI{p zcHZ@lp1ei?GXRm&>p^1(4-PA@x1V%y4TwJVNAKF4i#6~A&tjZXRHY66z ztt`xL;Iv5uVP|6GLd8*dw(4#I>>g+pOQx@UV9)kj7CL7+hWh6jT|_G=QR}pZ>gq(d z)pmLv9i7^x!}yb&F$d|}vl(t)-djWBLR^6ReBjfrfE#&bFz9ZbxA{77!)^7kpn;HA zM+!R*!09N+zn*gJTK)dx(IEC3Th3d?RnlucVOY@LR+MjJLqp2VO>k;XPJC;tR39fG z{Nln_`ugB|mWVU3qOuY*jh9CPFxHsCA6q8l=?Xw`D+bU>OXQ-dkMs}f89$h92H4H< z-WS%4N9?(GJd-E3$dpsMpI|Yay&oRd{ASgKJ3BY0QVf-mkumEGmGScOQn$2R%c5Z) zMgxR96HFUEQO(u9@8yYH9g zH5duOS<*a_)CS()3&$)--<^;F!v8}9^9Cs8Ek5m^IMOYnLwX+)a(RS?%BHX*mSF_T zat4uk8s-4`KM-?^_6^0@mFV$YJ`um9g1N2Uj9lHPP$MH6hY5IMP7WwFB}LF-CVIUy zn2~g9r}14X1HYYtCngV{)sg?=* z-r7f;))+h)T4>Xfftguc-6WZ@t4Y7VLeQEQrZB$_;l58+VH1`zSRBm;icRVq>kW7* z`;|1zZn`+eR}c#WVo%yK{ECwAeKu_T9hdC1kN->RPPwsjYad{J)#0EkW;{ha$$!=H zD+DG*3o`8!w)^{)hn+m85jom0s)Hpp8!g}Yw;x3Y&e-x014lf3 zKe1xbHGd?1OGPGaxF^&JUin1C8;MiU(E+b-Y&7(|hl3b=I01mMJi-E9_%5j{RL{{+ zeYWE7#k7Q~u-j52uOS4N%Bm&;45}85XD;2GOwi8jqF5gME2ns9^Huu!^Le=TTi;p*zD9L;b`@;4^eNT@8)&u_E);s#I)JtvoSA$P=c%%hQ!LFJBfP24FE+(wQ zMFjq32-g}ya(j@IlcRV@5*fZUxe=#&JYqusff-1*8C~A8XqD}SrN?7`x%ndR>yVW86|o4C>{_5Vv1_Lp{IQ;D!$b8aY3$^=TD(+4Ib}Hn7T3jW^@({%T{XF z%0j~3ORdTK?-oU~W>4XdO!d;#@Kz$f>^WW&vY^SF^6snbZIRRoG6@zes-qd0maJsCwMfga|$uF=@1-?Z1kyLzdAdz zh-G-aMJ?H1-PkC$1z&Ef@A{@7Kvyt!$Bd=g63)wO$%(bY?YIB!>jBoaG9&Sep6s3P zFW7Hqyyv9$FESVwL(srh6Im;l$$Tj?fr-*R=~>0gOd?~pO7g?r*Mbv0t&|Xfa!6n%vb)L-3Ahv>we% zIaH#Z3wfAM#c}B9`91j6TZM`#@36YN%uxH3iSS=;6*lp#6oh&6YYzZLrK_appN(WD zc-e?C%iGO!PdPcc55)ol1Cui|V~2-_!$U}7%@+~!~AICmN>>M@qQ5rqW_ zJDKh%poe@WVCGcKer}t&Ievq34OL3MaCBVFU9TmMFn|y!b(NQbF6Yqet(a(jw<}w5 zBULP*1#`#D>TK}0Ci0V97ru76G@yRg*`_D`I+P*l_Kr;Z-B)F)NZHfAqVx>P#*DRI z`l-Rwc;L~SN?;ntmewv48yThC&`)sy!t-q`)J|PPqi|YEO3H3wv;K~`cVoS@r3NW* zvU?4`D86S9@n#OcSXIOE|CBSHM*g-T{}i$ydsKAdXm4*lS83ASm+&}xrOl5tIyzd> z*||a=0^#-X^CRu+>zlo`x3{<00Bap9kA>k?M$*pS9Mv;MiM0*R&=W)1h90LFATDVz zK`PNazzoICz_x-hb3FpIyB$)vIgAuF&2k+0*odCB%Iw~hY9g2yc~M|shJ1zyBrf2NXtQls4pUN6V&JTnt7p_XFaNS&3b8PeMlL(G z^V(YED0-h1v#=(9;Lx7wx8Q5OWJcC$L!3+R z4u5A_mUgp*oKe$$(!o2Q^-*xE@PF2U4$|R6fKlW=uun%Khg0B#@@;bXXeqRR4&#;8IZ|A3H#8S{*)2;}uT48LBejnpX%@#@L3Obay zlaxV8ANSJ4t3@6zHC^9{Wov7P_9?H!RQY{`g8$-1_}xvDK0CRRN)`Fc;gH00p^btW z>$p(Rjt>q}HF~UQ_9f!e&x;^Ei__r1Q3qk)Lu5&LUPp(lp^2yqY6~`++>u1()bS}W zy9@CmjM!hf2yjUeH8PetFit8N{6-U(4H&@%;@B`8_ZCS310$BqmFlxO(enHHJ-R~r zW9BD5S8^m-WsQxW*d73GP_yqw0|#PW%4LXg!aR>-NU?PfRv)Ttiw0KE?WHuOrUHj2 zzBM;zU6T{A&FXE(O*|%e!NL9bZkykPfWrnXYhb4gl3Y{A_3=N}@Nb`;EXi}_LL=M>*TEzI7Os=f( zK790u$0HWoo`OxQ3RFuU5K`cMHdTa!+Uc;HgD9b3E$d!$r9s4bvOCbGxwWcy(U5#$ zJIuN&v5Vi!wLjQg_?cYL+-xRB z+zHO4(}jKbA$5vL^$Zw2q}K^^S> zmT!CfN`}8*EvkkHYd@^A9gip+Mza*62SmFi03YO6 z^Rct`v6r&-vd0F1kbs~tuYfqOpoFoYfRv!Hl&~PLfT)y!K%`O={{KmEhuS$i1pNOA UC(M*B*aU!vimvikMXUG!1FvvMlK=n! literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/favicon-120.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/favicon-120.png new file mode 100644 index 0000000000000000000000000000000000000000..4be5ee49a023d152c730cef4f705be8cf839c5d3 GIT binary patch literal 8604 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 literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/favicon.ico b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..4b9e7d6d6056bc697176937bf2345b823ab6c209 GIT binary patch literal 1150 zcmbVMYfMyE5WZS!EirLJ=(6`Yvv=7dyDTWIXaNOLAzD5Pmg1H*@ElIrGi^ z&di)ENz=q*vq|F3(l;rRWS1mqju2rImI=F1QkmHMzk{;oFJ!}clgaf18GN1$=LNB@ z{;%=4bk}rJ1k?AQ~K<<2fGTyBDKE?FcWRcUelU&|TGChZctTYSPr&)ex z;kr~q)z0y!`5lvS*4({pkDu(eTcjD_oMm8t4LE-d*yRJs8AAfs;;C#*wS09&=`r1T z&Do!=`@mXfmuy;O*wY@frxd*5D!BeBxM>i)?-giUA87djkgAO_ySwwNnm+cG)GE5H zTz9$i3i7I2T!!p;$ayQlEyLjU5%B&fxGfB7i-5$O+GC*2H^*ZL9W%B=)LHHAj-N!*#6T9wEZH6#Y1)sc^0hl8H(DQ=`F4%O?x1h)FXZG zzewK~LRv!*YD;iDhP^R}leb1O_|F)!I!2&uy#sRPT09=<4tu9}@t3od3>EENm+<>b z;Lej6o(?8Zb3P2EIf#s=ApUqA$Bl9N0%U04NYrtgS#25XS2qhRYrl$}nX z_(TZxS0ecBNgTF4L2T)X;^+Pt<{S*->b*F6e;qE+x?QLEP??-9s?_m+zh zyc~+7?^$e|hm}(jbusF$K;#YH;@Wvhyr=x@N|NnSUi~fjFkrNX;q3_F@8JXj*CTK= zi+Wgf3A}~XA6okCzD3(F%}CGdisRuyD_dl3u+vM))vDTJqZ+bC!mWn@$LbT z=tV8v_I&=@KuHpt)P;4&XOd1`hQmI}b3X^IISaM!8uax)g3Fsh&KwwW#=yMg+m<9T zQ}x2HzMGL-v2%r?$d_4Bhs8YwYc$5HdSBRD3u=$Lr(&!%ZcoSymn7YuDM=lcaq@q{ Qx*=2LBjGn&_>&~P13=?{CjbBd literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/layers-2x.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/layers-2x.png new file mode 100644 index 0000000000000000000000000000000000000000..a2cf7f9efef65d2e021f382f47ef50d51d51a0df GIT binary patch literal 2898 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 literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/marker-shadow.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/marker-shadow.png new file mode 100644 index 0000000000000000000000000000000000000000..d1e773c715a9b508ebea055c4bb4b0a2ad7f6e52 GIT binary patch literal 797 zcmV+&1LFLNP)oNwbRQ6Eq$4M3RDU@$ z<4cV9zWLV=bA&uX9wCpA{{f^4$D#k>GcX53-UQqf>_LzMU@frMz|MwbfQGbY0?ccG zBj_wh0?6Tv;HWR0`x;m^Bm<;sCm_85SGspFBn6|A!tDh$nR`wGorGkyL7j?F3#OJq zIswLIz;iF7f|LMnF(pXPAY*GYpsw%&e_WjlnV`C$6@#Q7GZu1$Q8>&p8=(iJj8o|T~0u%hM*Yg_d(Av{WS$h&pM%nlEAonVL0;DkN|xc zn)9F+aMDk#VtAMb0c=kIb1pU-$e4$3pwo&qVh(Umlw3_IU_dFcFe(In6*x}D4LHLhFZ4N=V2ZR+>XHU5D&uY$npJ7Eu?{iAK>UxC?4uyg4+iD z!nst**H%2zhOBxc7C7Tv{f^`%hqT1KpU@Vf6+C2|bGaR(1~TU5D-1;&HXT~PMc2Lu z{Q%^i6vvox&EMFT7I_)R$xq1779I8kE@?|D*cLWnP0a@a)xJA`o*^$^V(yN)b`kV7 z=o@jbFF4j{KeuQhFk5vgKwAHB#tuBy?F-7iET@a634r!LZd!7uj`=KyrE7>n z0}y|EqQaKDTU;k$Da-}{+Ffm2Zq8G6GL+;cH?16R8S(R1d6Dpo^z5P%J!@7oM4NnW z4+}5d)8aY=Q~tI9?7H`kd7Ddhf2k;$hwEzreqj4R@Ze9j$S^E}|9gPw=BlabSfyd} zsseRQ@{Eh#_?pVoo-RoyD*)<|4f%})TIK~@SbXuGhuS>bVft^+I%5s|^IDM7xFSOL z@*mxw!+zo6hv#nEaF=!y%0~q8df{=W8K$9Z0MO<~4EH};sObeItUo4>7dJcW=jSli zf%T>@bu6uzDjye#?FVb*`4@X9g6AGH?JLb?SK|JlC;nX38P9hZ4|2K~g?Lge*0c4f z92aNo(XU{*)dz=9SDp~2WZ{#=+T-Z{H~ItbiIUmp>zH~NG&3nt0-)8aXt|VTV#8pt zX=6!_Hdjs8&-4PMrLldjvAV+^9r8uRQQXtBbSVru*#Ll4C&q+%1ri<&^5fMDG^Hd( z%h%FXFoZ+AI3|HI;91!KV7R#Gl@37@#{1my@l*i*;RHK|5b%W_*I_~QDd|xHAXqu! zQbLFl_C%GTV*eG+;fadZl>oeXA!=Rs=eT{MAUaWq6h1`d<~eI zGx0zwCPXuqT&~S;D$+6Lmg%2)ed(P2B!kxLj2)@z@NR>tEm@E7;vPVXM9JxaVk8vqhSh-LURMTu;%kP%VbS^YQQNjHh8aBxq=b%>V!Z07*qoM6N<$f?Z8srT_o{ literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/VEHICLE.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/VEHICLE.png new file mode 100644 index 0000000000000000000000000000000000000000..aa240851c26c3577f0aa2519227f51a9a2100233 GIT binary patch literal 3009 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 DJ>jT5 literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/arrow_alerted.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/arrow_alerted.png new file mode 100644 index 0000000000000000000000000000000000000000..064b8a610ddb3b1b07adb58dfc488635d6b37162 GIT binary patch literal 3499 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 I^l!!d4{j2bnE(I) literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/arrow_normal.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/arrow_normal.png new file mode 100644 index 0000000000000000000000000000000000000000..aa240851c26c3577f0aa2519227f51a9a2100233 GIT binary patch literal 3009 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 DJ>jT5 literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/arrow_offline.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/arrow_offline.png new file mode 100644 index 0000000000000000000000000000000000000000..3266b65261403eb710814dea89d0414cba7d4cd3 GIT binary patch literal 2970 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 QegFUf07*qoM6N<$g0eY!+yDRo literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/arrow_warning.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/arrow_warning.png new file mode 100644 index 0000000000000000000000000000000000000000..660253dfe9e94c2b19a80b1d83375a0e7b662720 GIT binary patch literal 3815 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 literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/default_icons/greenMarker.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/default_icons/greenMarker.png new file mode 100644 index 0000000000000000000000000000000000000000..d73343dfe53b8f01f5a249ea0301f927d7a49c7c GIT binary patch literal 2298 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 literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/default_icons/marker-shadow.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/default_icons/marker-shadow.png new file mode 100644 index 0000000000000000000000000000000000000000..d1e773c715a9b508ebea055c4bb4b0a2ad7f6e52 GIT binary patch literal 797 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 i(Oz@Z0f2-7z;ux~O9+4z06=<WDR*FRcSTFz- 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 Qn*aa+07*qoM6N<$f>d~0Hvj+t literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/info.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/info.png new file mode 100644 index 0000000000000000000000000000000000000000..e2e9f757f515ded172e6f72c3ce55bbe15579649 GIT binary patch literal 1747 zcmV;^1}yoBP)P001cn1^@s6z>|W`000J>NklgF+#9zZY7a#;@J(5X0e&McXK2n7+jhR}<0i-1U5t`>D@ zJSJ*^swjdwq0keUf9!BETXZhVyjqS4&z|?2HdJnOU-HYF_xSyu=XsCkdtVv=(53>u zME@3F*5J;OHwJNJdWK(ivQ??rr&t7M)1yRas=d_yYH>g+p#{( zm+NoyW%|8bNfUkAMrabri(FY#Dqr5%zhZA&e^iALHXiJOFYA7Qt##L_a?_z6SW{&J zVeyp#G&snW>SO{*%d9CGVM}xic~V`MU$)*JU1Nbw2YX?ywi}|VZ4g;$g)p^+DoLHR zZ^Zr$S_=f^oU`+!4K^?NsU;H{;bhhex#H7(!s52U&FJ}OHQf-VvVd?Btj2MhF|zQI z%l~jBr~6T7^_WIHC1>8j&bv`c18g|Z3*l-jgeoml1{oh++Y75JI)RgU>LEY<%)C)X zI2rZ2kb>s^4cZuYeq3!A}DS`X~>Nd;+A$4e;ZwyD<1@2!8$ZKJ3w%!6)+sCALy+bKwyk zqKCS6qEGWmJ)97b-QXY|`<0lS5THkEtGgjE>ojOvuftfM&Ugd-rQg9C+|FdGM)HXs z(IxsA$&r(xg_j^4=hC;>s;1UF*Wp1I-2~sEF zZYgb?&`4bM1qjM*hR`yr3qJ(;L>Kj2XpBUy+)t((6z;bIr@-ihFNVAl4<#?{TWIaQ zIi>;YjXS_iIfNb?!N1t-!Y6vZvW5ZXE{%l7imzV9NvV4nf#G`Pcex;#@}?EINwsk7 z>UC=SlJC*b5a>-mgHP%q2+qF;cbNx ztCV@{s&fPsSt#;i@#G-m$as&$gLaG}ebOrtS5*22&glbhMH_fz8(~qVVN!VIVCKzg z1$U9^93(E%Ur9v_R*h#!t)Ce+#)+m(q^zCq%g&L-!E zC&et9WrT(49pl0S`?=DK7=`+;`CB!wP3ta97b)XdJ8K=@`DXOk0Q0};7zNT!`k4t@ z+)=9S)4p(jEGm5!qq)PDTmXiw3qDM19|fiylc@LtiQ=}Kfb#w&ckv^7tBj;cfwtY$q?IdliYlg zqh@4;IyW)OFPQPw4z|JsAEb7`+@yA@Q8SXQT#;upV`QNJ59Bg5m(jci3`0T4X-&^GU6)x7$Vi0XMWB(2hrdK^!hq0 zt!bDg$Hh)-9L62h`&{0PBf%7vM>69o`k4~kx^Wc)?lG!}=WgV2x-rq?HN#jMr^B0; p5zMeb2q5MEX5{g&Aa%N&e*pr!t%ZZ}>w*9P002ovPDHLkV1gpUS8xCT literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/moving/device-alerted.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/moving/device-alerted.png new file mode 100644 index 0000000000000000000000000000000000000000..064b8a610ddb3b1b07adb58dfc488635d6b37162 GIT binary patch literal 3499 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 I^l!!d4{j2bnE(I) literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/moving/device-normal.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/moving/device-normal.png new file mode 100644 index 0000000000000000000000000000000000000000..aa240851c26c3577f0aa2519227f51a9a2100233 GIT binary patch literal 3009 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 DJ>jT5 literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/moving/device-offline.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/moving/device-offline.png new file mode 100644 index 0000000000000000000000000000000000000000..3266b65261403eb710814dea89d0414cba7d4cd3 GIT binary patch literal 2970 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 QegFUf07*qoM6N<$g0eY!+yDRo literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/moving/device-warning.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/moving/device-warning.png new file mode 100644 index 0000000000000000000000000000000000000000..660253dfe9e94c2b19a80b1d83375a0e7b662720 GIT binary patch literal 3815 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 xfh(t^f`t; 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 literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/non_moving/device-offline.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/non_moving/device-offline.png new file mode 100644 index 0000000000000000000000000000000000000000..1eb2595e529bd8317789bb5a5411c34854339f2f GIT binary patch literal 3079 zcmY*bc{~){8XglG`z|IiW8cRzlri?57{*T7jon~ImSoHN*+!a@E&DWxJ7j5;BqfBB zh*UmpQpOfO+jK{L_q+F=-|w9Foaemn^PKnmao&?_Z)d^94rT`c09;mrtZnCE90<{%?mBLIL>#Bt!u!dOH6Ez!0BK%y)FkeUGi>@lF!B}SYY0I=)>03b>M zfD=&_R0kvgz~mm{%J&W+iMyUD*VEqDB<0GON5dZ)(9>JJK1mb-m@e$#XI7Gaj zIq@Nw|0+e|{!WXLAna%drmm_6`-htmiabIQsF;vIhVl`= zzB=-k=l@}U>mXrA;{S7)-E&?28nFK5CBZhpBeN<9(k=O-;KJ|*%&N*$WWJC*k&FZV@o ze!7FbWzzSw>kfB<+O|={&+f$!6USdLN}%Q|hqdEA8v@t|FOSMQhsYTm8A(My2*r zn^usIOt9G1g3_qt(R|V3(R+h~gHv5yT~^`U0&iL@(QE<-*2=}J*o{ix{kTQwqSxZ* z!~GqsoR)UZ!zaw33J$g~$Op_-nv|E}*#TDQAv_w8;0?h_nM!5*|pG};}!a=i@5 z_`TV*ou3k);@ThgbyfC1r7S|DQN%YT+uPd_cu6XMx9kVt5~nzfXgyle$7Ma`sH5v$ zeY(ej?Qk_*K#ZB^q0I0mOaVo#TA7ho<>7(%NIjp3-Dc%}{LZAXa*9Ty-GFx+RDb7; z^TcC?fDc}X!NkSI^*uV<{v2~F_ZF8v$5vw!+>nt~hsj!y>B$@wS9J}qpPYX;uH}E+ zkCY*B`>rx`BPcT6`&`bTu_6{tGpey2EbI{sqa-qS+X@$QmA_llau%#1n-hO&R8g!(Vo`FpgJ>SIwWl-fm;x@(E(lbtmP>&TEj=ZrDaQgIIa%#<3eog zp$-BuC(%{=d}eBQ^UDq%kN;k`XenpxW(L0r12(L$uV)_T5l1eRk0L~kjMh9g9SZ9q9*{Ap}iH@q~|)F36rPR0eK4cP^u zZN(blGg;CR!q`HpR{f;W6>=C{B&+{t0z*U_1MLbvKCEV}5=(MFaHb>b2evyfb9EjZ zz*h%4_3bHl2mIkc?i8XO-wvV@U+|NEpg_C1lX$b=ll1hNS{F&bB?Fvdo@2sZG|u~? zx8SrD7ca9S(gjIujLY@&(+6r7UD&)x*_9=;KxSG69k26@^7miCFG% z2LWZ~3{*&Ro3m+5W`Cz~sJg2xS=|g8+qg(jV#ctO$0`PpuEChWQjW~2@qGEZ(80@w zBtjETd+->>CG;yVS|;=<50FI$ZV-UD1|siK$I_%uoQzl|-(8?ggP_jW`X>nz%(7FC zn>$#NGUq5IR;q&%K@{L|3|=1{!G?Dlqo3NK3Pp5NT*v{Faxx=AJ+s{eg(_{D2^5 zW4RL5!a!Huh)o;Iwu1XoVRK~tSg8GO*|}EohUolGtaDAKMkW9`5)(eou~DSaP^st$ z0}6>NRatXk`L`l$@7rVQD%RwX^e^P;&>an>JXRdv8O-_;{DI$yHg3gX%*dy=ApPw@ z)lmM##GI~{77vrYf6|j_Dkh14r@7suc>K9voxdGohpr|5_?h6>(0z;pH#W9DjET^#KUZXF!B1=>IeYWmp)JAcU+b@&&QPxclIhp7G zYWgZaiwVviHkaHCu{}OKy)B0711SeqJQl3-Nn(oHqsw@ z@!wF=)OVg2o}TKrf$ccTJ$3wK^gtQmw9#x@)R2{`+$q`va)OYjJu2Hsja}>;CJS5D zosJDrKAT}S)uQwp5$9K4vq~TS0FBWCeFs?+o6fU+uxbnPEcZQ0z&pAJd#&*Z85eEo zC2V|T6VBH)xt$h~C_h}Lzz#$`|DFu)GFFP|OalH@ca`fGQ|ag~~Om=%cspC9`)n ze3#Y2n(liAvJ`6!8U z#G^ceao?hAEU1TC;Y{60T*Zn)wf))hlFd@hLsY0(^3C`q>xY_2d^;7fTgh*mYAuv) z*X2wrL#MeQKQB$5zFSg73!={soGK`A;v3TYPOOM{->xH55kJNPOo@h3^Dn+wT{M<* zL7S0}3XC#I`MuS6j?J*x%;w3_%wGitOe&z1getgJ>(I+q8ln};JE(ghk=Xvm*Sa^j z;;tf7RqNI?3h$R@Op0sR&Zzxd=uM6Dq0 zaJ?1To4IyFgfnDqEPQCSU1jGEdH7CX5QMl|^6rtYgr&)KC#I~|&Fahkejl@^LQ;zf zoC&+pCo*Vux9GSgTcVRE;$y4-zRqI6MQ`qx9j|}D16omUx*7?gq6&H+Prptk#P@Z= zc!mu`*0lp#Wo_%F1ewvAR=1aA^X4^;Bc&>HoWHBh;wC0VlSuaREfl#a5YT}9!B(zw zP7S%EKsT_ycPBCBNq14rdsgJ;Zp+dQ1$2b{N9`OF672Ir&P=Ee6 zE2b36oE`LR?Y##FVjBGMFT zAxH-WDN0d9Is%ao@4fGP@6B2>bIzV~_C9C+%vuwrcUS!aJr_Ly0Jxy3p<-~hWahet+>z6=0BW$I*Tf-}+4M%lW%!EEf@AK1hE-8{}R000?()S2mKkF(+NcXP#h zqx@wde@CFs>_0FZ!t-|s&P5htqNB&7?CxdHgMf*{Zb9Ved3bnayzCrM1}bX*rk{DT z5DX6Ifr7*R{QO{kcVO;bj_}(^Bocm03@#=HJ&S;P2VikF{!pysn6Zmb|E%<-A&r)UnpeS80 zC;KzyKm2mHW&V!*f7rh|GVnj*|EHLLI{h0xYgLY32L9h`lcU$}5;O$>n3gqF6b=2U zHY|fY497X&to#t+4O377Y50^2u2B7h@#izn#Rz8cbICy7o^VONZQ%6e#=$XZZU|eO{vGQpc_6Sd_;Ip% zCF?kIe)Hi<@QUX!OWKg7PQZ}f!Ue1JVy0Bf)vFRNDYho1WytHcYa$=ec-m1U^4q^-EQ7Ry^}}TsQ3=g5ZPSzq<1ih4tD|TgZQfLk)uU|GHB;2}s*jLX*$b!MpVo$d zWLY47S-i8;fGo-hj^(s%cIeOkPYIKc=mv#2oykH*v(uU%zxm-FKaD>G?p9t5O2qFHBF~9!9oW zQ}`Zl8R-je_L@xI^>G-sPu3Ijg+cqEzp~L%YT*QoBcwYDn2F<`SeXniw@601py-Ci zd?tWyFqc4VQu*p#t*60)>px&+v$Og)f*#QH9KDy4>@xKX>27{Ey)<{#ub@~xC`f)O z{9()C=tAKS5Z$#jITLzxb7D-b@nspxr%sRUPLgd3jUr3%$C~NAa&3Y1o93zBk>G15 zzxfV&mTbgqzWcv#;Rf1K8y65p2i}$_OYS1xZQtJ`HA{C#xV4N7KgH+W{9rb>olV`F zP;PR6>2r3;0*o#iTwd#Hp;~3-Ujk3{nd0~D!bd(qML?Gh=VXZ*4HzaG> z$WH46knS^;1!faWlILU(GupNa+;U(vkOWt^@4KehFJV4k zD-Gj?U4)WTZ+=Z9pEZQ&wHIM{n{IC{=6h0!uT>4ipk)I z*e{_(B@0taKXX$U9p41}yfJjEU$xNN92c5JH0bxDD9(cf*s`D8yc48`9AVC&Jih=* z_!iaQxZUU(CFhJsr;*|P=JWZ1Uzy_pMr`&&X(mN0?_cX)PAF;i%E)4h6}28PRdNAJOn&+6Wr;vd%)aGoDG~26m6>+?!`u zqyCD}6r^sqKwj2a^@|=_jQElFLtnXfHUGeXRz)TRTJ4-XAV(c5z2HtOxofxQi^kkD z?UuxlcQALU@NstDq2Bv8bw92IgaQ_bPR(X+Km9&|X53z&Lww#_dy6x!ZVQz+O7qlt z5i`va8Pyebvf!+<_>9;+(krf+R|Q)v0&Kc{kC78Q{qS_4#`UXd(x+eiiE-t*1(}9* z{NL!I95Ug2R+swa%Yi?c!H%~KgP;n3J|iIx1zzVIn6>9EIp8Ov`=FVI(Q zidt|esjuftdh*mymdTMw{-#Sa%W4=&Kd?}=-jeT)Uj7XJtHAt^$#pR5&%I)?v02L$m9c09rol=6425A_>VLO2H8UDUMa` zuL3s6MCwzg1+R6|EewZ)QS_S&3Nj5`D}DOIB@7HVLfZ|pO7B|G38#`-NDGqH?*(ST zFRY`$G*n-QQbMJ*g{~=oDL#_qKW{N{(3KG>o+;|e`#Qk$&O^PVp0Y;sZv+msQeQfG z-+5=xcxi0>noWtK74iy%c@cWqB1bwd1DQb$vv5lR^NT&}OQJdKv7@lAREzNEmYvk^ zHFdtI(y!o{Hwg8(KyS|NMWU8P%i#9aH8_N%^IDPfhO64$MCl?QSI&Q zaZthuQlX^cNtt~Acb$@D-O#}lWu#kH3ze{(z>s11{*Cn!+w)3B2U_yH$>N4AGrF&q z?Go_YNy51T5Tm4-bc?UgK*=;RLk%6@Gt0t6UN6H##SAHZvybFxxP9Wz4|@bYPp>XJ zRUliRy@lbga+(g!*DvK#LXDW6FBk8!{bp-r&!vRx>4>iv(?B;hmHM;{5C%bF40BUL zV*BgRyf5?DN`df=v4ujCYpB9gNy~X&5jZ;)qt-}3Bir6e>IL9;J_x)o*%oupN3aa) z;YGTlO{mPEFekKGcFcSpykED8VK2_JrJ#@boq5oMZBb7`LqV0TCQVUW_ecLiP>F$k zr#mk{n0su*oC>PkHhvxPBG6Y0&41B%Iz5;(eqLd@8pSn0Ex79ZDotq|rj1`tx<_mr ziJfdyxi>|RB0s#(KnJpObwa1}+Ov6fzO)%j`+x_1`bIe{{y<2YFtojsgfe5Ja$;1J zAYnaONnW0c_quGve#vB6Di3vlG%7Z#J6t<9^1mC$f8=xO=A!TWHhX2cKC`5x%t670 z0D9O#CyIY(28JkwLnIzWY{n{&j?=%X z(Hl(R9w9`rKh(5ZiWrvE$qnXs6f(-uow>w`#z#wq0~TE0TM;AKOshC``O9)o@Shlb ziR}>gBSLVP(Z_M>8b(z$Um;1#>K5y!fpL&!-lj&ho=TusUlbF}6WqVHOa@h*cMy#B zSzORlRa|Lc7HklHV5f`Mv+L1hi7D4)TkCf#ha)!hdbO z{PS-Ar?eoURA5j=BQBotbW5J{Yt(jaXKTCUJl33%Vm^YbZn=ArO8hE7S2;hhNIy|D z)!$T0+Yn*Y@T?X0QRL2ck-Um05UNmws5eBQ_|)&)VNQA!GAF9T!kM4NXss|LHnGX- zq6Xq(4;uoKz5DUWeQz8(gGMDzpAW{;Jw$)>Epkn5iaaqp@>7;b8dmY_~vIV)YD6Dni0wRJ~~#!5lM zA+?1@=<+Pty^nUNJ&0%kzDUlnEKjWY)nwBAyY4&er}eD#RAuqTmbl>W z{thz*rD(6ckC5MfEYmS}P0=UVHbc9n$vYoi9-{;tqbn=J>PFAIaqbdvf)J>hzD%w& z_T%1I>2EjUpQLz;*>H12FyDcsg$#PQb zVO;BhS45)(b$mubyTZul2l3B(PqJw2ZvXDkUo*Mk`F>DtDIDJe&W6sM8k83AI^6L| z%W1jEb#QE($?k*36keqXhgB;dQ+(>+k0{$;2gy?`E{(u1lGv11n?=hAzt@{ARp@R= zPWw7v+y+yRSYkoqE!x7J2A6gtWHOR-Tx-W(${|^A=dJtjqn){Lbo13&RU-?6nVC@= zT704%*N%6Gz7VV}g^P)Z(bNUoY-TPkLP>i~;84YhNW1dnf^Hgu{T*R^z$8z*8y<4Y zSIJc5SLpk+H2A(~)~|`dSVto7)%=SgnnDb7PrQ?=vVnV*7ocHig_H#HRYhmSJI@A)=U4qmpduv?raq5a}wcUPF^ z`M}E#bu%<&3VE7#IN>jQ=P2e)Ss@#9$?ingxEIatRidgTpw2sW*_^Lkr)nF-aX6M= ziOo}exna~jdFAnO!nG-*iL7?{s}MDCGz^*`bcGsnF6U)5g>HsP?zZP~5A4)Y?fmzc z9b89(ezPQLTFM9e`=b%TOAwaBp-QQ|y7vGBC6ejdoSxX~IJ{W)@z?Fcf9>27wNSav zz0{>>{j8B#wb4O5Sl$T0ekm7$&dOhwJeOe-vvEChA2Zj+GHImUm-^79W~H`Vvn{vY z9&+I@xwd^|wmxLOSvDQ~U3Avvw$NfU0d#AzU6f67BE;uY3g{QVw|Z*~@%qM9gim-- zkBQc$r$zXCM{kT+<8cq3v^;o%*DuHW#^Zh+g66k$(_gDQr@fAxcXO8A?+j`EQMW;) bI;Fc`TMM8aHvjVh1JG2xt5T(O|M7nS5X5V{ literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/non_moving/stationary-alerted.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/non_moving/stationary-alerted.png new file mode 100644 index 0000000000000000000000000000000000000000..5af0c6a427e37df7428a5b2e5e04bd2be6dcc2eb GIT binary patch literal 4894 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 Qn*aa+07*qoM6N<$f>d~0Hvj+t literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/non_moving/stationary-normal.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/non_moving/stationary-normal.png new file mode 100644 index 0000000000000000000000000000000000000000..e2e9f757f515ded172e6f72c3ce55bbe15579649 GIT binary patch literal 1747 zcmV;^1}yoBP)P001cn1^@s6z>|W`000J>NklgF+#9zZY7a#;@J(5X0e&McXK2n7+jhR}<0i-1U5t`>D@ zJSJ*^swjdwq0keUf9!BETXZhVyjqS4&z|?2HdJnOU-HYF_xSyu=XsCkdtVv=(53>u zME@3F*5J;OHwJNJdWK(ivQ??rr&t7M)1yRas=d_yYH>g+p#{( zm+NoyW%|8bNfUkAMrabri(FY#Dqr5%zhZA&e^iALHXiJOFYA7Qt##L_a?_z6SW{&J zVeyp#G&snW>SO{*%d9CGVM}xic~V`MU$)*JU1Nbw2YX?ywi}|VZ4g;$g)p^+DoLHR zZ^Zr$S_=f^oU`+!4K^?NsU;H{;bhhex#H7(!s52U&FJ}OHQf-VvVd?Btj2MhF|zQI z%l~jBr~6T7^_WIHC1>8j&bv`c18g|Z3*l-jgeoml1{oh++Y75JI)RgU>LEY<%)C)X zI2rZ2kb>s^4cZuYeq3!A}DS`X~>Nd;+A$4e;ZwyD<1@2!8$ZKJ3w%!6)+sCALy+bKwyk zqKCS6qEGWmJ)97b-QXY|`<0lS5THkEtGgjE>ojOvuftfM&Ugd-rQg9C+|FdGM)HXs z(IxsA$&r(xg_j^4=hC;>s;1UF*Wp1I-2~sEF zZYgb?&`4bM1qjM*hR`yr3qJ(;L>Kj2XpBUy+)t((6z;bIr@-ihFNVAl4<#?{TWIaQ zIi>;YjXS_iIfNb?!N1t-!Y6vZvW5ZXE{%l7imzV9NvV4nf#G`Pcex;#@}?EINwsk7 z>UC=SlJC*b5a>-mgHP%q2+qF;cbNx ztCV@{s&fPsSt#;i@#G-m$as&$gLaG}ebOrtS5*22&glbhMH_fz8(~qVVN!VIVCKzg z1$U9^93(E%Ur9v_R*h#!t)Ce+#)+m(q^zCq%g&L-!E zC&et9WrT(49pl0S`?=DK7=`+;`CB!wP3ta97b)XdJ8K=@`DXOk0Q0};7zNT!`k4t@ z+)=9S)4p(jEGm5!qq)PDTmXiw3qDM19|fiylc@LtiQ=}Kfb#w&ckv^7tBj;cfwtY$q?IdliYlg zqh@4;IyW)OFPQPw4z|JsAEb7`+@yA@Q8SXQT#;upV`QNJ59Bg5m(jci3`0T4X-&^GU6)x7$Vi0XMWB(2hrdK^!hq0 zt!bDg$Hh)-9L62h`&{0PBf%7vM>69o`k4~kx^Wc)?lG!}=WgV2x-rq?HN#jMr^B0; p5zMeb2q5MEX5{g&Aa%N&e*pr!t%ZZ}>w*9P002ovPDHLkV1gpUS8xCT literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/non_moving/stationary-normal2.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/non_moving/stationary-normal2.png new file mode 100644 index 0000000000000000000000000000000000000000..d73343dfe53b8f01f5a249ea0301f927d7a49c7c GIT binary patch literal 2298 zcmVV1a~(Mnf8c7_?Dd4OoI8v@)d?+S1xi+j-C2bM{`#KhC*#E<<^A zT5u<8_BrRy+56kyTHo4hA7K*hcW<1}<=xK!aNn*oXLnYXoYCT^FY}b<7}g35N2~P= zhyBm>)?V6m?c6tZ13b9vT)r~r`D30>m}I+u=c02utBdcQ*Y@SvCzZ}<9o0jO#$L<< zA_=X&i;8RKaBbUA&)`EnM{2KKdCk1ndnPm2F@xOr`rH{^)pOR*YFTzgi|^uK`XWcN z?WjeZOTY{>C0Y$HWjafXnNj%!gV~$xAAR=j1EbI1@T~<0hCURK59~UdOotZEs4jh} zd&=iaJww08L~&9kab-kGh`1aik*FDJDN$3@QalwFOudqxfrm$qq}%70WZGL-&3)+u z&FwxY$TajVIJNbH=T0ikDQz40Ek=fu65f?@QXz3wO0Jc}x8kLWcNLtJagyLj2sX^W z`tD*z^^>hLtLJSU%lf)bD3kZ}%x>?fEZEy#p5J<~_5#jT@lwJ2Dkax~cU8Qr;-m~1 zQENmSBgRpJjuCW>s5R7TsHU9Kaz6Wpw;t>r-En%Wn_jzi(YDDmx$(8d0JJ5it(%gZ z(z<_i3*Zn05y9aQ9O4qZlyeqc74J%jco5(CUqK2^guNqA(pgzJqrE(P<+Y2parY|= zj*rRTY@gHJS)KQvnjOO7ajuMa6}+pGxGLVYP)b@!{1n1iLY8Kb)F@RmvTTGbjufnp z5iLbE&0{ty3GM73dbMrE(%#|s!jQZl$b^>PfPg6`4loSO?@`1n``#E}0o4B*s3}fLwD@Top!e&OX7a9A&gf_>&DtJipv!xoi@=p| zQo*}2l}eRoAL-}L8@Ev^dwk*%5zLG%3uug7zu`=lEN>xA#|otfR3kwH8U?hxXDB^z z=5x{Nugcy{d<)(^{!kE0oJ+%B2!5)hg4b zP35HacGiD?7du`Y%Gqytz%YfNDM8ceBBhfjC7kar*@3Ao%ydl53{^!j%pz)mG|kv_ z$9|?vspJDWhjR|^J72B>RdrreMa{5c zCoxl$!01p)-@g30^L`v)lH`EB$2*5l5(W>J7#j&-S^zXm^LJxZOm+68g`=hk3NbRC zKs-2uk-cFHxuK3h$%R2!k zVkBzds+(s~ZK)u2bvFqpNfNwIIC*9p7k>|841}nJ9N4()qaLY;)uhyYUmiIn6X^^))J(E=z{Fil4b^Subt?<4{$s&l<#i58md+Wz3C#}@dLHb7b zU?#;rZI~)ii$q=sD5^et^F@cw|MB0Zvu1hkfunZ8dU8(=iJttFX}zM%KWAa53*)?@2(j2_RtiMA&X=okcCJV zA|VE{5b{0-LI{NVZ&{cSlS+v3{#!qLc&n$Z={On?*btTv5~pAI_0>_2W|?aw1pMW3hfbK*k4qM_ihr2BwOct-9@! z;h!GMoXN3*RE<}wu?&%JSKptZ(bwH=me=sq)t$4sIjH{ZBl&{ygH4sIMdUt2a^;B> zE*}p`D=5{1*1WJ_-mkut?ra3@hy9u5`bUy2f-K9cop%mpX5%h5BV_iCJ1&p+7T&Wa zJE{zh%iWDKF6w2#4xrL-`GgtjKs8#=!z=9(pU@UV{T%T&vv(oSj_C`=#J2uY-D9SY zHI5cV(U2DodGSye&XL`=rgs-U21*4n^}cTYUA!vC#Uy~3Tq92U8Ubk&rxMZ;+w{N< z_Gh3{uqG3F1>%HzP6(6N{lT&RGV2%TR@SRhuJEiJb|fF6DZe&q3(8_sQlvsS#P&rnywVw;pW3w-(J~pWDnU6tp6{qH22)33up(bC(2X*1E0SG U*l`# zC$k;l-JWN5?4BmJCIC>H#P<`=!JLELEHSnK5ULCS5m5lJ!-OK3yc;k8Sa1aZ{d543 z@XM-2BbWgmKTBL70Pu+(RuzBhslA&^6(f68C`4D!12U#IJVf2YMv5PBGaYN*4Y z|7bIpA`Ve~`v5Nwrt_gbQUmde`G45oJ_zWc`TuO@uS|cT%v6!Q2awN;x4QO&o%lYW=~VD`UJAdO=J^k$Fd}Y$-psy@ocj_O z!srUqfcuRbGQt|>cK2?DXEES&s>1%k-$w6W_}Z$0tZ%L#^JDl$IxjCT7gy3RITZ#g ztvx5!J3i)xt=FjR719>67Hb*LjKcS|)|huRM7dmF+rDoj5L(fc^kICQ;piqSBXhRv z3G_mJeLV-Ou#!PV8Y47&E{@29LMp6qgDhkV6jiy&{wD*pSAL#?Zn*3a_I5TZlaFd^ zYezWO=;-P$6dCI&v5Jb=T(oGjPF~Mj4E@r-EFN$64$FTlBF}RIHZXtJCUk)7B%|hA z(xvfT?ij?8eEHvh>wLa+M&L3&E;M za;-&!Lgm%+56{#|`H5wCT9%y+BsteM3%%*D)TKRy^8MdpHYP!Q~+q%|`*;DBYeLM?eVJWQ5sk zHzgg7Bj9BG86u6deSZE`mQe_tK3YaGJC7{I@J5rtlaoR+IIUB6Q|C~#Lj`dyCD6_5?B2OEeJxWv?a==L9BJTK^(UOetJ;h1=jRmq`#-m@yST_d+2*zR#3H6+$wJoX zwy_+Cwl}p#)5_mkxMskfQ@S1Bw?(lr($d6HM(aNma5Ym_-D-rag=tQU`CH$oW>MTD zrpTPlmHE|G|FdfRLo+kaGgvuX&Ly5bQtVZ|3N{$_e!zc8`jJHK<>Z$5%pO^?jV}3^ ziY^6{LZw;@qyOyTKFf`8a)O1!tzh7oYhsTqhgKg{k;wz;1O8gt>=lKD_vx*ygqSix zgk2o%grwIUKtv$_5~(uUhAy?#7O@p8Fh*3}pj{cT_TFTS&vlVK-w`s?)4_6ak#az1 z`so-+AGFkMeK2gMGea+<@@s}K;@I9?Z%2LDCV#wu{Ualc;svU+hPyN-&FJ~`44M60 zkvjYj!VCJDz}Fdc2i6(2BqQ|$#2sgc;_m7mDc0$;80yUD%4@Xpkfe%`impMi7Tb7O zKk&+K@r(~uH&Jh3G!B9hw^K?vBHvl-OHFwazE+l{e?yhi%=H#=V`Fj1WB120HhM!P zQL0>|02k|M;w8MS=khqIFMcN7o2@+o1tj~!t1-MO2ig$ts0cjw2yJkj@gM6#Q&50B!z$A+a~3v9U3UKJ6Sd*DFU(xOi1*)f{-~M9KBXuIQqKDl1yKb2-lM zSEa1jNuSmtf=6)7qU0@~(o@kMBspr%bMP@^%@-hfw(I))Vi#?~}&r zZZf7KWkU{qVG{(IC!N6PVX%h|_y zM-5F^>DF(E@**qmut%kGt$eD=W6+w45p7y#CpHQ@I-0ZMQ?V6uV721kWA%vjQN=4K zf#E*WggW=R-mg7x8kNT`u7jLQlqDnGzbQty;4&4<>>X~Q`h6!~^m!@l_kOhI*Gi(O z2h2gv(}l&G)<*L{RYeNZ6Gi8W$#gn>G@4JsT;WCtp~at6^j3ct0uxCr-c)s->!mumMYf89Ja(tbQ_nj)r8W4>J>NYm=@W(d|R zC}(HsTY5RtrNe32Or+a@dWOBZ~TIo&`tfZlKwoP~hVgxB=t zQN81%Of|I|6nNhGO=Rb~Ox@vNxa0aLWy5uI?Dz7zu9PF~)3EURSI}_$vq(skUG!FU zbV~kDk)zv?$h*iz2jQiJ)TjI(r4cQ>3BIP=Ia6=vbV$W9W}-5&?#l|Am whV-AZZh!d4Z>crcTwc*~#8FRgvmJN%Venc10APrH);4S2yAdjJ3c literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/non_moving/stationary-warning.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/non_moving/stationary-warning.png new file mode 100644 index 0000000000000000000000000000000000000000..57366df789a449b8c6549f102480b1b81890df61 GIT binary patch literal 2260 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 I^l!!d4{j2bnE(I) literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/default/moving/normal.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/default/moving/normal.png new file mode 100644 index 0000000000000000000000000000000000000000..aa240851c26c3577f0aa2519227f51a9a2100233 GIT binary patch literal 3009 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 DJ>jT5 literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/default/moving/offline.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/default/moving/offline.png new file mode 100644 index 0000000000000000000000000000000000000000..3266b65261403eb710814dea89d0414cba7d4cd3 GIT binary patch literal 2970 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 QegFUf07*qoM6N<$g0eY!+yDRo literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/default/moving/warning.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/default/moving/warning.png new file mode 100644 index 0000000000000000000000000000000000000000..660253dfe9e94c2b19a80b1d83375a0e7b662720 GIT binary patch literal 3815 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 xfh(t^f`t; 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 literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/default/non-moving/offline.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/default/non-moving/offline.png new file mode 100644 index 0000000000000000000000000000000000000000..1eb2595e529bd8317789bb5a5411c34854339f2f GIT binary patch literal 3079 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 bI;Fc`TMM8aHvjVh1JG2xt5T(O|M7nS5X5V{ literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/stationary/non-moving/alerted.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/stationary/non-moving/alerted.png new file mode 100644 index 0000000000000000000000000000000000000000..5af0c6a427e37df7428a5b2e5e04bd2be6dcc2eb GIT binary patch literal 4894 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 Qn*aa+07*qoM6N<$f>d~0Hvj+t literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/stationary/non-moving/normal.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/stationary/non-moving/normal.png new file mode 100644 index 0000000000000000000000000000000000000000..e2e9f757f515ded172e6f72c3ce55bbe15579649 GIT binary patch literal 1747 zcmV;^1}yoBP)P001cn1^@s6z>|W`000J>NklgF+#9zZY7a#;@J(5X0e&McXK2n7+jhR}<0i-1U5t`>D@ zJSJ*^swjdwq0keUf9!BETXZhVyjqS4&z|?2HdJnOU-HYF_xSyu=XsCkdtVv=(53>u zME@3F*5J;OHwJNJdWK(ivQ??rr&t7M)1yRas=d_yYH>g+p#{( zm+NoyW%|8bNfUkAMrabri(FY#Dqr5%zhZA&e^iALHXiJOFYA7Qt##L_a?_z6SW{&J zVeyp#G&snW>SO{*%d9CGVM}xic~V`MU$)*JU1Nbw2YX?ywi}|VZ4g;$g)p^+DoLHR zZ^Zr$S_=f^oU`+!4K^?NsU;H{;bhhex#H7(!s52U&FJ}OHQf-VvVd?Btj2MhF|zQI z%l~jBr~6T7^_WIHC1>8j&bv`c18g|Z3*l-jgeoml1{oh++Y75JI)RgU>LEY<%)C)X zI2rZ2kb>s^4cZuYeq3!A}DS`X~>Nd;+A$4e;ZwyD<1@2!8$ZKJ3w%!6)+sCALy+bKwyk zqKCS6qEGWmJ)97b-QXY|`<0lS5THkEtGgjE>ojOvuftfM&Ugd-rQg9C+|FdGM)HXs z(IxsA$&r(xg_j^4=hC;>s;1UF*Wp1I-2~sEF zZYgb?&`4bM1qjM*hR`yr3qJ(;L>Kj2XpBUy+)t((6z;bIr@-ihFNVAl4<#?{TWIaQ zIi>;YjXS_iIfNb?!N1t-!Y6vZvW5ZXE{%l7imzV9NvV4nf#G`Pcex;#@}?EINwsk7 z>UC=SlJC*b5a>-mgHP%q2+qF;cbNx ztCV@{s&fPsSt#;i@#G-m$as&$gLaG}ebOrtS5*22&glbhMH_fz8(~qVVN!VIVCKzg z1$U9^93(E%Ur9v_R*h#!t)Ce+#)+m(q^zCq%g&L-!E zC&et9WrT(49pl0S`?=DK7=`+;`CB!wP3ta97b)XdJ8K=@`DXOk0Q0};7zNT!`k4t@ z+)=9S)4p(jEGm5!qq)PDTmXiw3qDM19|fiylc@LtiQ=}Kfb#w&ckv^7tBj;cfwtY$q?IdliYlg zqh@4;IyW)OFPQPw4z|JsAEb7`+@yA@Q8SXQT#;upV`QNJ59Bg5m(jci3`0T4X-&^GU6)x7$Vi0XMWB(2hrdK^!hq0 zt!bDg$Hh)-9L62h`&{0PBf%7vM>69o`k4~kx^Wc)?lG!}=WgV2x-rq?HN#jMr^B0; p5zMeb2q5MEX5{g&Aa%N&e*pr!t%ZZ}>w*9P002ovPDHLkV1gpUS8xCT literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/stationary/non-moving/normal2.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/stationary/non-moving/normal2.png new file mode 100644 index 0000000000000000000000000000000000000000..d73343dfe53b8f01f5a249ea0301f927d7a49c7c GIT binary patch literal 2298 zcmVV1a~(Mnf8c7_?Dd4OoI8v@)d?+S1xi+j-C2bM{`#KhC*#E<<^A zT5u<8_BrRy+56kyTHo4hA7K*hcW<1}<=xK!aNn*oXLnYXoYCT^FY}b<7}g35N2~P= zhyBm>)?V6m?c6tZ13b9vT)r~r`D30>m}I+u=c02utBdcQ*Y@SvCzZ}<9o0jO#$L<< zA_=X&i;8RKaBbUA&)`EnM{2KKdCk1ndnPm2F@xOr`rH{^)pOR*YFTzgi|^uK`XWcN z?WjeZOTY{>C0Y$HWjafXnNj%!gV~$xAAR=j1EbI1@T~<0hCURK59~UdOotZEs4jh} zd&=iaJww08L~&9kab-kGh`1aik*FDJDN$3@QalwFOudqxfrm$qq}%70WZGL-&3)+u z&FwxY$TajVIJNbH=T0ikDQz40Ek=fu65f?@QXz3wO0Jc}x8kLWcNLtJagyLj2sX^W z`tD*z^^>hLtLJSU%lf)bD3kZ}%x>?fEZEy#p5J<~_5#jT@lwJ2Dkax~cU8Qr;-m~1 zQENmSBgRpJjuCW>s5R7TsHU9Kaz6Wpw;t>r-En%Wn_jzi(YDDmx$(8d0JJ5it(%gZ z(z<_i3*Zn05y9aQ9O4qZlyeqc74J%jco5(CUqK2^guNqA(pgzJqrE(P<+Y2parY|= zj*rRTY@gHJS)KQvnjOO7ajuMa6}+pGxGLVYP)b@!{1n1iLY8Kb)F@RmvTTGbjufnp z5iLbE&0{ty3GM73dbMrE(%#|s!jQZl$b^>PfPg6`4loSO?@`1n``#E}0o4B*s3}fLwD@Top!e&OX7a9A&gf_>&DtJipv!xoi@=p| zQo*}2l}eRoAL-}L8@Ev^dwk*%5zLG%3uug7zu`=lEN>xA#|otfR3kwH8U?hxXDB^z z=5x{Nugcy{d<)(^{!kE0oJ+%B2!5)hg4b zP35HacGiD?7du`Y%Gqytz%YfNDM8ceBBhfjC7kar*@3Ao%ydl53{^!j%pz)mG|kv_ z$9|?vspJDWhjR|^J72B>RdrreMa{5c zCoxl$!01p)-@g30^L`v)lH`EB$2*5l5(W>J7#j&-S^zXm^LJxZOm+68g`=hk3NbRC zKs-2uk-cFHxuK3h$%R2!k zVkBzds+(s~ZK)u2bvFqpNfNwIIC*9p7k>|841}nJ9N4()qaLY;)uhyYUmiIn6X^^))J(E=z{Fil4b^Subt?<4{$s&l<#i58md+Wz3C#}@dLHb7b zU?#;rZI~)ii$q=sD5^et^F@cw|MB0Zvu1hkfunZ8dU8(=iJttFX}zM%KWAa53*)?@2(j2_RtiMA&X=okcCJV zA|VE{5b{0-LI{NVZ&{cSlS+v3{#!qLc&n$Z={On?*btTv5~pAI_0>_2W|?aw1pMW3hfbK*k4qM_ihr2BwOct-9@! z;h!GMoXN3*RE<}wu?&%JSKptZ(bwH=me=sq)t$4sIjH{ZBl&{ygH4sIMdUt2a^;B> zE*}p`D=5{1*1WJ_-mkut?ra3@hy9u5`bUy2f-K9cop%mpX5%h5BV_iCJ1&p+7T&Wa zJE{zh%iWDKF6w2#4xrL-`GgtjKs8#=!z=9(pU@UV{T%T&vv(oSj_C`=#J2uY-D9SY zHI5cV(U2DodGSye&XL`=rgs-U21*4n^}cTYUA!vC#Uy~3Tq92U8Ubk&rxMZ;+w{N< z_Gh3{uqG3F1>%HzP6(6N{lT&RGV2%TR@SRhuJEiJb|fF6DZe&q3(8_sQlvsS#P&rnywVw;pW3w-(J~pWDnU6tp6{qH22)33up(bC(2X*1E0SG U*l`# zC$k;l-JWN5?4BmJCIC>H#P<`=!JLELEHSnK5ULCS5m5lJ!-OK3yc;k8Sa1aZ{d543 z@XM-2BbWgmKTBL70Pu+(RuzBhslA&^6(f68C`4D!12U#IJVf2YMv5PBGaYN*4Y z|7bIpA`Ve~`v5Nwrt_gbQUmde`G45oJ_zWc`TuO@uS|cT%v6!Q2awN;x4QO&o%lYW=~VD`UJAdO=J^k$Fd}Y$-psy@ocj_O z!srUqfcuRbGQt|>cK2?DXEES&s>1%k-$w6W_}Z$0tZ%L#^JDl$IxjCT7gy3RITZ#g ztvx5!J3i)xt=FjR719>67Hb*LjKcS|)|huRM7dmF+rDoj5L(fc^kICQ;piqSBXhRv z3G_mJeLV-Ou#!PV8Y47&E{@29LMp6qgDhkV6jiy&{wD*pSAL#?Zn*3a_I5TZlaFd^ zYezWO=;-P$6dCI&v5Jb=T(oGjPF~Mj4E@r-EFN$64$FTlBF}RIHZXtJCUk)7B%|hA z(xvfT?ij?8eEHvh>wLa+M&L3&E;M za;-&!Lgm%+56{#|`H5wCT9%y+BsteM3%%*D)TKRy^8MdpHYP!Q~+q%|`*;DBYeLM?eVJWQ5sk zHzgg7Bj9BG86u6deSZE`mQe_tK3YaGJC7{I@J5rtlaoR+IIUB6Q|C~#Lj`dyCD6_5?B2OEeJxWv?a==L9BJTK^(UOetJ;h1=jRmq`#-m@yST_d+2*zR#3H6+$wJoX zwy_+Cwl}p#)5_mkxMskfQ@S1Bw?(lr($d6HM(aNma5Ym_-D-rag=tQU`CH$oW>MTD zrpTPlmHE|G|FdfRLo+kaGgvuX&Ly5bQtVZ|3N{$_e!zc8`jJHK<>Z$5%pO^?jV}3^ ziY^6{LZw;@qyOyTKFf`8a)O1!tzh7oYhsTqhgKg{k;wz;1O8gt>=lKD_vx*ygqSix zgk2o%grwIUKtv$_5~(uUhAy?#7O@p8Fh*3}pj{cT_TFTS&vlVK-w`s?)4_6ak#az1 z`so-+AGFkMeK2gMGea+<@@s}K;@I9?Z%2LDCV#wu{Ualc;svU+hPyN-&FJ~`44M60 zkvjYj!VCJDz}Fdc2i6(2BqQ|$#2sgc;_m7mDc0$;80yUD%4@Xpkfe%`impMi7Tb7O zKk&+K@r(~uH&Jh3G!B9hw^K?vBHvl-OHFwazE+l{e?yhi%=H#=V`Fj1WB120HhM!P zQL0>|02k|M;w8MS=khqIFMcN7o2@+o1tj~!t1-MO2ig$ts0cjw2yJkj@gM6#Q&50B!z$A+a~3v9U3UKJ6Sd*DFU(xOi1*)f{-~M9KBXuIQqKDl1yKb2-lM zSEa1jNuSmtf=6)7qU0@~(o@kMBspr%bMP@^%@-hfw(I))Vi#?~}&r zZZf7KWkU{qVG{(IC!N6PVX%h|_y zM-5F^>DF(E@**qmut%kGt$eD=W6+w45p7y#CpHQ@I-0ZMQ?V6uV721kWA%vjQN=4K zf#E*WggW=R-mg7x8kNT`u7jLQlqDnGzbQty;4&4<>>X~Q`h6!~^m!@l_kOhI*Gi(O z2h2gv(}l&G)<*L{RYeNZ6Gi8W$#gn>G@4JsT;WCtp~at6^j3ct0uxCr-c)s->!mumMYf89Ja(tbQ_nj)r8W4>J>NYm=@W(d|R zC}(HsTY5RtrNe32Or+a@dWOBZ~TIo&`tfZlKwoP~hVgxB=t zQN81%Of|I|6nNhGO=Rb~Ox@vNxa0aLWy5uI?Dz7zu9PF~)3EURSI}_$vq(skUG!FU zbV~kDk)zv?$h*iz2jQiJ)TjI(r4cQ>3BIP=Ia6=vbV$W9W}-5&?#l|Am whV-AZZh!d4Z>crcTwc*~#8FRgvmJN%Venc10APrH);4S2yAdjJ3c literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/stationary/non-moving/warning.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/stationary/non-moving/warning.png new file mode 100644 index 0000000000000000000000000000000000000000..57366df789a449b8c6549f102480b1b81890df61 GIT binary patch literal 2260 zcmV;_2rKuAP);1+ZjCt$_030~;=GpNH(~hOHZK=f39L(A<`mLUH>CS_% zgg3Wu9=rPbcL937{7X8XzGlSp2`yUB*|#k5$4|L0{_5h{e%6FGJ5WLQ^+Ql_4mW-j zGNy!X+|^fo{MD||wfln3SFY=7Wv&r}JaGCA6a6VOS4K-_pYJA&M&H_wZrKCDAa>cG zQpIX17CHRfN%)0R(QW%kS8ur|d420O>pG<|J+&cZnT$69cL zlwzb5K^!68ff*JIt0hoP&}s_RIz*oM>!(nEbWJ66?VQi(()P}OUi-1;b{`j{^;D0G zPM`CNpE)kBKfD^$kV2G$EZ{~JaqT6fy@a$Cka7&A7%6y&JXTGp-@gjKXnI?;WcHf0 zr!wiNGP(cMpN;i%C%ot8PHNLP-$%+ZQZ8m-Mip?Qa$rRd1~yPfD|M{DhV^HyRudSg zW3?2&WH$A+@9eH^+BrkUx7VhuTG2X_d%kdEwvuTbH_7CVw(#m!5XszuctIkE#11J% zxb|`mHbx?kI0s(93o_VGNMGJWbljAQ@yrR!r>t7R`%8a%WK8Z_vSLiTW% zGdAAV|GzLqADIuO`1c54mbvC_Ff1sM3Y+)r;JQcuO84IF)IvhhMVv5x2DhAcA>*}3 z2#P5~eKAZ8i5zZB`EKBnmYID2vnx8IiDTBgzGRa34vC{o2&EV)7buP@^T>|ZxcbF= zDMT@m_lO8)MmvFxS$=@`{cxmcu7C{T!F%B2z=qsP!Wwu4L8+{>$b zw;-v3Y90|qF)RsKl1z}ujc-Xf$E>~q#TIBS5i>(ovv8%^;I&$f+q<8oy;RNyat`Ml z-g}()c<+g#m~o@Wa^sd~NYVrg8Aw&bGy@u{NlCGBEvs8q=cy`YhFQjOV6 z|BAPc|KaW8WSJ9>b3@<;RcwYsC>=8a*H$DwSfRFkA1Ywj2SAz*g8kQ`?z=w!pZQmF zQrF7XnOt|=_c60MBC^hjD<8t56NE;o0YR{=!sh1)L-T`4qwEA5EJ3N7ea<NQD zM|LtlapRqw)U|SR2;q)QH0fYYrfJ@Wl#m9}G$o|j?~vy2Lz=x0De0kkeg9`R-MvOt zkIu<_?cA$a{Pu5nW6l-b&bhfXm_!EIJY*yrV$;k}%eU4>T~vMh)OUV2@AWxXaPsEg ze&qbo#{p@Y1u>{z9#o%m&Sj?|5u9cPTL2RQ12MxS>(|K1p?z8byCC1uKA9`+zh`{! zAra0O93o@@bC8D+NyZ{MKqEi>m|c7Ndw;lPBy&b11*suiY_L=$%o52&lpQ3R)@+tX zJZrNPl%d%3rs=K!moFHrCSP(f!k=A6kMU%dZP5I`50S{<5iw>`(SH%L@~} z{SqQeB`-b0M>4a))(q;Fe&@Ws58anX&zk(OGB~1eH!NuQCeV#gJiNNILXJT|yRPhc z_OTe(o}da0cl!|XY(!r$hTB>D9^9s;PnsFQ^n?3yqwHX8NqevB3j2M6#yK&Kw&DIm zqAEwkB!Cn7u8ACQL(2KU9Q{`R`(?dPJp&YT)?`?#Kp6JSQDO4=@fUK|zK41QSx(dS zqS+1VkJh?xa>$q_*5bo3c{o;W#2>7N+u3^`#I7>>NdM@Z>luE9aL&;$>GSvWzp+Cx zKMch1=jQjWX{AS|?q+*#;1(K%cL&ENk2FUYv zKd{_{ebRJ=*cy88-Wqz7!-TRir{>^lxhG9PwWaTqA7ypXpSZ>i(TP1Wu;EF`#L}E+ zAqP|e`g0%1-=!Z?j*cG4*Xz3;K&0wK*ss+W|5n-Xt_=yG2J`_vxgX4d)^p%C(p{)! zdur-MSH3*`Qd?Y@{3T!sun?F5j04I!tHP&cCl)3O5I-^PqWgdaz^o>4{!;}v%;Gaj i(Oz@Z0f2-7z;ux~O9+4z06=<WDR*FRcSTFz- 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 Qn*aa+07*qoM6N<$f>d~0Hvj+t literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/stop/non-moving/normal.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/stop/non-moving/normal.png new file mode 100644 index 0000000000000000000000000000000000000000..e2e9f757f515ded172e6f72c3ce55bbe15579649 GIT binary patch literal 1747 zcmV;^1}yoBP)P001cn1^@s6z>|W`000J>NklgF+#9zZY7a#;@J(5X0e&McXK2n7+jhR}<0i-1U5t`>D@ zJSJ*^swjdwq0keUf9!BETXZhVyjqS4&z|?2HdJnOU-HYF_xSyu=XsCkdtVv=(53>u zME@3F*5J;OHwJNJdWK(ivQ??rr&t7M)1yRas=d_yYH>g+p#{( zm+NoyW%|8bNfUkAMrabri(FY#Dqr5%zhZA&e^iALHXiJOFYA7Qt##L_a?_z6SW{&J zVeyp#G&snW>SO{*%d9CGVM}xic~V`MU$)*JU1Nbw2YX?ywi}|VZ4g;$g)p^+DoLHR zZ^Zr$S_=f^oU`+!4K^?NsU;H{;bhhex#H7(!s52U&FJ}OHQf-VvVd?Btj2MhF|zQI z%l~jBr~6T7^_WIHC1>8j&bv`c18g|Z3*l-jgeoml1{oh++Y75JI)RgU>LEY<%)C)X zI2rZ2kb>s^4cZuYeq3!A}DS`X~>Nd;+A$4e;ZwyD<1@2!8$ZKJ3w%!6)+sCALy+bKwyk zqKCS6qEGWmJ)97b-QXY|`<0lS5THkEtGgjE>ojOvuftfM&Ugd-rQg9C+|FdGM)HXs z(IxsA$&r(xg_j^4=hC;>s;1UF*Wp1I-2~sEF zZYgb?&`4bM1qjM*hR`yr3qJ(;L>Kj2XpBUy+)t((6z;bIr@-ihFNVAl4<#?{TWIaQ zIi>;YjXS_iIfNb?!N1t-!Y6vZvW5ZXE{%l7imzV9NvV4nf#G`Pcex;#@}?EINwsk7 z>UC=SlJC*b5a>-mgHP%q2+qF;cbNx ztCV@{s&fPsSt#;i@#G-m$as&$gLaG}ebOrtS5*22&glbhMH_fz8(~qVVN!VIVCKzg z1$U9^93(E%Ur9v_R*h#!t)Ce+#)+m(q^zCq%g&L-!E zC&et9WrT(49pl0S`?=DK7=`+;`CB!wP3ta97b)XdJ8K=@`DXOk0Q0};7zNT!`k4t@ z+)=9S)4p(jEGm5!qq)PDTmXiw3qDM19|fiylc@LtiQ=}Kfb#w&ckv^7tBj;cfwtY$q?IdliYlg zqh@4;IyW)OFPQPw4z|JsAEb7`+@yA@Q8SXQT#;upV`QNJ59Bg5m(jci3`0T4X-&^GU6)x7$Vi0XMWB(2hrdK^!hq0 zt!bDg$Hh)-9L62h`&{0PBf%7vM>69o`k4~kx^Wc)?lG!}=WgV2x-rq?HN#jMr^B0; p5zMeb2q5MEX5{g&Aa%N&e*pr!t%ZZ}>w*9P002ovPDHLkV1gpUS8xCT literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/stop/non-moving/normal2.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/stop/non-moving/normal2.png new file mode 100644 index 0000000000000000000000000000000000000000..d73343dfe53b8f01f5a249ea0301f927d7a49c7c GIT binary patch literal 2298 zcmVV1a~(Mnf8c7_?Dd4OoI8v@)d?+S1xi+j-C2bM{`#KhC*#E<<^A zT5u<8_BrRy+56kyTHo4hA7K*hcW<1}<=xK!aNn*oXLnYXoYCT^FY}b<7}g35N2~P= zhyBm>)?V6m?c6tZ13b9vT)r~r`D30>m}I+u=c02utBdcQ*Y@SvCzZ}<9o0jO#$L<< zA_=X&i;8RKaBbUA&)`EnM{2KKdCk1ndnPm2F@xOr`rH{^)pOR*YFTzgi|^uK`XWcN z?WjeZOTY{>C0Y$HWjafXnNj%!gV~$xAAR=j1EbI1@T~<0hCURK59~UdOotZEs4jh} zd&=iaJww08L~&9kab-kGh`1aik*FDJDN$3@QalwFOudqxfrm$qq}%70WZGL-&3)+u z&FwxY$TajVIJNbH=T0ikDQz40Ek=fu65f?@QXz3wO0Jc}x8kLWcNLtJagyLj2sX^W z`tD*z^^>hLtLJSU%lf)bD3kZ}%x>?fEZEy#p5J<~_5#jT@lwJ2Dkax~cU8Qr;-m~1 zQENmSBgRpJjuCW>s5R7TsHU9Kaz6Wpw;t>r-En%Wn_jzi(YDDmx$(8d0JJ5it(%gZ z(z<_i3*Zn05y9aQ9O4qZlyeqc74J%jco5(CUqK2^guNqA(pgzJqrE(P<+Y2parY|= zj*rRTY@gHJS)KQvnjOO7ajuMa6}+pGxGLVYP)b@!{1n1iLY8Kb)F@RmvTTGbjufnp z5iLbE&0{ty3GM73dbMrE(%#|s!jQZl$b^>PfPg6`4loSO?@`1n``#E}0o4B*s3}fLwD@Top!e&OX7a9A&gf_>&DtJipv!xoi@=p| zQo*}2l}eRoAL-}L8@Ev^dwk*%5zLG%3uug7zu`=lEN>xA#|otfR3kwH8U?hxXDB^z z=5x{Nugcy{d<)(^{!kE0oJ+%B2!5)hg4b zP35HacGiD?7du`Y%Gqytz%YfNDM8ceBBhfjC7kar*@3Ao%ydl53{^!j%pz)mG|kv_ z$9|?vspJDWhjR|^J72B>RdrreMa{5c zCoxl$!01p)-@g30^L`v)lH`EB$2*5l5(W>J7#j&-S^zXm^LJxZOm+68g`=hk3NbRC zKs-2uk-cFHxuK3h$%R2!k zVkBzds+(s~ZK)u2bvFqpNfNwIIC*9p7k>|841}nJ9N4()qaLY;)uhyYUmiIn6X^^))J(E=z{Fil4b^Subt?<4{$s&l<#i58md+Wz3C#}@dLHb7b zU?#;rZI~)ii$q=sD5^et^F@cw|MB0Zvu1hkfunZ8dU8(=iJttFX}zM%KWAa53*)?@2(j2_RtiMA&X=okcCJV zA|VE{5b{0-LI{NVZ&{cSlS+v3{#!qLc&n$Z={On?*btTv5~pAI_0>_2W|?aw1pMW3hfbK*k4qM_ihr2BwOct-9@! z;h!GMoXN3*RE<}wu?&%JSKptZ(bwH=me=sq)t$4sIjH{ZBl&{ygH4sIMdUt2a^;B> zE*}p`D=5{1*1WJ_-mkut?ra3@hy9u5`bUy2f-K9cop%mpX5%h5BV_iCJ1&p+7T&Wa zJE{zh%iWDKF6w2#4xrL-`GgtjKs8#=!z=9(pU@UV{T%T&vv(oSj_C`=#J2uY-D9SY zHI5cV(U2DodGSye&XL`=rgs-U21*4n^}cTYUA!vC#Uy~3Tq92U8Ubk&rxMZ;+w{N< z_Gh3{uqG3F1>%HzP6(6N{lT&RGV2%TR@SRhuJEiJb|fF6DZe&q3(8_sQlvsS#P&rnywVw;pW3w-(J~pWDnU6tp6{qH22)33up(bC(2X*1E0SG U*l`# zC$k;l-JWN5?4BmJCIC>H#P<`=!JLELEHSnK5ULCS5m5lJ!-OK3yc;k8Sa1aZ{d543 z@XM-2BbWgmKTBL70Pu+(RuzBhslA&^6(f68C`4D!12U#IJVf2YMv5PBGaYN*4Y z|7bIpA`Ve~`v5Nwrt_gbQUmde`G45oJ_zWc`TuO@uS|cT%v6!Q2awN;x4QO&o%lYW=~VD`UJAdO=J^k$Fd}Y$-psy@ocj_O z!srUqfcuRbGQt|>cK2?DXEES&s>1%k-$w6W_}Z$0tZ%L#^JDl$IxjCT7gy3RITZ#g ztvx5!J3i)xt=FjR719>67Hb*LjKcS|)|huRM7dmF+rDoj5L(fc^kICQ;piqSBXhRv z3G_mJeLV-Ou#!PV8Y47&E{@29LMp6qgDhkV6jiy&{wD*pSAL#?Zn*3a_I5TZlaFd^ zYezWO=;-P$6dCI&v5Jb=T(oGjPF~Mj4E@r-EFN$64$FTlBF}RIHZXtJCUk)7B%|hA z(xvfT?ij?8eEHvh>wLa+M&L3&E;M za;-&!Lgm%+56{#|`H5wCT9%y+BsteM3%%*D)TKRy^8MdpHYP!Q~+q%|`*;DBYeLM?eVJWQ5sk zHzgg7Bj9BG86u6deSZE`mQe_tK3YaGJC7{I@J5rtlaoR+IIUB6Q|C~#Lj`dyCD6_5?B2OEeJxWv?a==L9BJTK^(UOetJ;h1=jRmq`#-m@yST_d+2*zR#3H6+$wJoX zwy_+Cwl}p#)5_mkxMskfQ@S1Bw?(lr($d6HM(aNma5Ym_-D-rag=tQU`CH$oW>MTD zrpTPlmHE|G|FdfRLo+kaGgvuX&Ly5bQtVZ|3N{$_e!zc8`jJHK<>Z$5%pO^?jV}3^ ziY^6{LZw;@qyOyTKFf`8a)O1!tzh7oYhsTqhgKg{k;wz;1O8gt>=lKD_vx*ygqSix zgk2o%grwIUKtv$_5~(uUhAy?#7O@p8Fh*3}pj{cT_TFTS&vlVK-w`s?)4_6ak#az1 z`so-+AGFkMeK2gMGea+<@@s}K;@I9?Z%2LDCV#wu{Ualc;svU+hPyN-&FJ~`44M60 zkvjYj!VCJDz}Fdc2i6(2BqQ|$#2sgc;_m7mDc0$;80yUD%4@Xpkfe%`impMi7Tb7O zKk&+K@r(~uH&Jh3G!B9hw^K?vBHvl-OHFwazE+l{e?yhi%=H#=V`Fj1WB120HhM!P zQL0>|02k|M;w8MS=khqIFMcN7o2@+o1tj~!t1-MO2ig$ts0cjw2yJkj@gM6#Q&50B!z$A+a~3v9U3UKJ6Sd*DFU(xOi1*)f{-~M9KBXuIQqKDl1yKb2-lM zSEa1jNuSmtf=6)7qU0@~(o@kMBspr%bMP@^%@-hfw(I))Vi#?~}&r zZZf7KWkU{qVG{(IC!N6PVX%h|_y zM-5F^>DF(E@**qmut%kGt$eD=W6+w45p7y#CpHQ@I-0ZMQ?V6uV721kWA%vjQN=4K zf#E*WggW=R-mg7x8kNT`u7jLQlqDnGzbQty;4&4<>>X~Q`h6!~^m!@l_kOhI*Gi(O z2h2gv(}l&G)<*L{RYeNZ6Gi8W$#gn>G@4JsT;WCtp~at6^j3ct0uxCr-c)s->!mumMYf89Ja(tbQ_nj)r8W4>J>NYm=@W(d|R zC}(HsTY5RtrNe32Or+a@dWOBZ~TIo&`tfZlKwoP~hVgxB=t zQN81%Of|I|6nNhGO=Rb~Ox@vNxa0aLWy5uI?Dz7zu9PF~)3EURSI}_$vq(skUG!FU zbV~kDk)zv?$h*iz2jQiJ)TjI(r4cQ>3BIP=Ia6=vbV$W9W}-5&?#l|Am whV-AZZh!d4Z>crcTwc*~#8FRgvmJN%Venc10APrH);4S2yAdjJ3c literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/stop/non-moving/warning.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/stop/non-moving/warning.png new file mode 100644 index 0000000000000000000000000000000000000000..57366df789a449b8c6549f102480b1b81890df61 GIT binary patch literal 2260 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 I^l!!d4{j2bnE(I) literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/vehicle/moving/normal.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/vehicle/moving/normal.png new file mode 100644 index 0000000000000000000000000000000000000000..aa240851c26c3577f0aa2519227f51a9a2100233 GIT binary patch literal 3009 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 DJ>jT5 literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/vehicle/moving/offline.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/vehicle/moving/offline.png new file mode 100644 index 0000000000000000000000000000000000000000..3266b65261403eb710814dea89d0414cba7d4cd3 GIT binary patch literal 2970 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 QegFUf07*qoM6N<$g0eY!+yDRo literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/vehicle/moving/warning.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/vehicle/moving/warning.png new file mode 100644 index 0000000000000000000000000000000000000000..660253dfe9e94c2b19a80b1d83375a0e7b662720 GIT binary patch literal 3815 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 xfh(t^f`t; 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 literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/vehicle/non-moving/offline.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/object-types/vehicle/non-moving/offline.png new file mode 100644 index 0000000000000000000000000000000000000000..1eb2595e529bd8317789bb5a5411c34854339f2f GIT binary patch literal 3079 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 bI;Fc`TMM8aHvjVh1JG2xt5T(O|M7nS5X5V{ literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/offline.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/offline.png new file mode 100644 index 0000000000000000000000000000000000000000..e2e9f757f515ded172e6f72c3ce55bbe15579649 GIT binary patch literal 1747 zcmV;^1}yoBP)P001cn1^@s6z>|W`000J>NklgF+#9zZY7a#;@J(5X0e&McXK2n7+jhR}<0i-1U5t`>D@ zJSJ*^swjdwq0keUf9!BETXZhVyjqS4&z|?2HdJnOU-HYF_xSyu=XsCkdtVv=(53>u zME@3F*5J;OHwJNJdWK(ivQ??rr&t7M)1yRas=d_yYH>g+p#{( zm+NoyW%|8bNfUkAMrabri(FY#Dqr5%zhZA&e^iALHXiJOFYA7Qt##L_a?_z6SW{&J zVeyp#G&snW>SO{*%d9CGVM}xic~V`MU$)*JU1Nbw2YX?ywi}|VZ4g;$g)p^+DoLHR zZ^Zr$S_=f^oU`+!4K^?NsU;H{;bhhex#H7(!s52U&FJ}OHQf-VvVd?Btj2MhF|zQI z%l~jBr~6T7^_WIHC1>8j&bv`c18g|Z3*l-jgeoml1{oh++Y75JI)RgU>LEY<%)C)X zI2rZ2kb>s^4cZuYeq3!A}DS`X~>Nd;+A$4e;ZwyD<1@2!8$ZKJ3w%!6)+sCALy+bKwyk zqKCS6qEGWmJ)97b-QXY|`<0lS5THkEtGgjE>ojOvuftfM&Ugd-rQg9C+|FdGM)HXs z(IxsA$&r(xg_j^4=hC;>s;1UF*Wp1I-2~sEF zZYgb?&`4bM1qjM*hR`yr3qJ(;L>Kj2XpBUy+)t((6z;bIr@-ihFNVAl4<#?{TWIaQ zIi>;YjXS_iIfNb?!N1t-!Y6vZvW5ZXE{%l7imzV9NvV4nf#G`Pcex;#@}?EINwsk7 z>UC=SlJC*b5a>-mgHP%q2+qF;cbNx ztCV@{s&fPsSt#;i@#G-m$as&$gLaG}ebOrtS5*22&glbhMH_fz8(~qVVN!VIVCKzg z1$U9^93(E%Ur9v_R*h#!t)Ce+#)+m(q^zCq%g&L-!E zC&et9WrT(49pl0S`?=DK7=`+;`CB!wP3ta97b)XdJ8K=@`DXOk0Q0};7zNT!`k4t@ z+)=9S)4p(jEGm5!qq)PDTmXiw3qDM19|fiylc@LtiQ=}Kfb#w&ckv^7tBj;cfwtY$q?IdliYlg zqh@4;IyW)OFPQPw4z|JsAEb7`+@yA@Q8SXQT#;upV`QNJ59Bg5m(jci3`0T4X-&^GU6)x7$Vi0XMWB(2hrdK^!hq0 zt!bDg$Hh)-9L62h`&{0PBf%7vM>69o`k4~kx^Wc)?lG!}=WgV2x-rq?HN#jMr^B0; p5zMeb2q5MEX5{g&Aa%N&e*pr!t%ZZ}>w*9P002ovPDHLkV1gpUS8xCT literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/resize.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/resize.png new file mode 100644 index 0000000000000000000000000000000000000000..033898ecff2f3482f1b70bccab90aa364e3e7bbd GIT binary patch literal 651 zcmV;60(AX}P)ODIGgqEpP@&_N19qH`2vCl8&r zLv-|_XITT^h(@e~EV|R-J#`rrm5JS`_kkZe&)<9V{r%qi{hR@V!C){L3XZm^C2sUw7_+O{18K@ezBmw^jFa+Rof zJbu#u9dHrY0b-}4dO_8)tYC%~bOX4iMLElMAe+sG=X?P6fD~H>5hda(P@Ybw^8wqo znNFwsvunq3Xti3@YPF!#=`b7)5kip3Wae``&trFY_m0-`Ob;IdlTAd32m$B>&M%Ns zG8&EM;*-fFsZ?s^0#Zu4-7fuppL{+Ka2q%PBr1sGbt0ndz-uAIqh7Cv@B0h}19G|C z#*>@PCQ?c~&!bc-0enT(&KM>XnCrSWMfkZl;zTapx@H}re{zBh;42+A#;+uNC z{xCGR)^4})JdaAH0`ML93?$gHD@AEt$G~&oW1&z$N;w;!X!C)?dcA%Z_!%;Kz1~dx zH{cU0V4p?i*B+m!Sg6*wrv(JSKJWy10OWz|<#IUyu7>Qr_Wz>&9|QM*TY9}6HcW1m zA_jE?lc=+MNq@#rS?&ORR93?zfb+l=RO_6e3ik(#0^X<#Mg8}i=$lDY_vmOlK#3o? zuKN=B6|#Z;Jv?VC@eq9nX2eigP3Z4OsLcB;Kg-q$e}_fQ_-rBmPh)8@;b);$?*mKy l4F-e3U@#aA27_T!egoEe1Kem8z4l5Xj0__1W|K<6nh40gmQ>9h>C(6aFQT|5JC*au7lb9 z*iK?V$~zRWGeF)d&$8 z#2HuBwN@NML?DzXOlgZ>Vj-#sAk^UUG1D+Sf z*~S4N^guYosjA+FCPYLIffwMtBE}wm{63Ym7r=cm-&zk8q~QQPU|5>xy|7<3g)*R5 z(hW=6)~8VU5XCq=!e{*fe*;z7OM~tNe;bcM*Lvoc8Oib4TlOZ7zl9RM%P?odH}Ot? n3)RB@4;Y4F7=~dO#=qqYt+e7_7KA##00000NkvXXu0mjf(;mMP literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/stopIcon.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/stopIcon.png new file mode 100644 index 0000000000000000000000000000000000000000..d8ae0b20d0f43585d5d00bcd924c5d4da3fc5b66 GIT binary patch literal 1274 zcmVFk5vgKwAHB#tuBy?F-7iET@a634r!LZd!7uj`=KyrE7>n z0}y|EqQaKDTU;k$Da-}{+Ffm2Zq8G6GL+;cH?16R8S(R1d6Dpo^z5P%J!@7oM4NnW z4+}5d)8aY=Q~tI9?7H`kd7Ddhf2k;$hwEzreqj4R@Ze9j$S^E}|9gPw=BlabSfyd} zsseRQ@{Eh#_?pVoo-RoyD*)<|4f%})TIK~@SbXuGhuS>bVft^+I%5s|^IDM7xFSOL z@*mxw!+zo6hv#nEaF=!y%0~q8df{=W8K$9Z0MO<~4EH};sObeItUo4>7dJcW=jSli zf%T>@bu6uzDjye#?FVb*`4@X9g6AGH?JLb?SK|JlC;nX38P9hZ4|2K~g?Lge*0c4f z92aNo(XU{*)dz=9SDp~2WZ{#=+T-Z{H~ItbiIUmp>zH~NG&3nt0-)8aXt|VTV#8pt zX=6!_Hdjs8&-4PMrLldjvAV+^9r8uRQQXtBbSVru*#Ll4C&q+%1ri<&^5fMDG^Hd( z%h%FXFoZ+AI3|HI;91!KV7R#Gl@37@#{1my@l*i*;RHK|5b%W_*I_~QDd|xHAXqu! zQbLFl_C%GTV*eG+;fadZl>oeXA!=Rs=eT{MAUaWq6h1`d<~eI zGx0zwCPXuqT&~S;D$+6Lmg%2)ed(P2B!kxLj2)@z@NR>tEm@E7;vPVXM9JxaVk8vqhSh-LURMTu;%kP%VbS^YQQNjHh8aBxq=b%>V!Z07*qoM6N<$f?Z8srT_o{ literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/warn.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/markers/warn.png new file mode 100644 index 0000000000000000000000000000000000000000..e2e9f757f515ded172e6f72c3ce55bbe15579649 GIT binary patch literal 1747 zcmV;^1}yoBP)P001cn1^@s6z>|W`000J>NklgF+#9zZY7a#;@J(5X0e&McXK2n7+jhR}<0i-1U5t`>D@ zJSJ*^swjdwq0keUf9!BETXZhVyjqS4&z|?2HdJnOU-HYF_xSyu=XsCkdtVv=(53>u zME@3F*5J;OHwJNJdWK(ivQ??rr&t7M)1yRas=d_yYH>g+p#{( zm+NoyW%|8bNfUkAMrabri(FY#Dqr5%zhZA&e^iALHXiJOFYA7Qt##L_a?_z6SW{&J zVeyp#G&snW>SO{*%d9CGVM}xic~V`MU$)*JU1Nbw2YX?ywi}|VZ4g;$g)p^+DoLHR zZ^Zr$S_=f^oU`+!4K^?NsU;H{;bhhex#H7(!s52U&FJ}OHQf-VvVd?Btj2MhF|zQI z%l~jBr~6T7^_WIHC1>8j&bv`c18g|Z3*l-jgeoml1{oh++Y75JI)RgU>LEY<%)C)X zI2rZ2kb>s^4cZuYeq3!A}DS`X~>Nd;+A$4e;ZwyD<1@2!8$ZKJ3w%!6)+sCALy+bKwyk zqKCS6qEGWmJ)97b-QXY|`<0lS5THkEtGgjE>ojOvuftfM&Ugd-rQg9C+|FdGM)HXs z(IxsA$&r(xg_j^4=hC;>s;1UF*Wp1I-2~sEF zZYgb?&`4bM1qjM*hR`yr3qJ(;L>Kj2XpBUy+)t((6z;bIr@-ihFNVAl4<#?{TWIaQ zIi>;YjXS_iIfNb?!N1t-!Y6vZvW5ZXE{%l7imzV9NvV4nf#G`Pcex;#@}?EINwsk7 z>UC=SlJC*b5a>-mgHP%q2+qF;cbNx ztCV@{s&fPsSt#;i@#G-m$as&$gLaG}ebOrtS5*22&glbhMH_fz8(~qVVN!VIVCKzg z1$U9^93(E%Ur9v_R*h#!t)Ce+#)+m(q^zCq%g&L-!E zC&et9WrT(49pl0S`?=DK7=`+;`CB!wP3ta97b)XdJ8K=@`DXOk0Q0};7zNT!`k4t@ z+)=9S)4p(jEGm5!qq)PDTmXiw3qDM19|fiylc@LtiQ=}Kfb#w&ckv^7tBj;cfwtY$q?IdliYlg zqh@4;IyW)OFPQPw4z|JsAEb7`+@yA@Q8SXQT#;upV`QNJ59Bg5m(jci3`0T4X-&^GU6)x7$Vi0XMWB(2hrdK^!hq0 zt!bDg$Hh)-9L62h`&{0PBf%7vM>69o`k4~kx^Wc)?lG!}=WgV2x-rq?HN#jMr^B0; p5zMeb2q5MEX5{g&Aa%N&e*pr!t%ZZ}>w*9P002ovPDHLkV1gpUS8xCT literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/thumbnail.png b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/img/thumbnail.png new file mode 100644 index 0000000000000000000000000000000000000000..eaea0e7a91ca0b38d6e9c5b93ead3aa2b946a127 GIT binary patch literal 9816 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 Q0H~yQ(+K(QhJEz^0fJ*qM*si- literal 0 HcmV?d00001 diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/include/commons.jag b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/include/commons.jag new file mode 100644 index 000000000..c0c40ab42 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/include/commons.jag @@ -0,0 +1,39 @@ +<% +/* + ~ Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. + ~ + ~ WSO2 Inc. licenses this file to you 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. + */ +var escapeSiddhiql = function (s) { + XML_CHAR_MAP = { + '<': '<', + '>': '>', + '&': '&', + '"': '"', + "'": ''' + }; + return s.replace(/[<>&"']/g, function (ch) { + return XML_CHAR_MAP[ch]; + }); +}; + +var cepInfo = function () { + var configuration = require("../conf/cep_info.json"); + return configuration; +}; + +// TODO: move to new datastore api +var dataStore = new MetadataStore("admin", "admin"); +%> \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/include/database.jag b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/include/database.jag new file mode 100644 index 000000000..7e5325cc1 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/include/database.jag @@ -0,0 +1,20 @@ +<% +/* + ~ Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. + ~ + ~ WSO2 Inc. licenses this file to you 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. + */ + var configuration = require('../conf/database.json'); +%> diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/include/store_alerts.jag b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/include/store_alerts.jag new file mode 100644 index 000000000..5b1b3b825 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/include/store_alerts.jag @@ -0,0 +1,150 @@ +<% +/* + ~ Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. + ~ + ~ WSO2 Inc. licenses this file to you 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. + */ + +// TODO: change the name of this jaggery file even thoe it says 'store_alerts' it is actually removing the alerts from the data store as well o.O wired + +var dataStore = require('../include/commons.jag').dataStore; +var log = new Log(); +var deviceIdSeperator = "---"; + +function store(parameterKeyName, resourceContents, executionPlan, optional, deviceId) { + log.info("DEBUG:*** resourceContents:" + resourceContents); + if (executionPlan == "Speed") { + var currentLimit; + var speedFile = "speed" + deviceIdSeperator + ".json"; + try { + currentLimit = dataStore.get(speedFile); + } + catch (e) { + log.info("DEBUG:*** Catch error:" + e.message); + currentLimit = dataStore.newResource(); + currentLimit.mediaType = 'application/json'; + currentLimit.description = "User define speed limit for display alerts."; + } + currentLimit.content = String('{"speedLimit": ' + resourceContents + '}'); + dataStore.put(speedFile, currentLimit); + log.info("DEBUG:*** Current speed limit set to:" + currentLimit.content); + } + else if (executionPlan == "Within") { + try { + var res = dataStore.get("geo/alerts/within"); + } + catch (e) { + var geo = dataStore.newCollection(); + var alerts = dataStore.newCollection(); + var within = dataStore.newCollection(); + + dataStore.put("geo", geo); + dataStore.put("alerts", alerts); + dataStore.put("within", within); + + } + log.info("DEBUG:****** resourceContents = " + String('{"geoJson": ' + resourceContents + '}')); + var resource = dataStore.newResource(); + resource.addProperty("queryName", optional.queryName); + resource.addProperty("areaName", optional.customName); + resource.mediaType = 'application/json'; + resource.content = String(resourceContents); + dataStore.put(String("geo/alerts/within/" + optional.queryName + deviceIdSeperator + deviceId + ".json"), resource); + } else if (executionPlan == "Proximity") { + + try { + var res = dataStore.get("geo/alerts/proximity"); + } + catch (e) { + var geo = dataStore.newCollection(); + var alerts = dataStore.newCollection(); + var proximity = dataStore.newCollection(); + + dataStore.put("geo", geo); + dataStore.put("alerts", alerts); + dataStore.put("proximity", proximity); + } + log.info("DEBUG:****** resourceContents = " + resourceContents); + var resource = dataStore.newResource(); + resource.addProperty("proximityDistance", resourceContents.proximityDistance); + resource.addProperty("proximityTime", resourceContents.proximityTime); + dataStore.put(String("geo/alerts/proximity/" + optional.executionPlan + deviceIdSeperator + deviceId + ".json"), resource); + + } else if (executionPlan == "Stationery") { + + try { + var res = dataStore.get("geo/alerts/stationery"); + } + catch (e) { + var geo = dataStore.newCollection(); + var alerts = dataStore.newCollection(); + var stationery = dataStore.newCollection(); + + dataStore.put("geo", geo); + dataStore.put("alerts", alerts); + dataStore.put("stationery", stationery); + } + log.info("DEBUG:****** resourceContents = " + resourceContents.geoFenceGeoJSON); + var resource = dataStore.newResource(); + resource.addProperty("queryName", optional.queryName); + resource.addProperty("stationeryName", optional.customName); + resource.addProperty("stationeryTime", resourceContents.stationeryTime); + resource.addProperty("fluctuationRadius", resourceContents.fluctuationRadius); + resource.content = String(resourceContents.geoFenceGeoJSON); + dataStore.put(String("geo/alerts/stationery/" + optional.queryName + deviceIdSeperator + deviceId + ".json"), resource); + + } else if (executionPlan == "Traffic") { + + try { + var res = dataStore.get("geo/alerts/traffic"); + } + catch (e) { + var geo = dataStore.newCollection(); + var alerts = dataStore.newCollection(); + var traffic = dataStore.newCollection(); + + dataStore.put("geo", geo); + dataStore.put("alerts", alerts); + dataStore.put("traffic", traffic); + } + log.info("DEBUG:****** resourceContents = " + resourceContents.geoFenceGeoJSON); + var resource = dataStore.newResource(); + resource.addProperty("queryName", optional.queryName); + resource.addProperty("areaName", optional.customName); + resource.content = String(resourceContents); + dataStore.put(String("geo/alerts/traffic/" + optional.queryName + deviceIdSeperator + deviceId + ".json"), resource); + + } + +} + +function remove(queryName, id, deviceId) { + var path = ""; + try { + if (id == "WithIn") { + path = "geo/alerts/within/" + queryName + deviceIdSeperator + deviceId + ".json"; + } else if (id == "Stationery") { + path = "geo/alerts/stationery/" + queryName + deviceIdSeperator + deviceId + ".json"; + } else if (id == "Traffic") { + path = "geo/alerts/traffic/" + queryName + deviceIdSeperator + deviceId + ".json"; + } + log.info("DEBUG: path = " + path); + dataStore.remove(path); + } + catch (e) { + log.info("The requested resource " + path + " was not found on this server. That’s all we know."); // Inspired by google 404 message + } +} +%> \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/index.xml b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/index.xml new file mode 100644 index 000000000..f5900bb29 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/index.xml @@ -0,0 +1,871 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+
+ + +
+ + + + + + +
+
+ + + + +
+
+ +
+
+
+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+

ID

+ +
+
Information
+ +

+
Speed km/h
+
Heading
+ +
+
+ +
+
+

ID

+ +
+
Information
+ +

+
+
+ +
+
+

ID

+
+
Severity
+ +

+
+
+
Information
+ +

+
+
+ +
+
+
+ + + Can use this name to locate the execution plan + + + + Name of the selected area(i.e colombo) +
+
+
+
+ +
+
+ +
+
+ Export +
+
+
+
+
+
+
+
+
+ + + Can use this name to locate the execution plan + + + + Name of the selected area(i.e colombo) + + + + + + +
+
+
+
+ +
+
+ +
+
+ Export +
+
+
+
+
+
+
+
+ + + Can use this name to locate the execution plan + + + + Name of the selected area(i.e colombo) +
+
+
+
+ +
+
+ +
+
+ Export +
+
+
+
+
+
+ + ]]> + + \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/app.js b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/app.js new file mode 100644 index 000000000..44894d3b5 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/app.js @@ -0,0 +1,312 @@ +/* + * Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. + * + * WSO2 Inc. licenses this file to you 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. + */ + + +$(".modal").draggable({ + handle: ".modal-header" +}); + +//Clear modal content for reuse the wrapper by other functions +$('body').on('hidden.bs.modal', '.modal', function () { + $(this).removeData('bs.modal'); +}); + +/*Map layer configurations*/ +var map; + +initialLoad(); + +function initialLoad() { + if (document.getElementById('map') == null) { + setTimeout(initialLoad, 500); // give everything some time to render + } else { + initializeMap(); + getTileServers(); + loadWms(); + processAfterInitializationMap(); + //Access gps and make zoom to server location as map center + //navigator.geolocation.getCurrentPosition(success, error); + $("#loading").hide(); + } +} + + +//function success(position) { +// var browserLatitude = position.coords.latitude; +// var browserLongitude = position.coords.longitude; +// map.setView([browserLatitude, browserLongitude]); +// map.setZoom(14); +// $.UIkit.notify({ +// message: "Map view set to browser's location", +// status: 'info', +// timeout: ApplicationOptions.constance.NOTIFY_INFO_TIMEOUT, +// pos: 'top-center' +// }); +//} +// +//function error() { +// $.UIkit.notify({ +// message: "Unable to find browser location!", +// status: 'warning', +// timeout: ApplicationOptions.constance.NOTIFY_WARNING_TIMEOUT, +// pos: 'top-center' +// }); +//} + + +function initializeMap() { + if (typeof(map) !== 'undefined') { + map.remove(); + } + + + if (document.getElementById('map') == null) { + console.log("no map"); + } else { + } + + map = L.map("map", { + zoom: 14, + center:[51.548525, 0.111749], + layers: [defaultOSM, defaultTFL], + zoomControl: false, + attributionControl: false, + maxZoom: 20, + maxNativeZoom: 18 + }); + + map.on('click', function (e) { + $.UIkit.offcanvas.hide();//[force = false] no animation + }); + + map.on('zoomend', function () { + if (map.getZoom() < 14) { + // remove busStops + var layer; + for (var key in currentSpatialObjects) { + if (currentSpatialObjects.hasOwnProperty(key)) { + object = currentSpatialObjects[key]; + if (object.type == "STOP") + map.removeLayer(object.geoJson); + } + } + console.log("removed busStops from map"); + } else { + + var layer; + for (var key in currentSpatialObjects) { + if (currentSpatialObjects.hasOwnProperty(key)) { + object = currentSpatialObjects[key]; + if (object.type == "STOP") + map.addLayer(object.geoJson); + } + } + console.log("added busStops to map"); + } + + }); + + +} + +/* Attribution control */ +function updateAttribution(e) { + $.each(map._layers, function (index, layer) { + if (layer.getAttribution) { + $("#attribution").html((layer.getAttribution())); + } + }); +} + +var attributionControl; +var groupedOverlays; +var layerControl; + +function processAfterInitializationMap(){ + attributionControl = L.control({ + position: "bottomright" + }); + attributionControl.onAdd = function (map) { + var div = L.DomUtil.create("div", "leaflet-control-attribution"); + div.innerHTML = "Attribution"; + return div; + }; + //map.addControl(attributionControl); + + //L.control.fullscreen({ + // position: 'bottomright' + //}).addTo(map); + L.control.zoom({ + position: "bottomright" + }).addTo(map); + + groupedOverlays = { + "Web Map Service layers": {} + }; + + layerControl = L.control.groupedLayers(baseLayers, groupedOverlays, { + collapsed: true + }).addTo(map); + + //L.control.layers(baseLayers).addTo(map); + //map.addLayer(defaultTFL); +} + +/* Highlight search box text on click */ +$("#searchbox").click(function () { + $(this).select(); +}); + +/* TypeAhead search functionality */ + +var substringMatcher = function () { + return function findMatches(q, cb) { + var matches, substrRegex; + matches = []; + substrRegex = new RegExp(q, 'i'); + $.each(currentSpatialObjects, function (i, str) { + if (substrRegex.test(i)) { + matches.push({value: i}); + } + }); + + cb(matches); + }; +}; + +var chart; +function createChart() { + chart = c3.generate({ + bindto: '#chart_div', + data: { + columns: [ + ['speed'] + ] + }, + subchart: { + show: true + }, + axis: { + y: { + label: { + text: 'Speed', + position: 'outer-middle' + } + } + }, + legend: { + show: false + } + }); +} + +var predictionChart; +function createPredictionChart() { + predictionChart = c3.generate({ + bindto: '#prediction_chart_div', + data: { + x: 'x', + columns: [ + ['traffic'] + ] + }, + subchart: { + show: true + }, + axis: { + y: { + label: { + text: 'Traffic', + position: 'outer-middle' + } + }, + x: { + label: { + text: 'UTC hour for today', + position: 'outer-middle' + } + } + + }, + legend: { + show: false + } + }); +} + +$('#searchbox').typeahead({ + hint: true, + highlight: true, + minLength: 1 + }, + { + name: 'speed', + displayKey: 'value', + source: substringMatcher() + }).on('typeahead:selected', function ($e, datum) { + objectId = datum['value']; + focusOnSpatialObject(objectId) + }); + +var toggled = false; +function focusOnSpatialObject(objectId) { + console.log("Selecting" + objectId); + var spatialObject = currentSpatialObjects[objectId];// (local) + if (!spatialObject) { + $.UIkit.notify({ + message: "Spatial Object " + objectId + " not in the Map!!", + status: 'warning', + timeout: ApplicationOptions.constance.NOTIFY_WARNING_TIMEOUT, + pos: 'top-center' + }); + return false; + } + clearFocus(); // Clear current focus if any + selectedSpatialObject = objectId; // (global) Why not use 'var' other than implicit declaration http://stackoverflow.com/questions/1470488/what-is-the-function-of-the-var-keyword-and-when-to-use-it-or-omit-it#answer-1471738 + + console.log("Selected " + objectId + " type " + spatialObject.type); + if (spatialObject.type == "area") { + spatialObject.focusOn(map); + return true; + } + + map.setView(spatialObject.marker.getLatLng(), 15, {animate: true}); // TODO: check the map._layersMaxZoom and set the zoom level accordingly + + $('#objectInfo').find('#objectInfoId').html(selectedSpatialObject); + spatialObject.marker.openPopup(); + if (!toggled) { + $('#objectInfo').animate({width: 'toggle'}, 100); + toggled = true; + } + getAlertsHistory(objectId); + spatialObject.drawPath(); + setTimeout(function () { + createChart(); + chart.load({columns: [spatialObject.speedHistory.getArray()]}); + }, 100); +} + + +// Unfocused on current searched spatial object +function clearFocus() { + if (selectedSpatialObject) { + spatialObject = currentSpatialObjects[selectedSpatialObject]; + spatialObject.removeFromMap(); + selectedSpatialObject = null; + } +} \ No newline at end of file diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/application_options.js b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/application_options.js new file mode 100644 index 000000000..9ce922b5a --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/application_options.js @@ -0,0 +1,78 @@ +/* + * Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. + * + * WSO2 Inc. licenses this file to you 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. + */ +var ApplicationOptions = { + colors: { + states: { + NORMAL: 'blue', + WARNING: 'blue', + OFFLINE: 'grey', + ALERTED: 'red', + UNKNOWN: 'black' // TODO: previous color #19FFFF , change this if black is not user friendly ;) + }, + application: { + header: 'grey' + } + }, + constance:{ + CEP_WEB_SOCKET_OUTPUT_ADAPTOR_NAME: 'org.wso2.geo.FusedSpatialEvent', + CEP_ON_ALERT_WEB_SOCKET_OUTPUT_ADAPTOR_NAME: 'org.wso2.geo.AlertsNotifications', + CEP_Traffic_STREAM_WEB_SOCKET_OUTPUT_ADAPTOR_NAME: 'DefaultWebsocketOutputAdaptorOnTrafficStream', + CEP_WEB_SOCKET_OUTPUT_ADAPTOR_WEBAPP_NAME: 'secured-websocket', + TENANT_INDEX: 't', + COLON : ':', + PATH_SEPARATOR : '/', + VERSION: '1.0.0', + + SPEED_HISTORY_COUNT: 20, + NOTIFY_INFO_TIMEOUT: 1000, + NOTIFY_SUCCESS_TIMEOUT: 1000, + NOTIFY_WARNING_TIMEOUT: 3000, + NOTIFY_DANGER_TIMEOUT: 5000 + }, + messages:{ + app:{ + + } + }, + leaflet: { + iconUrls: { + normalMovingIcon: '/portal/store/carbon.super/fs/gadget/geo-dashboard/img/markers/object-types/default/moving/alerted.png', + alertedMovingIcon: '/portal/store/carbon.super/fs/gadget/geo-dashboard/img/markers/moving/arrow_alerted.png', + offlineMovingIcon: '/portal/store/carbon.super/fs/gadget/geo-dashboard/img/markers/moving/arrow_offline.png', + warningMovingIcon: '/portal/store/carbon.super/fs/gadget/geo-dashboard/img/markers/moving/arrow_warning.png', + defaultMovingIcon: '/portal/store/carbon.super/fs/gadget/geo-dashboard/img/markers/moving/arrow_normal.png', + + normalNonMovingIcon: '/portal/store/carbon.super/fs/gadget/geo-dashboard/img/markers/non_moving/dot_normal.png', + alertedNonMovingIcon: '/portal/store/carbon.super/fs/gadget/geo-dashboard/img/markers/non_moving/dot_alerted.png', + offlineNonMovingIcon: '/portal/store/carbon.super/fs/gadget/geo-dashboard/img/markers/non_moving/dot_offline.png', + warningNonMovingIcon: '/portal/store/carbon.super/fs/gadget/geo-dashboard/img/markers/non_moving/dot_warning.png', + defaultNonMovingIcon: '/portal/store/carbon.super/fs/gadget/geo-dashboard/img/markers/non_moving/dot_normal.png', + + normalPlaceIcon: '/portal/store/carbon.super/fs/gadget/geo-dashboard/img/markers/places/marker-icon.png', + alertedPlaceIcon: '/portal/store/carbon.super/fs/gadget/geo-dashboard/img/markers/places/redMarker.png', + offlinePlaceIcon: '/portal/store/carbon.super/fs/gadget/geo-dashboard/img/markers/places/ashMarker.png', + warningPlaceIcon: '/portal/store/carbon.super/fs/gadget/geo-dashboard/img/markers/places/pinkMarker.png', + defaultPlaceIcon: '/portal/store/carbon.super/fs/gadget/geo-dashboard/img/markers/places/marker-icon.png', + + defaultIcon: '/portal/store/carbon.super/fs/gadget/geo-dashboard/img/markers/moving/default_icons/marker-icon.png', + resizeIcon: '/portal/store/carbon.super/fs/gadget/geo-dashboard/img/markers/resize.png', + stopIcon: '/portal/store/carbon.super/fs/gadget/geo-dashboard/img/markers/stopIcon.png' + + } + } +}; diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/bootstrap-wizard-lib/LICENSE b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/bootstrap-wizard-lib/LICENSE new file mode 100644 index 000000000..6aee4f8c2 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/bootstrap-wizard-lib/LICENSE @@ -0,0 +1,19 @@ +Copyright (C) 2013 Panopta, Andrew Moffat + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/bootstrap-wizard-lib/bootstrap-wizard.js b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/bootstrap-wizard-lib/bootstrap-wizard.js new file mode 100644 index 000000000..b0bc7f7f2 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/bootstrap-wizard-lib/bootstrap-wizard.js @@ -0,0 +1,1171 @@ +/* + * Copyright (C) 2013 Panopta, Andrew Moffat + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ +(function ($) { + $.fn.wizard = function(args) { + return new Wizard(this, args); + }; + + $.fn.wizard.logging = false; + + var WizardCard = function(wizard, card, index, prev, next) { + this.wizard = wizard; + this.index = index; + this.prev = prev; + this.next = next; + this.el = card; + this.title = card.find("h3").first().text(); + this.name = card.data("cardname") || this.title; + + this.nav = this._createNavElement(this.title, index); + + this._disabled = false; + this._loaded = false; + this._events = {}; + }; + + WizardCard.prototype = { + select: function() { + this.log("selecting"); + if (!this.isSelected()) { + this.nav.addClass("active"); + this.el.show(); + + if (!this._loaded) { + this.trigger("loaded"); + this.reload(); + } + + this.trigger("selected"); + } + + + /* + * this is ugly, but we're handling the changing of the wizard's + * buttons here, in the WizardCard select. so when a card is + * selected, we're figuring out if we're the first card or the + * last card and changing the wizard's buttons via the guts of + * the wizard + * + * ideally this logic should be encapsulated by some wizard methods + * that we can call from here, instead of messing with the guts + */ + var w = this.wizard; + + // The back button is only disabled on this first card... + w.backButton.toggleClass("disabled", this.index == 0); + + if (this.index >= w._cards.length-1) { + this.log("on last card, changing next button to submit"); + + w.changeNextButton(w.args.buttons.submitText, "btn-success"); + w._readyToSubmit = true; + w.trigger("readySubmit"); + } + else { + w._readyToSubmit = false; + w.changeNextButton(w.args.buttons.nextText, "btn-primary"); + } + + return this; + }, + + _createNavElement: function(name, i) { + var li = $('
  • '); + var a = $(''); + a.data("navindex", i); + li.append(a); + a.append(' '); + a.append(name); + return li; + }, + + markVisited: function() { + this.log("marking as visited"); + this.nav.addClass("already-visited"); + this.trigger("markVisited"); + return this; + }, + + unmarkVisited: function() { + this.log("unmarking as visited"); + this.nav.removeClass("already-visited"); + this.trigger("unmarkVisited"); + return this; + }, + + deselect: function() { + this.nav.removeClass("active"); + this.el.hide(); + this.trigger("deselect"); + return this; + }, + + enable: function() { + this.log("enabling"); + + // Issue #38 Hiding navigation link when hide card + // Awaiting approval + // + // this.nav.removeClass('hide'); + + this.nav.addClass("active"); + this._disabled = false; + this.trigger("enabled"); + return this; + }, + + disable: function(hideCard) { + this.log("disabling"); + this._disabled = true; + this.nav.removeClass("active already-visited"); + if (hideCard) { + this.el.hide(); + // Issue #38 Hiding navigation link when hide card + // Awaiting approval + // + // this.nav.addClass('hide'); + } + this.trigger("disabled"); + return this; + }, + + isDisabled: function() { + return this._disabled; + }, + + alreadyVisited: function() { + return this.nav.hasClass("already-visited"); + }, + + isSelected: function() { + return this.nav.hasClass("active"); + }, + + reload: function() { + this._loaded = true; + this.trigger("reload"); + return this; + }, + + on: function() { + return this.wizard.on.apply(this, arguments); + }, + + trigger: function() { + this.callListener("on"+arguments[0]); + return this.wizard.trigger.apply(this, arguments); + }, + + /* + * displays an alert box on the current card + */ + toggleAlert: function(msg, toggle) { + this.log("toggling alert to: " + toggle); + + toggle = typeof(toggle) == "undefined" ? true : toggle; + + if (toggle) {this.trigger("showAlert");} + else {this.trigger("hideAlert");} + + var div; + var alert = this.el.children("h3").first().next("div.alert"); + + if (alert.length == 0) { + /* + * we're hiding anyways, so no need to create anything. + * we'll do that if we ever are actually showing the alert + */ + if (!toggle) {return this;} + + this.log("couldn't find existing alert div, creating one"); + div = $("
    "); + div.addClass("alert"); + div.addClass("hide"); + div.insertAfter(this.el.find("h3").first()); + } + else { + this.log("found existing alert div"); + div = alert.first(); + } + + if (toggle) { + if (msg != null) { + this.log("setting alert msg to", msg); + div.html(msg); + } + div.show(); + } + else { + div.hide(); + } + return this; + }, + + /* + * this looks for event handlers embedded into the html of the + * wizard card itself, in the form of a data- attribute + */ + callListener: function(name) { + // a bug(?) in jquery..can't access data- if name is camelCase + name = name.toLowerCase(); + + this.log("looking for listener " + name); + var listener = window[this.el.data(name)]; + if (listener) { + this.log("calling listener " + name); + var wizard = this.wizard; + + try { + var vret = listener(this); + } + catch (e) { + this.log("exception calling listener " + name + ": ", e); + } + } + else { + this.log("didn't find listener " + name); + } + }, + + problem: function(toggle) { + this.nav.find("a").toggleClass("wizard-step-error", toggle); + }, + + validate: function() { + var failures = false; + var self = this; + + /* + * run all the validators embedded on the inputs themselves + */ + this.el.find("[data-validate]").each(function(i, el) { + self.log("validating individiual inputs"); + el = $(el); + + var v = el.data("validate"); + if (!v) {return;} + + var ret = { + status: true, + title: "Error", + msg: "" + }; + + var vret = window[v](el); + $.extend(ret, vret); + + // Add-On + // This allows the use of a INPUT+BTN used as one according to boostrap layout + // for the wizard it is required to add an id with btn-(ID of Input) + // this will make sure the popover is drawn on the correct element + if ( $('#btn-' + el.attr('id')).length === 1 ) { + el = $('#btn-' + el.attr('id')); + } + + if (!ret.status) { + failures = true; + + // Updated to show error on correct form-group + el.parents("div.form-group").toggleClass("has-error", true); + + // This allows the use of a INPUT+BTN used as one according to boostrap layout + // for the wizard it is required to add an id with btn-(ID of Input) + // this will make sure the popover is drawn on the correct element + if ( $('#btn-' + el.attr('id')).length === 1 ) { + el = $('#btn-' + el.attr('id')); + } + + self.wizard.errorPopover(el, ret.msg); + } else { + el.parents("div.form-group").toggleClass("has-error", false); + + // This allows the use of a INPUT+BTN used as one according to boostrap layout + // for the wizard it is required to add an id with btn-(ID of Input) + // this will make sure the popover is drawn on the correct element + if ( $('#btn-' + el.attr('id')).length === 1 ) { + el = $('#btn-' + el.attr('id')); + } + + try { + el.popover("destroy"); + } + /* + * older versions of bootstrap don't have a destroy call + * for popovers + */ + catch (e) { + el.popover("hide"); + } + } + }); + this.log("after validating inputs, failures is", failures); + + /* + * run the validator embedded in the card + */ + var cardValidator = window[this.el.data("validate")]; + if (cardValidator) { + this.log("running html-embedded card validator"); + var cardValidated = cardValidator(this); + if (typeof(cardValidated) == "undefined" || cardValidated == null) { + cardValidated = true; + } + if (!cardValidated) failures = true; + this.log("after running html-embedded card validator, failures is", failures); + } + + /* + * run the validate listener + */ + this.log("running listener validator"); + var listenerValidated = this.trigger("validate"); + if (typeof(listenerValidated) == "undefined" || listenerValidated == null) { + listenerValidated = true; + } + if (!listenerValidated) failures = true; + this.log("after running listener validator, failures is", failures); + + var validated = !failures; + if (validated) { + this.log("validated, calling listeners"); + this.trigger("validated"); + } + else { + this.log("invalid"); + this.trigger("invalid"); + } + return validated; + }, + + log: function() { + if (!window.console || !$.fn.wizard.logging) {return;} + var prepend = "card '"+this.name+"': "; + var args = [prepend]; + args.push.apply(args, arguments); + + console.log.apply(console, args); + }, + + isActive: function() { + return this.nav.hasClass("active"); + } + }; + + Wizard = function(markup, args) { + + /* TEMPLATE */ + this.wizard_template = [ + '' + ]; + + this.args = { + keyboard: true, + backdrop: true, + show: false, + submitUrl: "", + showCancel: false, + showClose: true, + progressBarCurrent: false, + increaseHeight: 0, + contentHeight: 400, + contentWidth: '50%', + buttons: { + cancelText: "Cancel", + nextText: "Next", + backText: "Back", + submitText: "Submit", + submittingText: "Submitting...", + }, + formClass: "form-horizontal" + }; + + $.extend(this.args, args || {}); + + this._create(markup); + }; + + Wizard.prototype = { + log: function() { + if (!window.console || !$.fn.wizard.logging) {return;} + var prepend = "wizard "+this.el.id+": "; + var args = [prepend]; + args.push.apply(args, arguments); + console.log.apply(console, args); + }, + + _create: function(markup) { + this.markup = $(markup); + this.title = this.markup.data('title'); + this.submitCards = this.markup.find(".wizard-error,.wizard-failure,.wizard-success,.wizard-loading"); + this.el = $(this.wizard_template.join('\n')); + $('body').append(this.el); + + this.modal = this.el.modal({ + keyboard: this.args.keyboard, + show: this.args.show, + backdrop: this.args.backdrop + }); + + this.dimensions = { + contentHeight: this.args.contentHeight, + contentWidth: this.args.contentWidth + }; + this.dialog = this.modal.find('.wizard-dialog'); + this.content = this.modal.find('.wizard-content'); + this.header = this.modal.find('.wizard-header'); + this.body = this.modal.find('.wizard-body'); + this.wizardSteps = this.modal.find('.wizard-steps'); + this.wizardCards = this.modal.find('.wizard-cards'); + this.wizardCardContainer = this.modal.find('.wizard-card-container'); + this.wizardCardContainer + .append(this.markup.find('.wizard-card')) + .append(this.submitCards); + this.navContainer = this.modal.find('.wizard-nav-container'); + this.navList = this.modal.find('.wizard-nav-list'); + this.progressContainer = this.modal.find('.wizard-progress-container'); + this.progress = this.progressContainer.find('.progress-bar'); + this.closeButton = this.modal.find('button.wizard-close.close'); + this.cardsContainer = this.modal.find('wizard-cards-container'); + this.form = this.modal.find('form'); + this.footer = this.modal.find(".wizard-footer"); + this.cancelButton = this.footer.find(".wizard-cancel"); + this.backButton = this.footer.find(".wizard-back"); + this.nextButton = this.footer.find(".wizard-next"); + + this._cards = []; + this.cards = {}; + this._readyToSubmit = false; + this.percentComplete = 0; + this._submitting = false; + this._events = {}; + this._firstShow = true; + + this._createCards(); + + this.nextButton.click(this, this._handleNextClick); + this.backButton.click(this, this._handleBackClick); + + this.cancelButton.text(this.args.buttons.cancelText); + this.backButton.text(this.args.buttons.backText); + this.nextButton.text(this.args.buttons.nextText); + + // Apply Form Class(es) + this.form.addClass(this.args.formClass); + + // Register Array Holder for popovers + this.popovers = []; + + var self = this; + var _close = function() { + self.reset(); + self.close(); + self.trigger("closed"); + }; + + // Register Close Button + this.closeButton.click(_close); + this.cancelButton.click(_close); + + this.wizardSteps.on("click", "li.already-visited a.wizard-nav-link", this, + function(event) { + var index = parseInt($(event.target).data("navindex")); + event.data.setCard(index); + }); + + if ( this.title.length != 0 ) { + this.setTitle(this.title); + } + + this.on("submit", this._defaultSubmit); + + // Set Modal Dimensions + this.autoDimensions(); + }, + + autoDimensions: function() { + // DO NOT REMOVE DISPLAY ; Temporary display is required for calculation + this.modal.css('display', 'block'); + + this.dimensions.header = this.header.outerHeight(true); + + // Navigation Pane is dyanmic build on card content + // Navigation Pane === BASE Inner Content Height + this.dimensions.navigation = this.wizardSteps.outerHeight(true); + if ( this.dimensions.navigation < this.dimensions.contentHeight ) { + this.dimensions.navigation = this.dimensions.contentHeight; + this.navContainer.height( (this.dimensions.contentHeight-30) - this.progressContainer.outerHeight(true)); + } + + // Dimension Alias ( Body Height === (Navigation Height) ) + this.dimensions.body = this.dimensions.navigation; + + // Apply OuterHeight of navigation to it's parent wizardSteps + this.wizardSteps.height(this.dimensions.body); + + // Modal Height === (Header + Content) + this.dimensions.modal = (this.dimensions.header + this.dimensions.navigation); + this.content.height(this.dimensions.modal + 'px'); + this.dialog.width(this.dimensions.contentWidth); + + this.body.height(this.dimensions.body + 'px'); + this.wizardCards.height(this.dimensions.body + 'px'); + + // Footer Height + this.dimensions.footer = this.footer.outerHeight(true); + + // Card Container === (Body - Footer) + this.dimensions.cardContainer = (this.dimensions.body - this.dimensions.footer); + this.wizardCardContainer.height(this.dimensions.cardContainer); + + // Reposition + this.dimensions.offset = ($(window).height() - this.dialog.height()) / 2; + this.dialog.css({ + 'margin-top': this.dimensions.offset + 'px', + 'padding-top': 0 + }); + + // DO NOT REMOVE NEXT LINE + this.modal.css('display', ''); + }, + + setTitle: function(title) { + this.log("setting title to", title); + this.modal.find(".wizard-title").first().text(title); + return this; + }, + + setSubtitle: function(title) { + this.log("setting subtitle to", title); + this.modal.find(".wizard-subtitle").first().text(title); + return this; + }, + + errorPopover: function(el, msg, allowHtml) { + this.log("launching popover on", el); + allowHtml = typeof allowHtml !== "undefined" ? allowHtml : false; + var popover = el.popover({ + content: msg, + trigger: "manual", + html: allowHtml, + container: el.parents('.form-group') + }).addClass("error-popover").popover("show").next(".popover"); + + el.parents('.form-group').find('.popover').addClass("error-popover"); + + this.popovers.push(el); + + return popover; + }, + + destroyPopover: function(pop) { + pop = $(pop); + + /* + * this is the element that the popover was created for + */ + try { + pop.popover("destroy"); + } + /* + * older versions of bootstrap don't have a destroy call + * for popovers + */ + catch (e) { + pop.popover("hide"); + } + }, + + hidePopovers: function(el) { + this.log("hiding all popovers"); + var self = this; + + $.each(this.popovers, function(i, p) { + self.destroyPopover(p); + }); + + this.modal.find('.has-error').removeClass('has-error'); + this.popovers = []; + }, + + eachCard: function(fn) { + $.each(this._cards, fn); + return this; + }, + + getActiveCard: function() { + this.log("getting active card"); + var currentCard = null; + + $.each(this._cards, function(i, card) { + if (card.isActive()) { + currentCard = card; + return false; + } + }); + if (currentCard) {this.log("found active card", currentCard);} + else {this.log("couldn't find an active card");} + return currentCard; + }, + + changeNextButton: function(text, cls) { + this.log("changing next button, text: " + text, "class: " + cls); + if (typeof(cls) != "undefined") { + this.nextButton.removeClass("btn-success btn-primary"); + } + + if (cls) { + this.nextButton.addClass(cls); + } + this.nextButton.text(text); + return this; + }, + + hide: function() { + this.log("hiding"); + this.modal.modal("hide"); + return this; + }, + + close: function() { + this.log("closing"); + this.modal.modal("hide"); + return this; + }, + + + show: function(modalOptions) { + this.log("showing"); + if (this._firstShow) { + this.setCard(0); + this._firstShow = false; + } + if (this.args.showCancel) { + this.cancelButton.show(); + } else { + this.cancelButton.hide(); + } + if (this.args.showClose) { this.closeButton.show(); } + this.modal.modal('show'); + + return this; + }, + + on: function(name, fn) { + this.log("adding listener to event " + name); + this._events[name] = fn; + return this; + }, + + trigger: function() { + var name = arguments[0]; + var args = Array.prototype.slice.call(arguments); + args.shift(); + args.unshift(this); + + this.log("firing event " + name); + var handler = this._events[name]; + if (handler === undefined && this.wizard !== undefined) { + handler = this.wizard._events[name]; + } + var ret = null; + + if (typeof(handler) == "function") { + this.log("found event handler, calling " + name); + try { + ret = handler.apply(this, args); + } + catch (e) { + this.log("event handler " + name + " had an exception"); + } + } + else { + this.log("couldn't find an event handler for " + name); + } + return ret; + }, + + + reset: function() { + this.log("resetting"); + + this.updateProgressBar(0); + this.hideSubmitCards(); + + this.setCard(0); + this.lockCards(); + + this.enableNextButton(); + this.showButtons(); + + this.hidePopovers(); + + this.trigger("reset"); + return this; + }, + + /* + * this handles switching to the next card or previous card, taking + * care to skip over disabled cards + */ + _abstractIncrementStep: function(direction, getNext) { + var current = this.getActiveCard(); + var next; + + if (current) { + /* + * loop until we find a card that isn't disabled + */ + this.log("searching for valid next card"); + while (true) { + next = getNext(current); + if (next) { + this.log("looking at card", next.index); + if (next.isDisabled()) { + this.log("card " + next.index + " is disabled/locked, continuing"); + current = next; + continue; + } + else { + return this.setCard(current.index+direction); + } + } + else { + this.log("next card is not defined, breaking"); + break; + } + } + } + else { + this.log("current card is undefined"); + } + }, + + + incrementCard: function() { + this.log("incrementing card"); + var card = this._abstractIncrementStep(1, function(current){return current.next;}); + this.trigger("incrementCard"); + return card; + }, + + decrementCard: function() { + this.log("decrementing card"); + var card = this._abstractIncrementStep(-1, function(current){return current.prev;}); + this.trigger("decrementCard"); + return card; + }, + + setCard: function(i) { + this.log("setting card to " + i); + this.hideSubmitCards(); + var currentCard = this.getActiveCard(); + + if (this._submitting) { + this.log("we're submitting the wizard already, can't change cards"); + return currentCard; + } + + var newCard = this._cards[i]; + if (newCard) { + if (newCard.isDisabled()) { + this.log("new card is currently disabled, returning"); + return currentCard; + } + + if (currentCard) { + + /* + * here, we're only validating if we're going forward, + * not if we're going backwards in a step + */ + if (i > currentCard.index) { + var cardToValidate = currentCard; + var ok = false; + + /* + * we need to loop over every card between our current + * card and the card that we clicked, and re-validate + * them. if there's an error, we need to select the + * first card to have an error + */ + while (cardToValidate.index != newCard.index) { + /* + * unless we're validating the card that we're + * leaving, we need to select the card, so that + * any validators that trigger errorPopovers can + * display correctly + */ + if (cardToValidate.index != currentCard.index) { + cardToValidate.prev.deselect(); + cardToValidate.prev.markVisited(); + cardToValidate.select(); + } + ok = cardToValidate.validate(); + if (!ok) { + return cardToValidate; + } + cardToValidate = cardToValidate.next; + } + + cardToValidate.prev.deselect(); + cardToValidate.prev.markVisited(); + } + + currentCard.deselect(); + currentCard.markVisited(); + } + + newCard.select(); + + if (this.args.progressBarCurrent) { + this.percentComplete = i * 100.0 / this._cards.length; + this.updateProgressBar(this.percentComplete); + } + else { + var lastPercent = this.percentComplete; + this.percentComplete = i * 100.0 / this._cards.length; + this.percentComplete = Math.max(lastPercent, this.percentComplete); + this.updateProgressBar(this.percentComplete); + } + + return newCard; + } + else { + this.log("couldn't find card " + i); + } + }, + + updateProgressBar: function(percent) { + this.log("updating progress to " + percent + "%"); + this.progress.css({width: percent + "%"}); + this.percentComplete = percent; + + this.trigger("progressBar", percent); + + if (percent == 100) { + this.log("progress is 100, animating progress bar"); + this.progressContainer.find('.progress').addClass("active"); + } + else if (percent == 0) { + this.log("progress is 0, disabling animation"); + this.progressContainer.find('.progress').removeClass("active"); + } + }, + + getNextCard: function() { + var currentCard = this.getActiveCard(); + if (currentCard) return currentCard.next; + }, + + lockCards: function() { + this.log("locking nav cards"); + this.eachCard(function(i,card){card.unmarkVisited();}); + return this; + }, + + disableCards: function() { + this.log("disabling all nav cards"); + this.eachCard(function(i,card){card.disable();}); + return this; + }, + + enableCards: function() { + this.log("enabling all nav cards"); + this.eachCard(function(i,card){card.enable();}); + return this; + }, + + hideCards: function() { + this.log("hiding cards"); + this.eachCard(function(i,card){card.deselect();}); + this.hideSubmitCards(); + return this; + }, + + hideButtons: function() { + this.log("hiding buttons"); + this.cancelButton.hide(); + this.closeButton.hide(); + this.nextButton.hide(); + this.backButton.hide(); + return this; + }, + + showButtons: function() { + this.log("showing buttons"); + if (this.args.showCancel) { + this.cancelButton.show(); + } else { + this.cancelButton.hide(); + } + if (this.args.showClose) { this.closeButton.show(); }; + this.nextButton.show(); + this.backButton.show(); + return this; + }, + + getCard: function(el) { + var cardDOMEl = $(el).parents(".wizard-card").first()[0]; + if (cardDOMEl) { + var foundCard = null; + this.eachCard(function(i, card) { + if (cardDOMEl == card.el[0]) { + foundCard = card; + return false; + } + return true; + }); + return foundCard; + } + else { + return null; + } + }, + + _createCards: function() { + var prev = null; + var next = null; + var currentCard = null; + var wizard = this; + var self = this; + + self.log("Creating Cards"); + + var cards = this.modal.find(".wizard-cards .wizard-card"); + $.each(cards, function(i, card) { + card = $(card); + + prev = currentCard; + currentCard = new WizardCard(wizard, card, i, prev, next); + self._cards.push(currentCard); + if (currentCard.name) { + self.cards[currentCard.name] = currentCard; + } + if (prev) {prev.next = currentCard;} + + self.modal.find(".wizard-steps .wizard-nav-list").append(currentCard.nav); + }); + }, + + showSubmitCard: function(name) { + this.log("showing "+name+" submit card"); + + var card = this.el.find(".wizard-"+name); + if (card.length) { + this.hideCards(); + this.el.find(".wizard-"+name).show(); + } + else { + this.log("couldn't find submit card "+name); + } + }, + + hideSubmitCard: function(name) { + this.log("hiding "+name+" submit card"); + this.el.find(".wizard-"+name).hide(); + }, + + hideSubmitCards: function() { + var wizard = this; + $.each(["success", "error", "failure", "loading"], function(i, name) { + wizard.hideSubmitCard(name); + }); + }, + + enableNextButton: function() { + this.log("enabling next button"); + this.nextButton.removeAttr("disabled"); + return this; + }, + + disableNextButton: function() { + this.log("disabling next button"); + this.nextButton.attr("disabled", "disabled"); + return this; + }, + + serializeArray: function() { + var form = this.form.serializeArray(); + this.form.find('input[disabled][data-serialize="1"]').each(function() { + formObj = { + name: $(this).attr('name'), + value: $(this).val() + }; + + form.push(formObj); + }); + + return form; + }, + + serialize: function() { + var form = this.form.serialize(); + this.form.find('input[disabled][data-serialize="1"]').each(function() { + form = form + '&' + $(this).attr('name') + '=' + $(this).val(); + }); + + return form; + }, + + find: function(selector) { + return this.modal.find(selector); + }, + + + /* + * the next 3 functions are to be called by the custom submit event + * handler. the idea is that after you make an ajax call to submit + * your wizard data (or whatever it is you want to do at the end of + * the wizard), you call one of these 3 handlers to display a specific + * card for either success, failure, or error + */ + submitSuccess: function() { + this.log("submit success"); + this._submitting = false; + this.showSubmitCard("success"); + this.trigger("submitSuccess"); + }, + + submitFailure: function() { + this.log("submit failure"); + this._submitting = false; + this.showSubmitCard("failure"); + this.trigger("submitFailure"); + }, + + submitError: function() { + this.log("submit error"); + this._submitting = false; + this.showSubmitCard("error"); + this.trigger("submitError"); + }, + + + _submit: function() { + this.log("submitting wizard"); + this._submitting = true; + + this.lockCards(); + this.cancelButton.hide(); + this.closeButton.hide(); + this.backButton.hide(); + + this.showSubmitCard("loading"); + this.updateProgressBar(100); + + this.changeNextButton(this.args.buttons.submittingText, false); + this.disableNextButton(); + + var ret = this.trigger("submit"); + this.trigger("loading"); + }, + + _onNextClick: function() { + this.log("handling 'next' button click"); + var currentCard = this.getActiveCard(); + if (this._readyToSubmit && currentCard.validate()) { + this._submit(); + } + else { + currentCard = this.incrementCard(); + } + }, + + _onBackClick: function() { + this.log("handling 'back' button click"); + var currentCard = this.decrementCard(); + }, + + _handleNextClick: function(event) { + var wizard = event.data; + wizard._onNextClick.call(wizard); + }, + + _handleBackClick: function(event) { + var wizard = event.data; + wizard._onBackClick.call(wizard); + }, + + + /* + * this function is attached by default to the wizard's "submit" event. + * if you choose to implement your own custom submit logic, you should + * copy how this function works + */ + _defaultSubmit: function(wizard) { + $.ajax({ + type: "POST", + url: wizard.args.submitUrl, + data: wizard.serialize(), + dataType: "json" + }).done(function(response) { + wizard.submitSuccess(); + wizard.hideButtons(); + wizard.updateProgressBar(0); + }).fail(function() { + wizard.submitFailure(); + wizard.hideButtons(); + }); + } + }; + + +}(window.jQuery)); diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/bootstrap-wizard-lib/bootstrap-wizard.min.js b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/bootstrap-wizard-lib/bootstrap-wizard.min.js new file mode 100644 index 000000000..898bb73da --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/bootstrap-wizard-lib/bootstrap-wizard.min.js @@ -0,0 +1 @@ +(function(e){e.fn.wizard=function(e){return new Wizard(this,e)};e.fn.wizard.logging=false;var t=function(e,t,n,r,i){this.wizard=e;this.index=n;this.prev=r;this.next=i;this.el=t;this.title=t.find("h3").first().text();this.name=t.data("cardname")||this.title;this.nav=this._createNavElement(this.title,n);this._disabled=false;this._loaded=false;this._events={}};t.prototype={select:function(){this.log("selecting");if(!this.isSelected()){this.nav.addClass("active");this.el.show();if(!this._loaded){this.trigger("loaded");this.reload()}this.trigger("selected")}var e=this.wizard;e.backButton.toggleClass("disabled",this.index==0);if(this.index>=e._cards.length-1){this.log("on last card, changing next button to submit");e.changeNextButton(e.args.buttons.submitText,"btn-success");e._readyToSubmit=true;e.trigger("readySubmit")}else{e._readyToSubmit=false;e.changeNextButton(e.args.buttons.nextText,"btn-primary")}return this},_createNavElement:function(t,n){var r=e('
  • ');var i=e('');i.data("navindex",n);r.append(i);i.append(' ');i.append(t);return r},markVisited:function(){this.log("marking as visited");this.nav.addClass("already-visited");this.trigger("markVisited");return this},unmarkVisited:function(){this.log("unmarking as visited");this.nav.removeClass("already-visited");this.trigger("unmarkVisited");return this},deselect:function(){this.nav.removeClass("active");this.el.hide();this.trigger("deselect");return this},enable:function(){this.log("enabling");this.nav.addClass("active");this._disabled=false;this.trigger("enabled");return this},disable:function(e){this.log("disabling");this._disabled=true;this.nav.removeClass("active already-visited");if(e){this.el.hide()}this.trigger("disabled");return this},isDisabled:function(){return this._disabled},alreadyVisited:function(){return this.nav.hasClass("already-visited")},isSelected:function(){return this.nav.hasClass("active")},reload:function(){this._loaded=true;this.trigger("reload");return this},on:function(){return this.wizard.on.apply(this,arguments)},trigger:function(){this.callListener("on"+arguments[0]);return this.wizard.trigger.apply(this,arguments)},toggleAlert:function(t,n){this.log("toggling alert to: "+n);n=typeof n=="undefined"?true:n;if(n){this.trigger("showAlert")}else{this.trigger("hideAlert")}var r;var i=this.el.children("h3").first().next("div.alert");if(i.length==0){if(!n){return this}this.log("couldn't find existing alert div, creating one");r=e("
    ");r.addClass("alert");r.addClass("hide");r.insertAfter(this.el.find("h3").first())}else{this.log("found existing alert div");r=i.first()}if(n){if(t!=null){this.log("setting alert msg to",t);r.html(t)}r.show()}else{r.hide()}return this},callListener:function(e){e=e.toLowerCase();this.log("looking for listener "+e);var t=window[this.el.data(e)];if(t){this.log("calling listener "+e);var n=this.wizard;try{var r=t(this)}catch(i){this.log("exception calling listener "+e+": ",i)}}else{this.log("didn't find listener "+e)}},problem:function(e){this.nav.find("a").toggleClass("wizard-step-error",e)},validate:function(){var t=false;var n=this;this.el.find("[data-validate]").each(function(r,i){n.log("validating individiual inputs");i=e(i);var s=i.data("validate");if(!s){return}var o={status:true,title:"Error",msg:""};var u=window[s](i);e.extend(o,u);if(e("#btn-"+i.attr("id")).length===1){i=e("#btn-"+i.attr("id"))}if(!o.status){t=true;i.parents("div.form-group").toggleClass("has-error",true);if(e("#btn-"+i.attr("id")).length===1){i=e("#btn-"+i.attr("id"))}n.wizard.errorPopover(i,o.msg)}else{i.parents("div.form-group").toggleClass("has-error",false);if(e("#btn-"+i.attr("id")).length===1){i=e("#btn-"+i.attr("id"))}try{i.popover("destroy")}catch(a){i.popover("hide")}}});this.log("after validating inputs, failures is",t);var r=window[this.el.data("validate")];if(r){this.log("running html-embedded card validator");var i=r(this);if(typeof i=="undefined"||i==null){i=true}if(!i)t=true;this.log("after running html-embedded card validator, failures is",t)}this.log("running listener validator");var s=this.trigger("validate");if(typeof s=="undefined"||s==null){s=true}if(!s)t=true;this.log("after running listener validator, failures is",t);var o=!t;if(o){this.log("validated, calling listeners");this.trigger("validated")}else{this.log("invalid");this.trigger("invalid")}return o},log:function(){if(!window.console||!e.fn.wizard.logging){return}var t="card '"+this.name+"': ";var n=[t];n.push.apply(n,arguments);console.log.apply(console,n)},isActive:function(){return this.nav.hasClass("active")}};Wizard=function(t,n){this.wizard_template=['"];this.args={keyboard:true,backdrop:true,show:false,submitUrl:"",showCancel:false,showClose:true,progressBarCurrent:false,increaseHeight:0,contentHeight:300,contentWidth:'50%',buttons:{cancelText:"Cancel",nextText:"Next",backText:"Back",submitText:"Submit",submittingText:"Submitting..."},formClass:"form-horizontal"};e.extend(this.args,n||{});this._create(t)};Wizard.prototype={log:function(){if(!window.console||!e.fn.wizard.logging){return}var t="wizard "+this.el.id+": ";var n=[t];n.push.apply(n,arguments);console.log.apply(console,n)},_create:function(t){this.markup=e(t);this.title=this.markup.data("title");this.submitCards=this.markup.find(".wizard-error,.wizard-failure,.wizard-success,.wizard-loading");this.el=e(this.wizard_template.join("\n"));e("body").append(this.el);this.modal=this.el.modal({keyboard:this.args.keyboard,show:this.args.show,backdrop:this.args.backdrop});this.dimensions={contentHeight:this.args.contentHeight,contentWidth:this.args.contentWidth};this.dialog=this.modal.find(".wizard-dialog");this.content=this.modal.find(".wizard-content");this.header=this.modal.find(".wizard-header");this.body=this.modal.find(".wizard-body");this.wizardSteps=this.modal.find(".wizard-steps");this.wizardCards=this.modal.find(".wizard-cards");this.wizardCardContainer=this.modal.find(".wizard-card-container");this.wizardCardContainer.append(this.markup.find(".wizard-card")).append(this.submitCards);this.navContainer=this.modal.find(".wizard-nav-container");this.navList=this.modal.find(".wizard-nav-list");this.progressContainer=this.modal.find(".wizard-progress-container");this.progress=this.progressContainer.find(".progress-bar");this.closeButton=this.modal.find("button.wizard-close.close");this.cardsContainer=this.modal.find("wizard-cards-container");this.form=this.modal.find("form");this.footer=this.modal.find(".wizard-footer");this.cancelButton=this.footer.find(".wizard-cancel");this.backButton=this.footer.find(".wizard-back");this.nextButton=this.footer.find(".wizard-next");this._cards=[];this.cards={};this._readyToSubmit=false;this.percentComplete=0;this._submitting=false;this._events={};this._firstShow=true;this._createCards();this.nextButton.click(this,this._handleNextClick);this.backButton.click(this,this._handleBackClick);this.cancelButton.text(this.args.buttons.cancelText);this.backButton.text(this.args.buttons.backText);this.nextButton.text(this.args.buttons.nextText);this.form.addClass(this.args.formClass);this.popovers=[];var n=this;var r=function(){n.reset();n.close();n.trigger("closed")};this.closeButton.click(r);this.cancelButton.click(r);this.wizardSteps.on("click","li.already-visited a.wizard-nav-link",this,function(t){var n=parseInt(e(t.target).data("navindex"));t.data.setCard(n)});if(this.title.length!=0){this.setTitle(this.title)}this.on("submit",this._defaultSubmit);this.autoDimensions()},autoDimensions:function(){this.modal.css("display","block");this.dimensions.header=this.header.outerHeight(true);this.dimensions.navigation=this.wizardSteps.outerHeight(true);if(this.dimensions.navigationt.index){var r=t;var i=false;while(r.index!=n.index){if(r.index!=t.index){r.prev.deselect();r.prev.markVisited();r.select()}i=r.validate();if(!i){return r}r=r.next}r.prev.deselect();r.prev.markVisited()}t.deselect();t.markVisited()}n.select();if(this.args.progressBarCurrent){this.percentComplete=e*100/this._cards.length;this.updateProgressBar(this.percentComplete)}else{var s=this.percentComplete;this.percentComplete=e*100/this._cards.length;this.percentComplete=Math.max(s,this.percentComplete);this.updateProgressBar(this.percentComplete)}return n}else{this.log("couldn't find card "+e)}},updateProgressBar:function(e){this.log("updating progress to "+e+"%");this.progress.css({width:e+"%"});this.percentComplete=e;this.trigger("progressBar",e);if(e==100){this.log("progress is 100, animating progress bar");this.progressContainer.find(".progress").addClass("active")}else if(e==0){this.log("progress is 0, disabling animation");this.progressContainer.find(".progress").removeClass("active")}},getNextCard:function(){var e=this.getActiveCard();if(e)return e.next},lockCards:function(){this.log("locking nav cards");this.eachCard(function(e,t){t.unmarkVisited()});return this},disableCards:function(){this.log("disabling all nav cards");this.eachCard(function(e,t){t.disable()});return this},enableCards:function(){this.log("enabling all nav cards");this.eachCard(function(e,t){t.enable()});return this},hideCards:function(){this.log("hiding cards");this.eachCard(function(e,t){t.deselect()});this.hideSubmitCards();return this},hideButtons:function(){this.log("hiding buttons");this.cancelButton.hide();this.closeButton.hide();this.nextButton.hide();this.backButton.hide();return this},showButtons:function(){this.log("showing buttons");if(this.args.showCancel){this.cancelButton.show()}else{this.cancelButton.hide()}if(this.args.showClose){this.closeButton.show()}this.nextButton.show();this.backButton.show();return this},getCard:function(t){var n=e(t).parents(".wizard-card").first()[0];if(n){var r=null;this.eachCard(function(e,t){if(n==t.el[0]){r=t;return false}return true});return r}else{return null}},_createCards:function(){var n=null;var r=null;var i=null;var s=this;var o=this;o.log("Creating Cards");var u=this.modal.find(".wizard-cards .wizard-card");e.each(u,function(u,a){a=e(a);n=i;i=new t(s,a,u,n,r);o._cards.push(i);if(i.name){o.cards[i.name]=i}if(n){n.next=i}o.modal.find(".wizard-steps .wizard-nav-list").append(i.nav)})},showSubmitCard:function(e){this.log("showing "+e+" submit card");var t=this.el.find(".wizard-"+e);if(t.length){this.hideCards();this.el.find(".wizard-"+e).show()}else{this.log("couldn't find submit card "+e)}},hideSubmitCard:function(e){this.log("hiding "+e+" submit card");this.el.find(".wizard-"+e).hide()},hideSubmitCards:function(){var t=this;e.each(["success","error","failure","loading"],function(e,n){t.hideSubmitCard(n)})},enableNextButton:function(){this.log("enabling next button");this.nextButton.removeAttr("disabled");return this},disableNextButton:function(){this.log("disabling next button");this.nextButton.attr("disabled","disabled");return this},serializeArray:function(){var t=this.form.serializeArray();this.form.find('input[disabled][data-serialize="1"]').each(function(){formObj={name:e(this).attr("name"),value:e(this).val()};t.push(formObj)});return t},serialize:function(){var t=this.form.serialize();this.form.find('input[disabled][data-serialize="1"]').each(function(){t=t+"&"+e(this).attr("name")+"="+e(this).val()});return t},find:function(e){return this.modal.find(e)},submitSuccess:function(){this.log("submit success");this._submitting=false;this.showSubmitCard("success");this.trigger("submitSuccess")},submitFailure:function(){this.log("submit failure");this._submitting=false;this.showSubmitCard("failure");this.trigger("submitFailure")},submitError:function(){this.log("submit error");this._submitting=false;this.showSubmitCard("error");this.trigger("submitError")},_submit:function(){this.log("submitting wizard");this._submitting=true;this.lockCards();this.cancelButton.hide();this.closeButton.hide();this.backButton.hide();this.showSubmitCard("loading");this.updateProgressBar(100);this.changeNextButton(this.args.buttons.submittingText,false);this.disableNextButton();var e=this.trigger("submit");this.trigger("loading")},_onNextClick:function(){this.log("handling 'next' button click");var e=this.getActiveCard();if(this._readyToSubmit&&e.validate()){this._submit()}else{e=this.incrementCard()}},_onBackClick:function(){this.log("handling 'back' button click");var e=this.decrementCard()},_handleNextClick:function(e){var t=e.data;t._onNextClick.call(t)},_handleBackClick:function(e){var t=e.data;t._onBackClick.call(t)},_defaultSubmit:function(t){e.ajax({type:"POST",url:t.args.submitUrl,data:t.serialize(),dataType:"json"}).done(function(e){t.submitSuccess();t.hideButtons();t.updateProgressBar(0)}).fail(function(){t.submitFailure();t.hideButtons()})}}})(window.jQuery) diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/bootstrap/BOOTSTRAP_LICENSE b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/bootstrap/BOOTSTRAP_LICENSE new file mode 100644 index 000000000..8d94aa9ac --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/bootstrap/BOOTSTRAP_LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2011-2014 Twitter, Inc + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/bootstrap/bootstrap.min.js b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/bootstrap/bootstrap.min.js new file mode 100644 index 000000000..4723aabe8 --- /dev/null +++ b/features/analytics-feature/org.wso2.carbon.iot.geo.dashboard.feature/src/main/capp/GadgetGeoDashboard_1.0.0/geo-dashboard/js/bootstrap/bootstrap.min.js @@ -0,0 +1,655 @@ +/*! + * Bootstrap v3.2.0 (http://getbootstrap.com) + * Copyright 2011-2014 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */ +if ("undefined" == typeof jQuery)throw new Error("Bootstrap's JavaScript requires jQuery"); ++function (a) { + "use strict"; + function b() { + var a = document.createElement("bootstrap"), b = {WebkitTransition: "webkitTransitionEnd", MozTransition: "transitionend", OTransition: "oTransitionEnd otransitionend", transition: "transitionend"}; + for (var c in b)if (void 0 !== a.style[c])return{end: b[c]}; + return!1 + } + + a.fn.emulateTransitionEnd = function (b) { + var c = !1, d = this; + a(this).one("bsTransitionEnd", function () { + c = !0 + }); + var e = function () { + c || a(d).trigger(a.support.transition.end) + }; + return setTimeout(e, b), this + }, a(function () { + a.support.transition = b(), a.support.transition && (a.event.special.bsTransitionEnd = {bindType: a.support.transition.end, delegateType: a.support.transition.end, handle: function (b) { + return a(b.target).is(this) ? b.handleObj.handler.apply(this, arguments) : void 0 + }}) + }) +}(jQuery), +function (a) { + "use strict"; + function b(b) { + return this.each(function () { + var c = a(this), e = c.data("bs.alert"); + e || c.data("bs.alert", e = new d(this)), "string" == typeof b && e[b].call(c) + }) + } + + var c = '[data-dismiss="alert"]', d = function (b) { + a(b).on("click", c, this.close) + }; + d.VERSION = "3.2.0", d.prototype.close = function (b) { + function c() { + f.detach().trigger("closed.bs.alert").remove() + } + + var d = a(this), e = d.attr("data-target"); + e || (e = d.attr("href"), e = e && e.replace(/.*(?=#[^\s]*$)/, "")); + var f = a(e); + b && b.preventDefault(), f.length || (f = d.hasClass("alert") ? d : d.parent()), f.trigger(b = a.Event("close.bs.alert")), b.isDefaultPrevented() || (f.removeClass("in"), a.support.transition && f.hasClass("fade") ? f.one("bsTransitionEnd", c).emulateTransitionEnd(150) : c()) + }; + var e = a.fn.alert; + a.fn.alert = b, a.fn.alert.Constructor = d, a.fn.alert.noConflict = function () { + return a.fn.alert = e, this + }, a(document).on("click.bs.alert.data-api", c, d.prototype.close) +}(jQuery), +function (a) { + "use strict"; + function b(b) { + return this.each(function () { + var d = a(this), e = d.data("bs.button"), f = "object" == typeof b && b; + e || d.data("bs.button", e = new c(this, f)), "toggle" == b ? e.toggle() : b && e.setState(b) + }) + } + + var c = function (b, d) { + this.$element = a(b), this.options = a.extend({}, c.DEFAULTS, d), this.isLoading = !1 + }; + c.VERSION = "3.2.0", c.DEFAULTS = {loadingText: "loading..."}, c.prototype.setState = function (b) { + var c = "disabled", d = this.$element, e = d.is("input") ? "val" : "html", f = d.data(); + b += "Text", null == f.resetText && d.data("resetText", d[e]()), d[e](null == f[b] ? this.options[b] : f[b]), setTimeout(a.proxy(function () { + "loadingText" == b ? (this.isLoading = !0, d.addClass(c).attr(c, c)) : this.isLoading && (this.isLoading = !1, d.removeClass(c).removeAttr(c)) + }, this), 0) + }, c.prototype.toggle = function () { + var a = !0, b = this.$element.closest('[data-toggle="buttons"]'); + if (b.length) { + var c = this.$element.find("input"); + "radio" == c.prop("type") && (c.prop("checked") && this.$element.hasClass("active") ? a = !1 : b.find(".active").removeClass("active")), a && c.prop("checked", !this.$element.hasClass("active")).trigger("change") + } + a && this.$element.toggleClass("active") + }; + var d = a.fn.button; + a.fn.button = b, a.fn.button.Constructor = c, a.fn.button.noConflict = function () { + return a.fn.button = d, this + }, a(document).on("click.bs.button.data-api", '[data-toggle^="button"]', function (c) { + var d = a(c.target); + d.hasClass("btn") || (d = d.closest(".btn")), b.call(d, "toggle"), c.preventDefault() + }) +}(jQuery), +function (a) { + "use strict"; + function b(b) { + return this.each(function () { + var d = a(this), e = d.data("bs.carousel"), f = a.extend({}, c.DEFAULTS, d.data(), "object" == typeof b && b), g = "string" == typeof b ? b : f.slide; + e || d.data("bs.carousel", e = new c(this, f)), "number" == typeof b ? e.to(b) : g ? e[g]() : f.interval && e.pause().cycle() + }) + } + + var c = function (b, c) { + this.$element = a(b).on("keydown.bs.carousel", a.proxy(this.keydown, this)), this.$indicators = this.$element.find(".carousel-indicators"), this.options = c, this.paused = this.sliding = this.interval = this.$active = this.$items = null, "hover" == this.options.pause && this.$element.on("mouseenter.bs.carousel", a.proxy(this.pause, this)).on("mouseleave.bs.carousel", a.proxy(this.cycle, this)) + }; + c.VERSION = "3.2.0", c.DEFAULTS = {interval: 5e3, pause: "hover", wrap: !0}, c.prototype.keydown = function (a) { + switch (a.which) { + case 37: + this.prev(); + break; + case 39: + this.next(); + break; + default: + return + } + a.preventDefault() + }, c.prototype.cycle = function (b) { + return b || (this.paused = !1), this.interval && clearInterval(this.interval), this.options.interval && !this.paused && (this.interval = setInterval(a.proxy(this.next, this), this.options.interval)), this + }, c.prototype.getItemIndex = function (a) { + return this.$items = a.parent().children(".item"), this.$items.index(a || this.$active) + }, c.prototype.to = function (b) { + var c = this, d = this.getItemIndex(this.$active = this.$element.find(".item.active")); + return b > this.$items.length - 1 || 0 > b ? void 0 : this.sliding ? this.$element.one("slid.bs.carousel", function () { + c.to(b) + }) : d == b ? this.pause().cycle() : this.slide(b > d ? "next" : "prev", a(this.$items[b])) + }, c.prototype.pause = function (b) { + return b || (this.paused = !0), this.$element.find(".next, .prev").length && a.support.transition && (this.$element.trigger(a.support.transition.end), this.cycle(!0)), this.interval = clearInterval(this.interval), this + }, c.prototype.next = function () { + return this.sliding ? void 0 : this.slide("next") + }, c.prototype.prev = function () { + return this.sliding ? void 0 : this.slide("prev") + }, c.prototype.slide = function (b, c) { + var d = this.$element.find(".item.active"), e = c || d[b](), f = this.interval, g = "next" == b ? "left" : "right", h = "next" == b ? "first" : "last", i = this; + if (!e.length) { + if (!this.options.wrap)return; + e = this.$element.find(".item")[h]() + } + if (e.hasClass("active"))return this.sliding = !1; + var j = e[0], k = a.Event("slide.bs.carousel", {relatedTarget: j, direction: g}); + if (this.$element.trigger(k), !k.isDefaultPrevented()) { + if (this.sliding = !0, f && this.pause(), this.$indicators.length) { + this.$indicators.find(".active").removeClass("active"); + var l = a(this.$indicators.children()[this.getItemIndex(e)]); + l && l.addClass("active") + } + var m = a.Event("slid.bs.carousel", {relatedTarget: j, direction: g}); + return a.support.transition && this.$element.hasClass("slide") ? (e.addClass(b), e[0].offsetWidth, d.addClass(g), e.addClass(g), d.one("bsTransitionEnd", function () { + e.removeClass([b, g].join(" ")).addClass("active"), d.removeClass(["active", g].join(" ")), i.sliding = !1, setTimeout(function () { + i.$element.trigger(m) + }, 0) + }).emulateTransitionEnd(1e3 * d.css("transition-duration").slice(0, -1))) : (d.removeClass("active"), e.addClass("active"), this.sliding = !1, this.$element.trigger(m)), f && this.cycle(), this + } + }; + var d = a.fn.carousel; + a.fn.carousel = b, a.fn.carousel.Constructor = c, a.fn.carousel.noConflict = function () { + return a.fn.carousel = d, this + }, a(document).on("click.bs.carousel.data-api", "[data-slide], [data-slide-to]", function (c) { + var d, e = a(this), f = a(e.attr("data-target") || (d = e.attr("href")) && d.replace(/.*(?=#[^\s]+$)/, "")); + if (f.hasClass("carousel")) { + var g = a.extend({}, f.data(), e.data()), h = e.attr("data-slide-to"); + h && (g.interval = !1), b.call(f, g), h && f.data("bs.carousel").to(h), c.preventDefault() + } + }), a(window).on("load", function () { + a('[data-ride="carousel"]').each(function () { + var c = a(this); + b.call(c, c.data()) + }) + }) +}(jQuery), +function (a) { + "use strict"; + function b(b) { + return this.each(function () { + var d = a(this), e = d.data("bs.collapse"), f = a.extend({}, c.DEFAULTS, d.data(), "object" == typeof b && b); + !e && f.toggle && "show" == b && (b = !b), e || d.data("bs.collapse", e = new c(this, f)), "string" == typeof b && e[b]() + }) + } + + var c = function (b, d) { + this.$element = a(b), this.options = a.extend({}, c.DEFAULTS, d), this.transitioning = null, this.options.parent && (this.$parent = a(this.options.parent)), this.options.toggle && this.toggle() + }; + c.VERSION = "3.2.0", c.DEFAULTS = {toggle: !0}, c.prototype.dimension = function () { + var a = this.$element.hasClass("width"); + return a ? "width" : "height" + }, c.prototype.show = function () { + if (!this.transitioning && !this.$element.hasClass("in")) { + var c = a.Event("show.bs.collapse"); + if (this.$element.trigger(c), !c.isDefaultPrevented()) { + var d = this.$parent && this.$parent.find("> .panel > .in"); + if (d && d.length) { + var e = d.data("bs.collapse"); + if (e && e.transitioning)return; + b.call(d, "hide"), e || d.data("bs.collapse", null) + } + var f = this.dimension(); + this.$element.removeClass("collapse").addClass("collapsing")[f](0), this.transitioning = 1; + var g = function () { + this.$element.removeClass("collapsing").addClass("collapse in")[f](""), this.transitioning = 0, this.$element.trigger("shown.bs.collapse") + }; + if (!a.support.transition)return g.call(this); + var h = a.camelCase(["scroll", f].join("-")); + this.$element.one("bsTransitionEnd", a.proxy(g, this)).emulateTransitionEnd(350)[f](this.$element[0][h]) + } + } + }, c.prototype.hide = function () { + if (!this.transitioning && this.$element.hasClass("in")) { + var b = a.Event("hide.bs.collapse"); + if (this.$element.trigger(b), !b.isDefaultPrevented()) { + var c = this.dimension(); + this.$element[c](this.$element[c]())[0].offsetHeight, this.$element.addClass("collapsing").removeClass("collapse").removeClass("in"), this.transitioning = 1; + var d = function () { + this.transitioning = 0, this.$element.trigger("hidden.bs.collapse").removeClass("collapsing").addClass("collapse") + }; + return a.support.transition ? void this.$element[c](0).one("bsTransitionEnd", a.proxy(d, this)).emulateTransitionEnd(350) : d.call(this) + } + } + }, c.prototype.toggle = function () { + this[this.$element.hasClass("in") ? "hide" : "show"]() + }; + var d = a.fn.collapse; + a.fn.collapse = b, a.fn.collapse.Constructor = c, a.fn.collapse.noConflict = function () { + return a.fn.collapse = d, this + }, a(document).on("click.bs.collapse.data-api", '[data-toggle="collapse"]', function (c) { + var d, e = a(this), f = e.attr("data-target") || c.preventDefault() || (d = e.attr("href")) && d.replace(/.*(?=#[^\s]+$)/, ""), g = a(f), h = g.data("bs.collapse"), i = h ? "toggle" : e.data(), j = e.attr("data-parent"), k = j && a(j); + h && h.transitioning || (k && k.find('[data-toggle="collapse"][data-parent="' + j + '"]').not(e).addClass("collapsed"), e[g.hasClass("in") ? "addClass" : "removeClass"]("collapsed")), b.call(g, i) + }) +}(jQuery), +function (a) { + "use strict"; + function b(b) { + b && 3 === b.which || (a(e).remove(), a(f).each(function () { + var d = c(a(this)), e = {relatedTarget: this}; + d.hasClass("open") && (d.trigger(b = a.Event("hide.bs.dropdown", e)), b.isDefaultPrevented() || d.removeClass("open").trigger("hidden.bs.dropdown", e)) + })) + } + + function c(b) { + var c = b.attr("data-target"); + c || (c = b.attr("href"), c = c && /#[A-Za-z]/.test(c) && c.replace(/.*(?=#[^\s]*$)/, "")); + var d = c && a(c); + return d && d.length ? d : b.parent() + } + + function d(b) { + return this.each(function () { + var c = a(this), d = c.data("bs.dropdown"); + d || c.data("bs.dropdown", d = new g(this)), "string" == typeof b && d[b].call(c) + }) + } + + var e = ".dropdown-backdrop", f = '[data-toggle="dropdown"]', g = function (b) { + a(b).on("click.bs.dropdown", this.toggle) + }; + g.VERSION = "3.2.0", g.prototype.toggle = function (d) { + var e = a(this); + if (!e.is(".disabled, :disabled")) { + var f = c(e), g = f.hasClass("open"); + if (b(), !g) { + "ontouchstart"in document.documentElement && !f.closest(".navbar-nav").length && a('