Browse code

fixed string issue on watch and completed GPX builder

louis.jonget authored on30/09/2022 22:28:02
Showing16 changed files
1 1
new file mode 100644
... ...
@@ -0,0 +1,8 @@
1
+argv = ['/home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/waf', 'configure']
2
+environ = {'LC_NUMERIC': 'fr_FR.UTF-8', 'QT4_IM_MODULE': 'xim', 'GJS_DEBUG_OUTPUT': 'stderr', 'PEBBLE_TOOLCHAIN_PATH': '/home/louis/pebble-dev/pebble-sdk-4.6-rc2-linux64/arm-cs-tools/bin', 'XDG_CURRENT_DESKTOP': 'ubuntu:GNOME', 'QT_IM_MODULE': 'xim', 'LOGNAME': 'louis', 'USER': 'louis', 'PATH': '/home/louis/pebble-dev/pebble-sdk-4.6-rc2-linux64/arm-cs-tools/bin:/home/louis/pebble-dev/pebble-sdk-4.6-rc2-linux64/bin:/home/louis/pebble-dev/pebble-sdk-4.6-rc2-linux64/bin:/sbin:/bin:/usr/bin:/usr/local/bin:/snap/bin', 'LC_PAPER': 'fr_FR.UTF-8', 'HOME': '/home/louis', 'XRDP_SESSION': '1', 'DISPLAY': ':10.0', 'SSH_AGENT_PID': '2194', 'LANG': 'en_US.UTF-8', 'TERM': 'xterm-256color', 'SHELL': '/bin/bash', 'UID': '1000', 'SESSION_MANAGER': 'local/ubuntu-IDS:@/tmp/.ICE-unix/2113,unix/ubuntu-IDS:/tmp/.ICE-unix/2113', 'LC_MEASUREMENT': 'fr_FR.UTF-8', 'QT_ACCESSIBILITY': '1', 'GNOME_DESKTOP_SESSION_ID': 'this-is-deprecated', 'CLUTTER_IM_MODULE': 'xim', 'TEXTDOMAIN': 'im-config', 'XMODIFIERS': '@im=ibus', 'GPG_AGENT_INFO': '/run/user/1000/gnupg/S.gpg-agent:0:1', 'NOCLIMB': '1', 'SHLVL': '2', 'XRDP_SOCKET_PATH': '/var/run/xrdp/sockdir', 'XDG_RUNTIME_DIR': '/run/user/1000', 'GTK_IM_MODULE': 'ibus', 'LC_ADDRESS': 'fr_FR.UTF-8', 'SSH_AUTH_SOCK': '/run/user/1000/keyring/ssh', 'VTE_VERSION': '5202', 'IM_CONFIG_PHASE': '2', 'TEXTDOMAINDIR': '/usr/share/locale/', 'GNOME_SHELL_SESSION_MODE': 'ubuntu', 'NO_GCE_CHECK': 'False', 'PULSE_SCRIPT': '/etc/xrdp/pulse/default.pa', 'LESSOPEN': '| /bin/lesspipe %s', 'XDG_SESSION_ID': 'c3', 'DBUS_SESSION_BUS_ADDRESS': 'unix:path=/run/user/1000/bus', '_': '/home/louis/pebble-dev/pebble-sdk-4.6-rc2-linux64/.env/bin/python', 'GNOME_TERMINAL_SERVICE': ':1.70', 'LC_IDENTIFICATION': 'fr_FR.UTF-8', 'LESSCLOSE': '/bin/lesspipe %s %s', 'GTK_MODULES': 'gail:atk-bridge', 'OLDPWD': '/home/louis', 'PYTHONHOME': '/home/louis/.pebble-sdk/SDKs/current/sdk-core/../.env', 'LC_TELEPHONE': 'fr_FR.UTF-8', 'NODE_PATH': '/home/louis/.pebble-sdk/SDKs/current/sdk-core/../node_modules', 'LC_MONETARY': 'fr_FR.UTF-8', 'XDG_DATA_DIRS': '/usr/share/gnome:/usr/local/share:/usr/share:/var/lib/snapd/desktop', 'PWD': '/home/louis/pebble-dev/repo_remote/bike_companion', 'COLORTERM': 'truecolor', 'LC_NAME': 'fr_FR.UTF-8', 'XDG_MENU_PREFIX': 'gnome-', 'LC_TIME': 'fr_FR.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'PHONESIM_PATH': '/home/louis/pebble-dev/pebble-sdk-4.6-rc2-linux64/.env//bin/pypkjs', 'GJS_DEBUG_TOPICS': 'JS ERROR;JS LOG', 'GNOME_TERMINAL_SCREEN': '/org/gnome/Terminal/screen/b79060e4_3010_4470_9dcd_d8b6e1a56be8'}
3
+files = ['/home/louis/pebble-dev/repo_remote/bike_companion/wscript']
4
+hash = 6211277306917996440
5
+options = {'files': '', 'jobs': 2, 'verbose': 0, 'nocache': False, 'progress_bar': 0, 'no_groups': False, 'distcheck_args': None, 'top': '', 'sandbox': False, 'destdir': '', 'keep': 0, 'zones': '', 'debug': False, 'prefix': '/usr/local/', 'timestamp': None, 'download': False, 'force': False, 'targets': '', 'out': ''}
6
+out_dir = '/home/louis/pebble-dev/repo_remote/bike_companion/build'
7
+run_dir = '/home/louis/pebble-dev/repo_remote/bike_companion'
8
+top_dir = '/home/louis/pebble-dev/repo_remote/bike_companion'
... ...
@@ -1,5 +1,5 @@
1 1
 argv = ['/home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/waf', 'configure']
2
-environ = {'LC_NUMERIC': 'fr_FR.UTF-8', 'QT4_IM_MODULE': 'xim', 'GJS_DEBUG_OUTPUT': 'stderr', 'PEBBLE_TOOLCHAIN_PATH': '/home/louis/pebble-dev/pebble-sdk-4.6-rc2-linux64/arm-cs-tools/bin', 'XDG_CURRENT_DESKTOP': 'ubuntu:GNOME', 'QT_IM_MODULE': 'xim', 'LOGNAME': 'louis', 'USER': 'louis', 'PATH': '/home/louis/pebble-dev/pebble-sdk-4.6-rc2-linux64/arm-cs-tools/bin:/home/louis/pebble-dev/pebble-sdk-4.6-rc2-linux64/bin:/home/louis/pebble-dev/pebble-sdk-4.6-rc2-linux64/bin:/sbin:/bin:/usr/bin:/usr/local/bin:/snap/bin', 'LC_PAPER': 'fr_FR.UTF-8', 'HOME': '/home/louis', 'XRDP_SESSION': '1', 'DISPLAY': ':10.0', 'SSH_AGENT_PID': '2174', 'LANG': 'en_US.UTF-8', 'TERM': 'xterm-256color', 'SHELL': '/bin/bash', 'UID': '1000', 'SESSION_MANAGER': 'local/ubuntu-IDS:@/tmp/.ICE-unix/2087,unix/ubuntu-IDS:/tmp/.ICE-unix/2087', 'LC_MEASUREMENT': 'fr_FR.UTF-8', 'QT_ACCESSIBILITY': '1', 'GNOME_DESKTOP_SESSION_ID': 'this-is-deprecated', 'CLUTTER_IM_MODULE': 'xim', 'TEXTDOMAIN': 'im-config', 'XMODIFIERS': '@im=ibus', 'GPG_AGENT_INFO': '/run/user/1000/gnupg/S.gpg-agent:0:1', 'NOCLIMB': '1', 'SHLVL': '2', 'XRDP_SOCKET_PATH': '/var/run/xrdp/sockdir', 'XDG_RUNTIME_DIR': '/run/user/1000', 'GTK_IM_MODULE': 'ibus', 'LC_ADDRESS': 'fr_FR.UTF-8', 'SSH_AUTH_SOCK': '/run/user/1000/keyring/ssh', 'VTE_VERSION': '5202', 'IM_CONFIG_PHASE': '2', 'TEXTDOMAINDIR': '/usr/share/locale/', 'GNOME_SHELL_SESSION_MODE': 'ubuntu', 'NO_GCE_CHECK': 'False', 'PULSE_SCRIPT': '/etc/xrdp/pulse/default.pa', 'LESSOPEN': '| /bin/lesspipe %s', 'XDG_SESSION_ID': 'c3', 'DBUS_SESSION_BUS_ADDRESS': 'unix:path=/run/user/1000/bus', '_': '/home/louis/pebble-dev/pebble-sdk-4.6-rc2-linux64/.env/bin/python', 'GNOME_TERMINAL_SERVICE': ':1.70', 'LC_IDENTIFICATION': 'fr_FR.UTF-8', 'LESSCLOSE': '/bin/lesspipe %s %s', 'GTK_MODULES': 'gail:atk-bridge', 'OLDPWD': '/home/louis/pebble-dev/repo_remote/synocam_home_switch', 'PYTHONHOME': '/home/louis/.pebble-sdk/SDKs/current/sdk-core/../.env', 'LC_TELEPHONE': 'fr_FR.UTF-8', 'NODE_PATH': '/home/louis/.pebble-sdk/SDKs/current/sdk-core/../node_modules', 'LC_MONETARY': 'fr_FR.UTF-8', 'XDG_DATA_DIRS': '/usr/share/gnome:/usr/local/share:/usr/share:/var/lib/snapd/desktop', 'PWD': '/home/louis/pebble-dev/repo_remote/bike_companion', 'COLORTERM': 'truecolor', 'LC_NAME': 'fr_FR.UTF-8', 'XDG_MENU_PREFIX': 'gnome-', 'LC_TIME': 'fr_FR.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'PHONESIM_PATH': '/home/louis/pebble-dev/pebble-sdk-4.6-rc2-linux64/.env//bin/pypkjs', 'GJS_DEBUG_TOPICS': 'JS ERROR;JS LOG', 'GNOME_TERMINAL_SCREEN': '/org/gnome/Terminal/screen/e2f7f31b_8f0d_4168_972d_1f5ac7d37cd2'}
2
+environ = {'LC_NUMERIC': 'fr_FR.UTF-8', 'QT4_IM_MODULE': 'xim', 'GJS_DEBUG_OUTPUT': 'stderr', 'PEBBLE_TOOLCHAIN_PATH': '/home/louis/pebble-dev/pebble-sdk-4.6-rc2-linux64/arm-cs-tools/bin', 'XDG_CURRENT_DESKTOP': 'ubuntu:GNOME', 'QT_IM_MODULE': 'xim', 'LOGNAME': 'louis', 'USER': 'louis', 'PATH': '/home/louis/pebble-dev/pebble-sdk-4.6-rc2-linux64/arm-cs-tools/bin:/home/louis/pebble-dev/pebble-sdk-4.6-rc2-linux64/bin:/home/louis/pebble-dev/pebble-sdk-4.6-rc2-linux64/bin:/sbin:/bin:/usr/bin:/usr/local/bin:/snap/bin', 'LC_PAPER': 'fr_FR.UTF-8', 'HOME': '/home/louis', 'XRDP_SESSION': '1', 'DISPLAY': ':10.0', 'SSH_AGENT_PID': '2194', 'LANG': 'en_US.UTF-8', 'TERM': 'xterm-256color', 'SHELL': '/bin/bash', 'UID': '1000', 'SESSION_MANAGER': 'local/ubuntu-IDS:@/tmp/.ICE-unix/2113,unix/ubuntu-IDS:/tmp/.ICE-unix/2113', 'LC_MEASUREMENT': 'fr_FR.UTF-8', 'QT_ACCESSIBILITY': '1', 'GNOME_DESKTOP_SESSION_ID': 'this-is-deprecated', 'CLUTTER_IM_MODULE': 'xim', 'TEXTDOMAIN': 'im-config', 'XMODIFIERS': '@im=ibus', 'GPG_AGENT_INFO': '/run/user/1000/gnupg/S.gpg-agent:0:1', 'NOCLIMB': '1', 'SHLVL': '2', 'XRDP_SOCKET_PATH': '/var/run/xrdp/sockdir', 'XDG_RUNTIME_DIR': '/run/user/1000', 'GTK_IM_MODULE': 'ibus', 'LC_ADDRESS': 'fr_FR.UTF-8', 'SSH_AUTH_SOCK': '/run/user/1000/keyring/ssh', 'VTE_VERSION': '5202', 'IM_CONFIG_PHASE': '2', 'TEXTDOMAINDIR': '/usr/share/locale/', 'GNOME_SHELL_SESSION_MODE': 'ubuntu', 'NO_GCE_CHECK': 'False', 'PULSE_SCRIPT': '/etc/xrdp/pulse/default.pa', 'LESSOPEN': '| /bin/lesspipe %s', 'XDG_SESSION_ID': 'c3', 'DBUS_SESSION_BUS_ADDRESS': 'unix:path=/run/user/1000/bus', '_': '/home/louis/pebble-dev/pebble-sdk-4.6-rc2-linux64/.env/bin/python', 'GNOME_TERMINAL_SERVICE': ':1.70', 'LC_IDENTIFICATION': 'fr_FR.UTF-8', 'LESSCLOSE': '/bin/lesspipe %s %s', 'GTK_MODULES': 'gail:atk-bridge', 'OLDPWD': '/home/louis', 'PYTHONHOME': '/home/louis/.pebble-sdk/SDKs/current/sdk-core/../.env', 'LC_TELEPHONE': 'fr_FR.UTF-8', 'NODE_PATH': '/home/louis/.pebble-sdk/SDKs/current/sdk-core/../node_modules', 'LC_MONETARY': 'fr_FR.UTF-8', 'XDG_DATA_DIRS': '/usr/share/gnome:/usr/local/share:/usr/share:/var/lib/snapd/desktop', 'PWD': '/home/louis/pebble-dev/repo_remote/bike_companion', 'COLORTERM': 'truecolor', 'LC_NAME': 'fr_FR.UTF-8', 'XDG_MENU_PREFIX': 'gnome-', 'LC_TIME': 'fr_FR.UTF-8', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:', 'PHONESIM_PATH': '/home/louis/pebble-dev/pebble-sdk-4.6-rc2-linux64/.env//bin/pypkjs', 'GJS_DEBUG_TOPICS': 'JS ERROR;JS LOG', 'GNOME_TERMINAL_SCREEN': '/org/gnome/Terminal/screen/b79060e4_3010_4470_9dcd_d8b6e1a56be8'}
3 3
 files = ['/home/louis/pebble-dev/repo_remote/bike_companion/wscript']
4 4
 hash = 6211277306917996440
5 5
 options = {'files': '', 'jobs': 2, 'verbose': 0, 'nocache': False, 'progress_bar': 0, 'no_groups': False, 'distcheck_args': None, 'top': '', 'sandbox': False, 'destdir': '', 'keep': 0, 'zones': '', 'debug': False, 'prefix': '/usr/local/', 'timestamp': None, 'download': False, 'force': False, 'targets': '', 'out': ''}
6 6
Binary files a/build/.wafpickle-linux2-34017776-98 and b/build/.wafpickle-linux2-34017776-98 differ
7 7
Binary files a/build/aplite/pebble-app.bin and b/build/aplite/pebble-app.bin differ
8 8
Binary files a/build/aplite/pebble-app.elf and b/build/aplite/pebble-app.elf differ
9 9
Binary files a/build/aplite/pebble-app.raw.bin and b/build/aplite/pebble-app.raw.bin differ
10 10
Binary files a/build/bike_companion.pbw and b/build/bike_companion.pbw differ
... ...
@@ -21,7 +21,7 @@ RESOURCES_JSON = []
21 21
 SANDBOX = False
22 22
 SUPPORTED_PLATFORMS = ['aplite', 'chalk', 'diorite', 'basalt', 'emery']
23 23
 TARGET_PLATFORMS = ['aplite']
24
-TIMESTAMP = 1664554774
24
+TIMESTAMP = 1664569640
25 25
 USE_GROUPS = True
26 26
 VERBOSE = 0
27 27
 WEBPACK = '/home/louis/.pebble-sdk/SDKs/current/node_modules/.bin/webpack'
... ...
@@ -62,7 +62,7 @@ STLIB_MARKER = None
62 62
 STLIB_ST = '-l%s'
63 63
 SUPPORTED_PLATFORMS = ['aplite', 'chalk', 'diorite', 'basalt', 'emery']
64 64
 TARGET_PLATFORMS = ['aplite']
65
-TIMESTAMP = 1664554774
65
+TIMESTAMP = 1664569640
66 66
 USE_GROUPS = True
67 67
 VERBOSE = 0
68 68
 WEBPACK = '/home/louis/.pebble-sdk/SDKs/current/node_modules/.bin/webpack'
... ...
@@ -1,4 +1,4 @@
1
-# project  configured on Fri Sep 30 18:19:34 2022 by
1
+# project  configured on Fri Sep 30 22:27:20 2022 by
2 2
 # waf 1.7.11 (abi 98, python 20711f0 on linux2)
3 3
 # using /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/waf configure
4 4
 #
... ...
@@ -551,6 +551,8 @@ Discarded input sections
551 551
                 0x0000000000000000        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
552 552
  .text.app_message_get_context
553 553
                 0x0000000000000000        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
554
+ .text.app_message_inbox_size_maximum
555
+                0x0000000000000000        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
554 556
  .text.app_message_outbox_size_maximum
555 557
                 0x0000000000000000        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
556 558
  .text.app_message_set_context
... ...
@@ -1195,226 +1197,223 @@ LOAD /home/louis/pebble-dev/pebble-sdk-4.6-rc2-linux64/arm-cs-tools/bin/../lib/g
1195 1197
  .note.gnu.build-id
1196 1198
                 0x0000000000000084       0x24 linker stubs
1197 1199
 
1198
-.text           0x00000000000000a8      0x901
1200
+.text           0x00000000000000a8      0x971
1199 1201
  *(.text)
1200 1202
  .text          0x00000000000000a8       0x14 /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1201 1203
  *(.text.*)
1202 1204
  .text.outbox_failed_callback
1203 1205
                 0x00000000000000bc       0x20 src/c/bike_companion.c.9.o
1204 1206
  .text.outbox_sent_callback
1205
-                0x00000000000000dc       0x18 src/c/bike_companion.c.9.o
1207
+                0x00000000000000dc       0x1c src/c/bike_companion.c.9.o
1206 1208
  .text.inbox_dropped_callback
1207
-                0x00000000000000f4       0x20 src/c/bike_companion.c.9.o
1209
+                0x00000000000000f8       0x20 src/c/bike_companion.c.9.o
1208 1210
  .text.prv_window_unload
1209
-                0x0000000000000114       0x10 src/c/bike_companion.c.9.o
1211
+                0x0000000000000118       0x10 src/c/bike_companion.c.9.o
1210 1212
  .text.prv_down_click_handler
1211
-                0x0000000000000124       0x18 src/c/bike_companion.c.9.o
1213
+                0x0000000000000128       0x18 src/c/bike_companion.c.9.o
1212 1214
  .text.prv_up_click_handler
1213
-                0x000000000000013c       0x18 src/c/bike_companion.c.9.o
1215
+                0x0000000000000140       0x18 src/c/bike_companion.c.9.o
1214 1216
  .text.prv_select_click_handler
1215
-                0x0000000000000154       0x18 src/c/bike_companion.c.9.o
1217
+                0x0000000000000158       0x18 src/c/bike_companion.c.9.o
1216 1218
  .text.prv_window_load
1217
-                0x000000000000016c       0x6c src/c/bike_companion.c.9.o
1219
+                0x0000000000000170       0x6c src/c/bike_companion.c.9.o
1218 1220
  .text.prv_click_config_provider
1219
-                0x00000000000001d8       0x30 src/c/bike_companion.c.9.o
1221
+                0x00000000000001dc       0x30 src/c/bike_companion.c.9.o
1220 1222
  .text.comm_is_ready
1221
-                0x0000000000000208       0x78 src/c/bike_companion.c.9.o
1222
-                0x0000000000000208                comm_is_ready
1223
+                0x000000000000020c       0x78 src/c/bike_companion.c.9.o
1224
+                0x000000000000020c                comm_is_ready
1223 1225
  .text.inbox_received_callback
1224
-                0x0000000000000280      0x2d4 src/c/bike_companion.c.9.o
1226
+                0x0000000000000284      0x344 src/c/bike_companion.c.9.o
1225 1227
  .text.startup.main
1226
-                0x0000000000000554       0xbc src/c/bike_companion.c.9.o
1227
-                0x0000000000000554                main
1228
+                0x00000000000005c8       0xbc src/c/bike_companion.c.9.o
1229
+                0x00000000000005c8                main
1228 1230
  .text.app_event_loop
1229
-                0x0000000000000610        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1230
-                0x0000000000000610                app_event_loop
1231
- .text.app_log  0x000000000000061c        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1232
-                0x000000000000061c                app_log
1231
+                0x0000000000000684        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1232
+                0x0000000000000684                app_event_loop
1233
+ .text.app_log  0x0000000000000690        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1234
+                0x0000000000000690                app_log
1233 1235
  .text.app_message_open
1234
-                0x0000000000000628        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1235
-                0x0000000000000628                app_message_open
1236
+                0x000000000000069c        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1237
+                0x000000000000069c                app_message_open
1236 1238
  .text.dict_find
1237
-                0x0000000000000634        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1238
-                0x0000000000000634                dict_find
1239
+                0x00000000000006a8        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1240
+                0x00000000000006a8                dict_find
1239 1241
  .text.dict_write_cstring
1240
-                0x0000000000000640        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1241
-                0x0000000000000640                dict_write_cstring
1242
+                0x00000000000006b4        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1243
+                0x00000000000006b4                dict_write_cstring
1242 1244
  .text.layer_add_child
1243
-                0x000000000000064c        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1244
-                0x000000000000064c                layer_add_child
1245
+                0x00000000000006c0        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1246
+                0x00000000000006c0                layer_add_child
1245 1247
  .text.layer_get_bounds
1246
-                0x0000000000000658        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1247
-                0x0000000000000658                layer_get_bounds
1248
- .text.memset   0x0000000000000664        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1249
-                0x0000000000000664                memset
1250
- .text.strcat   0x0000000000000670        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1251
-                0x0000000000000670                strcat
1252
- .text.strncpy  0x000000000000067c        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1253
-                0x000000000000067c                strncpy
1248
+                0x00000000000006cc        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1249
+                0x00000000000006cc                layer_get_bounds
1250
+ .text.memset   0x00000000000006d8        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1251
+                0x00000000000006d8                memset
1252
+ .text.strcat   0x00000000000006e4        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1253
+                0x00000000000006e4                strcat
1254
+ .text.strncpy  0x00000000000006f0        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1255
+                0x00000000000006f0                strncpy
1254 1256
  .text.window_create
1255
-                0x0000000000000688        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1256
-                0x0000000000000688                window_create
1257
+                0x00000000000006fc        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1258
+                0x00000000000006fc                window_create
1257 1259
  .text.window_destroy
1258
-                0x0000000000000694        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1259
-                0x0000000000000694                window_destroy
1260
+                0x0000000000000708        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1261
+                0x0000000000000708                window_destroy
1260 1262
  .text.window_get_root_layer
1261
-                0x00000000000006a0        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1262
-                0x00000000000006a0                window_get_root_layer
1263
+                0x0000000000000714        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1264
+                0x0000000000000714                window_get_root_layer
1263 1265
  .text.window_set_click_config_provider
1264
-                0x00000000000006ac        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1265
-                0x00000000000006ac                window_set_click_config_provider
1266
+                0x0000000000000720        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1267
+                0x0000000000000720                window_set_click_config_provider
1266 1268
  .text.window_set_window_handlers
1267
-                0x00000000000006b8        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1268
-                0x00000000000006b8                window_set_window_handlers
1269
+                0x000000000000072c        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1270
+                0x000000000000072c                window_set_window_handlers
1269 1271
  .text.window_stack_push
1270
-                0x00000000000006c4        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1271
-                0x00000000000006c4                window_stack_push
1272
- .text.app_message_inbox_size_maximum
1273
-                0x00000000000006d0        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1274
-                0x00000000000006d0                app_message_inbox_size_maximum
1272
+                0x0000000000000738        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1273
+                0x0000000000000738                window_stack_push
1275 1274
  .text.app_message_outbox_begin
1276
-                0x00000000000006dc        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1277
-                0x00000000000006dc                app_message_outbox_begin
1275
+                0x0000000000000744        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1276
+                0x0000000000000744                app_message_outbox_begin
1278 1277
  .text.app_message_outbox_send
1279
-                0x00000000000006e8        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1280
-                0x00000000000006e8                app_message_outbox_send
1278
+                0x0000000000000750        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1279
+                0x0000000000000750                app_message_outbox_send
1281 1280
  .text.app_message_register_inbox_dropped
1282
-                0x00000000000006f4        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1283
-                0x00000000000006f4                app_message_register_inbox_dropped
1281
+                0x000000000000075c        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1282
+                0x000000000000075c                app_message_register_inbox_dropped
1284 1283
  .text.app_message_register_inbox_received
1285
-                0x0000000000000700        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1286
-                0x0000000000000700                app_message_register_inbox_received
1284
+                0x0000000000000768        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1285
+                0x0000000000000768                app_message_register_inbox_received
1287 1286
  .text.app_message_register_outbox_failed
1288
-                0x000000000000070c        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1289
-                0x000000000000070c                app_message_register_outbox_failed
1287
+                0x0000000000000774        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1288
+                0x0000000000000774                app_message_register_outbox_failed
1290 1289
  .text.app_message_register_outbox_sent
1291
-                0x0000000000000718        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1292
-                0x0000000000000718                app_message_register_outbox_sent
1290
+                0x0000000000000780        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1291
+                0x0000000000000780                app_message_register_outbox_sent
1293 1292
  .text.window_single_click_subscribe
1294
-                0x0000000000000724        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1295
-                0x0000000000000724                window_single_click_subscribe
1293
+                0x000000000000078c        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1294
+                0x000000000000078c                window_single_click_subscribe
1296 1295
  .text.dict_size
1297
-                0x0000000000000730        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1298
-                0x0000000000000730                dict_size
1296
+                0x0000000000000798        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1297
+                0x0000000000000798                dict_size
1299 1298
  .text.text_layer_create
1300
-                0x000000000000073c        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1301
-                0x000000000000073c                text_layer_create
1299
+                0x00000000000007a4        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1300
+                0x00000000000007a4                text_layer_create
1302 1301
  .text.text_layer_destroy
1303
-                0x0000000000000748        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1304
-                0x0000000000000748                text_layer_destroy
1302
+                0x00000000000007b0        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1303
+                0x00000000000007b0                text_layer_destroy
1305 1304
  .text.text_layer_get_layer
1306
-                0x0000000000000754        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1307
-                0x0000000000000754                text_layer_get_layer
1305
+                0x00000000000007bc        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1306
+                0x00000000000007bc                text_layer_get_layer
1308 1307
  .text.text_layer_set_text
1309
-                0x0000000000000760        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1310
-                0x0000000000000760                text_layer_set_text
1308
+                0x00000000000007c8        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1309
+                0x00000000000007c8                text_layer_set_text
1311 1310
  .text.text_layer_set_text_alignment
1312
-                0x000000000000076c        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1313
-                0x000000000000076c                text_layer_set_text_alignment
1311
+                0x00000000000007d4        0xc /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1312
+                0x00000000000007d4                text_layer_set_text_alignment
1314 1313
  *(.rodata)
1315 1314
  *(.rodata*)
1316 1315
  .rodata.str1.1
1317
-                0x0000000000000778      0x231 src/c/bike_companion.c.9.o
1318
-                                        0x250 (size before relaxing)
1316
+                0x00000000000007e0      0x239 src/c/bike_companion.c.9.o
1317
+                                        0x258 (size before relaxing)
1319 1318
 
1320
-.glue_7         0x00000000000009ac        0x0
1319
+.glue_7         0x0000000000000a1c        0x0
1321 1320
  .glue_7        0x0000000000000000        0x0 linker stubs
1322 1321
 
1323
-.glue_7t        0x00000000000009ac        0x0
1322
+.glue_7t        0x0000000000000a1c        0x0
1324 1323
  .glue_7t       0x0000000000000000        0x0 linker stubs
1325 1324
 
1326
-.vfp11_veneer   0x00000000000009ac        0x0
1325
+.vfp11_veneer   0x0000000000000a1c        0x0
1327 1326
  .vfp11_veneer  0x0000000000000000        0x0 linker stubs
1328 1327
 
1329
-.v4_bx          0x00000000000009ac        0x0
1328
+.v4_bx          0x0000000000000a1c        0x0
1330 1329
  .v4_bx         0x0000000000000000        0x0 linker stubs
1331 1330
 
1332
-.iplt           0x00000000000009ac        0x0
1331
+.iplt           0x0000000000000a1c        0x0
1333 1332
  .iplt          0x0000000000000000        0x0 /home/louis/pebble-dev/pebble-sdk-4.6-rc2-linux64/arm-cs-tools/bin/../lib/gcc/arm-none-eabi/4.7.2/thumb2/crtbegin.o
1334 1333
 
1335
-.rel.dyn        0x00000000000009ac        0x0
1334
+.rel.dyn        0x0000000000000a1c        0x0
1336 1335
  .rel.iplt      0x0000000000000000        0x0 /home/louis/pebble-dev/pebble-sdk-4.6-rc2-linux64/arm-cs-tools/bin/../lib/gcc/arm-none-eabi/4.7.2/thumb2/crtbegin.o
1337 1336
  .rel.got       0x0000000000000000        0x0 /home/louis/pebble-dev/pebble-sdk-4.6-rc2-linux64/arm-cs-tools/bin/../lib/gcc/arm-none-eabi/4.7.2/thumb2/crtbegin.o
1338 1337
 
1339
-.data           0x00000000000009ac       0x28
1338
+.data           0x0000000000000a1c       0x28
1340 1339
  *(.data)
1341
- .data          0x00000000000009ac        0x0 /home/louis/pebble-dev/pebble-sdk-4.6-rc2-linux64/arm-cs-tools/bin/../lib/gcc/arm-none-eabi/4.7.2/thumb2/crti.o
1342
- .data          0x00000000000009ac        0x4 /home/louis/pebble-dev/pebble-sdk-4.6-rc2-linux64/arm-cs-tools/bin/../lib/gcc/arm-none-eabi/4.7.2/thumb2/crtbegin.o
1343
-                0x00000000000009ac                __dso_handle
1344
- .data          0x00000000000009b0        0x0 src/c/bike_companion.c.9.o
1345
- .data          0x00000000000009b0        0x0 aplite/appinfo.auto.c.9.o
1346
- .data          0x00000000000009b0        0x0 aplite/src/resource_ids.auto.c.9.o
1347
- .data          0x00000000000009b0        0x0 src/message_keys.auto.c.9.o
1348
- .data          0x00000000000009b0        0x0 /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1349
- .data          0x00000000000009b0        0x0 /home/louis/pebble-dev/pebble-sdk-4.6-rc2-linux64/arm-cs-tools/bin/../lib/gcc/arm-none-eabi/4.7.2/thumb2/crtend.o
1350
- .data          0x00000000000009b0        0x0 /home/louis/pebble-dev/pebble-sdk-4.6-rc2-linux64/arm-cs-tools/bin/../lib/gcc/arm-none-eabi/4.7.2/thumb2/crtn.o
1340
+ .data          0x0000000000000a1c        0x0 /home/louis/pebble-dev/pebble-sdk-4.6-rc2-linux64/arm-cs-tools/bin/../lib/gcc/arm-none-eabi/4.7.2/thumb2/crti.o
1341
+ .data          0x0000000000000a1c        0x4 /home/louis/pebble-dev/pebble-sdk-4.6-rc2-linux64/arm-cs-tools/bin/../lib/gcc/arm-none-eabi/4.7.2/thumb2/crtbegin.o
1342
+                0x0000000000000a1c                __dso_handle
1343
+ .data          0x0000000000000a20        0x0 src/c/bike_companion.c.9.o
1344
+ .data          0x0000000000000a20        0x0 aplite/appinfo.auto.c.9.o
1345
+ .data          0x0000000000000a20        0x0 aplite/src/resource_ids.auto.c.9.o
1346
+ .data          0x0000000000000a20        0x0 src/message_keys.auto.c.9.o
1347
+ .data          0x0000000000000a20        0x0 /home/louis/.pebble-sdk/SDKs/current/sdk-core/pebble/aplite/lib/libpebble.a(tmp7jpKUopebble.o)
1348
+ .data          0x0000000000000a20        0x0 /home/louis/pebble-dev/pebble-sdk-4.6-rc2-linux64/arm-cs-tools/bin/../lib/gcc/arm-none-eabi/4.7.2/thumb2/crtend.o
1349
+ .data          0x0000000000000a20        0x0 /home/louis/pebble-dev/pebble-sdk-4.6-rc2-linux64/arm-cs-tools/bin/../lib/gcc/arm-none-eabi/4.7.2/thumb2/crtn.o
1351 1350
  *(.data.*)
1352 1351
  .data.MESSAGE_KEY_longitude
1353
-                0x00000000000009b0        0x4 src/message_keys.auto.c.9.o
1354
-                0x00000000000009b0                MESSAGE_KEY_longitude
1352
+                0x0000000000000a20        0x4 src/message_keys.auto.c.9.o
1353
+                0x0000000000000a20                MESSAGE_KEY_longitude
1355 1354
  .data.MESSAGE_KEY_accuracy
1356
-                0x00000000000009b4        0x4 src/message_keys.auto.c.9.o
1357
-                0x00000000000009b4                MESSAGE_KEY_accuracy
1355
+                0x0000000000000a24        0x4 src/message_keys.auto.c.9.o
1356
+                0x0000000000000a24                MESSAGE_KEY_accuracy
1358 1357
  .data.MESSAGE_KEY_status
1359
-                0x00000000000009b8        0x4 src/message_keys.auto.c.9.o
1360
-                0x00000000000009b8                MESSAGE_KEY_status
1358
+                0x0000000000000a28        0x4 src/message_keys.auto.c.9.o
1359
+                0x0000000000000a28                MESSAGE_KEY_status
1361 1360
  .data.MESSAGE_KEY_altitude_accuracy
1362
-                0x00000000000009bc        0x4 src/message_keys.auto.c.9.o
1363
-                0x00000000000009bc                MESSAGE_KEY_altitude_accuracy
1361
+                0x0000000000000a2c        0x4 src/message_keys.auto.c.9.o
1362
+                0x0000000000000a2c                MESSAGE_KEY_altitude_accuracy
1364 1363
  .data.MESSAGE_KEY_JSReady
1365
-                0x00000000000009c0        0x4 src/message_keys.auto.c.9.o
1366
-                0x00000000000009c0                MESSAGE_KEY_JSReady
1364
+                0x0000000000000a30        0x4 src/message_keys.auto.c.9.o
1365
+                0x0000000000000a30                MESSAGE_KEY_JSReady
1367 1366
  .data.MESSAGE_KEY_altitude
1368
-                0x00000000000009c4        0x4 src/message_keys.auto.c.9.o
1369
-                0x00000000000009c4                MESSAGE_KEY_altitude
1367
+                0x0000000000000a34        0x4 src/message_keys.auto.c.9.o
1368
+                0x0000000000000a34                MESSAGE_KEY_altitude
1370 1369
  .data.MESSAGE_KEY_timestamp
1371
-                0x00000000000009c8        0x4 src/message_keys.auto.c.9.o
1372
-                0x00000000000009c8                MESSAGE_KEY_timestamp
1370
+                0x0000000000000a38        0x4 src/message_keys.auto.c.9.o
1371
+                0x0000000000000a38                MESSAGE_KEY_timestamp
1373 1372
  .data.MESSAGE_KEY_latitude
1374
-                0x00000000000009cc        0x4 src/message_keys.auto.c.9.o
1375
-                0x00000000000009cc                MESSAGE_KEY_latitude
1373
+                0x0000000000000a3c        0x4 src/message_keys.auto.c.9.o
1374
+                0x0000000000000a3c                MESSAGE_KEY_latitude
1376 1375
  .data.MESSAGE_KEY_speed
1377
-                0x00000000000009d0        0x4 src/message_keys.auto.c.9.o
1378
-                0x00000000000009d0                MESSAGE_KEY_speed
1376
+                0x0000000000000a40        0x4 src/message_keys.auto.c.9.o
1377
+                0x0000000000000a40                MESSAGE_KEY_speed
1379 1378
 
1380
-.igot.plt       0x00000000000009d4        0x0
1379
+.igot.plt       0x0000000000000a44        0x0
1381 1380
  .igot.plt      0x0000000000000000        0x0 /home/louis/pebble-dev/pebble-sdk-4.6-rc2-linux64/arm-cs-tools/bin/../lib/gcc/arm-none-eabi/4.7.2/thumb2/crtbegin.o
1382 1381
 
1383
-.got            0x00000000000009d4       0x24
1384
- .got           0x00000000000009d4       0x24 /home/louis/pebble-dev/pebble-sdk-4.6-rc2-linux64/arm-cs-tools/bin/../lib/gcc/arm-none-eabi/4.7.2/thumb2/crtbegin.o
1382
+.got            0x0000000000000a44       0x24
1383
+ .got           0x0000000000000a44       0x24 /home/louis/pebble-dev/pebble-sdk-4.6-rc2-linux64/arm-cs-tools/bin/../lib/gcc/arm-none-eabi/4.7.2/thumb2/crtbegin.o
1385 1384
 
1386
-.got.plt        0x00000000000009f8        0xc
1387
- .got.plt       0x00000000000009f8        0xc /home/louis/pebble-dev/pebble-sdk-4.6-rc2-linux64/arm-cs-tools/bin/../lib/gcc/arm-none-eabi/4.7.2/thumb2/crtbegin.o
1388
-                0x00000000000009f8                _GLOBAL_OFFSET_TABLE_
1385
+.got.plt        0x0000000000000a68        0xc
1386
+ .got.plt       0x0000000000000a68        0xc /home/louis/pebble-dev/pebble-sdk-4.6-rc2-linux64/arm-cs-tools/bin/../lib/gcc/arm-none-eabi/4.7.2/thumb2/crtbegin.o
1387
+                0x0000000000000a68                _GLOBAL_OFFSET_TABLE_
1389 1388
 
1390
-.bss            0x0000000000000a04       0x82
1389
+.bss            0x0000000000000a74       0x88
1391 1390
  *(.bss)
1392 1391
  *(.bss.*)
1393 1392
  .bss.s_timestamp
1394
-                0x0000000000000a04        0xd src/c/bike_companion.c.9.o
1395
- *fill*         0x0000000000000a11        0x3 
1393
+                0x0000000000000a74        0xe src/c/bike_companion.c.9.o
1394
+ *fill*         0x0000000000000a82        0x2 
1396 1395
  .bss.s_text_layer
1397
-                0x0000000000000a14        0x4 src/c/bike_companion.c.9.o
1398
- .bss.s_window  0x0000000000000a18        0x4 src/c/bike_companion.c.9.o
1399
- .bss.s_speed   0x0000000000000a1c        0x5 src/c/bike_companion.c.9.o
1400
- *fill*         0x0000000000000a21        0x3 
1401
- .bss.msg       0x0000000000000a24        0x4 src/c/bike_companion.c.9.o
1396
+                0x0000000000000a84        0x4 src/c/bike_companion.c.9.o
1397
+ .bss.s_window  0x0000000000000a88        0x4 src/c/bike_companion.c.9.o
1398
+ .bss.s_speed   0x0000000000000a8c        0x6 src/c/bike_companion.c.9.o
1399
+ *fill*         0x0000000000000a92        0x2 
1400
+ .bss.msg       0x0000000000000a94        0x4 src/c/bike_companion.c.9.o
1402 1401
  .bss.s_accuracy
1403
-                0x0000000000000a28        0x4 src/c/bike_companion.c.9.o
1402
+                0x0000000000000a98        0x5 src/c/bike_companion.c.9.o
1404 1403
  .bss.s_longitude
1405
-                0x0000000000000a2c        0xc src/c/bike_companion.c.9.o
1404
+                0x0000000000000a9d        0xd src/c/bike_companion.c.9.o
1406 1405
  .bss.s_altitude
1407
-                0x0000000000000a38        0x5 src/c/bike_companion.c.9.o
1408
- .bss.s_status  0x0000000000000a3d        0x2 src/c/bike_companion.c.9.o
1409
- *fill*         0x0000000000000a3f        0x1 
1410
- .bss.size      0x0000000000000a40        0x4 src/c/bike_companion.c.9.o
1406
+                0x0000000000000aaa        0x6 src/c/bike_companion.c.9.o
1407
+ .bss.s_status  0x0000000000000ab0        0x3 src/c/bike_companion.c.9.o
1408
+ *fill*         0x0000000000000ab3        0x1 
1409
+ .bss.size      0x0000000000000ab4        0x4 src/c/bike_companion.c.9.o
1411 1410
  .bss.s_altitude_accuracy
1412
-                0x0000000000000a44        0x3 src/c/bike_companion.c.9.o
1411
+                0x0000000000000ab8        0x4 src/c/bike_companion.c.9.o
1413 1412
  .bss.s_js_ready
1414
-                0x0000000000000a47        0x1 src/c/bike_companion.c.9.o
1415
- .bss.s_msg     0x0000000000000a48       0x32 src/c/bike_companion.c.9.o
1413
+                0x0000000000000abc        0x1 src/c/bike_companion.c.9.o
1414
+ .bss.s_msg     0x0000000000000abd       0x32 src/c/bike_companion.c.9.o
1416 1415
  .bss.s_latitude
1417
-                0x0000000000000a7a        0xc src/c/bike_companion.c.9.o
1416
+                0x0000000000000aef        0xd src/c/bike_companion.c.9.o
1418 1417
 
1419 1418
 DISCARD
1420 1419
  libc.a(*)
... ...
@@ -1453,20 +1452,20 @@ OUTPUT(/home/louis/pebble-dev/repo_remote/bike_companion/build/aplite/pebble-app
1453 1452
  .comment       0x0000000000000000       0x4f src/message_keys.auto.c.9.o
1454 1453
  .comment       0x0000000000000000       0x4f /home/louis/pebble-dev/pebble-sdk-4.6-rc2-linux64/arm-cs-tools/bin/../lib/gcc/arm-none-eabi/4.7.2/thumb2/crtend.o
1455 1454
 
1456
-.debug_info     0x0000000000000000     0x18b0
1457
- .debug_info    0x0000000000000000     0x1421 src/c/bike_companion.c.9.o
1458
- .debug_info    0x0000000000001421      0x31a aplite/appinfo.auto.c.9.o
1459
- .debug_info    0x000000000000173b       0x64 aplite/src/resource_ids.auto.c.9.o
1460
- .debug_info    0x000000000000179f      0x111 src/message_keys.auto.c.9.o
1455
+.debug_info     0x0000000000000000     0x19ea
1456
+ .debug_info    0x0000000000000000     0x155b src/c/bike_companion.c.9.o
1457
+ .debug_info    0x000000000000155b      0x31a aplite/appinfo.auto.c.9.o
1458
+ .debug_info    0x0000000000001875       0x64 aplite/src/resource_ids.auto.c.9.o
1459
+ .debug_info    0x00000000000018d9      0x111 src/message_keys.auto.c.9.o
1461 1460
 
1462
-.debug_abbrev   0x0000000000000000      0x3fe
1463
- .debug_abbrev  0x0000000000000000      0x2f6 src/c/bike_companion.c.9.o
1464
- .debug_abbrev  0x00000000000002f6       0x9e aplite/appinfo.auto.c.9.o
1465
- .debug_abbrev  0x0000000000000394       0x26 aplite/src/resource_ids.auto.c.9.o
1466
- .debug_abbrev  0x00000000000003ba       0x44 src/message_keys.auto.c.9.o
1461
+.debug_abbrev   0x0000000000000000      0x44c
1462
+ .debug_abbrev  0x0000000000000000      0x344 src/c/bike_companion.c.9.o
1463
+ .debug_abbrev  0x0000000000000344       0x9e aplite/appinfo.auto.c.9.o
1464
+ .debug_abbrev  0x00000000000003e2       0x26 aplite/src/resource_ids.auto.c.9.o
1465
+ .debug_abbrev  0x0000000000000408       0x44 src/message_keys.auto.c.9.o
1467 1466
 
1468
-.debug_loc      0x0000000000000000      0x4f0
1469
- .debug_loc     0x0000000000000000      0x4f0 src/c/bike_companion.c.9.o
1467
+.debug_loc      0x0000000000000000      0x4d7
1468
+ .debug_loc     0x0000000000000000      0x4d7 src/c/bike_companion.c.9.o
1470 1469
 
1471 1470
 .debug_aranges  0x0000000000000000       0xc0
1472 1471
  .debug_aranges
... ...
@@ -1478,24 +1477,24 @@ OUTPUT(/home/louis/pebble-dev/repo_remote/bike_companion/build/aplite/pebble-app
1478 1477
  .debug_aranges
1479 1478
                 0x00000000000000a8       0x18 src/message_keys.auto.c.9.o
1480 1479
 
1481
-.debug_ranges   0x0000000000000000       0x68
1482
- .debug_ranges  0x0000000000000000       0x68 src/c/bike_companion.c.9.o
1480
+.debug_ranges   0x0000000000000000       0x98
1481
+ .debug_ranges  0x0000000000000000       0x98 src/c/bike_companion.c.9.o
1483 1482
 
1484
-.debug_line     0x0000000000000000      0x54c
1485
- .debug_line    0x0000000000000000      0x344 src/c/bike_companion.c.9.o
1486
- .debug_line    0x0000000000000344      0x123 aplite/appinfo.auto.c.9.o
1487
- .debug_line    0x0000000000000467       0x1d aplite/src/resource_ids.auto.c.9.o
1488
- .debug_line    0x0000000000000484       0xc8 src/message_keys.auto.c.9.o
1483
+.debug_line     0x0000000000000000      0x55b
1484
+ .debug_line    0x0000000000000000      0x353 src/c/bike_companion.c.9.o
1485
+ .debug_line    0x0000000000000353      0x123 aplite/appinfo.auto.c.9.o
1486
+ .debug_line    0x0000000000000476       0x1d aplite/src/resource_ids.auto.c.9.o
1487
+ .debug_line    0x0000000000000493       0xc8 src/message_keys.auto.c.9.o
1489 1488
 
1490
-.debug_str      0x0000000000000000      0xd27
1491
- .debug_str     0x0000000000000000      0xaba src/c/bike_companion.c.9.o
1492
-                                        0xbb6 (size before relaxing)
1493
- .debug_str     0x0000000000000aba      0x236 aplite/appinfo.auto.c.9.o
1489
+.debug_str      0x0000000000000000      0xd08
1490
+ .debug_str     0x0000000000000000      0xa9b src/c/bike_companion.c.9.o
1491
+                                        0xb97 (size before relaxing)
1492
+ .debug_str     0x0000000000000a9b      0x236 aplite/appinfo.auto.c.9.o
1494 1493
                                         0x326 (size before relaxing)
1495
- .debug_str     0x0000000000000cf0       0x1f aplite/src/resource_ids.auto.c.9.o
1494
+ .debug_str     0x0000000000000cd1       0x1f aplite/src/resource_ids.auto.c.9.o
1496 1495
                                          0xe7 (size before relaxing)
1497
- .debug_str     0x0000000000000d0f       0x18 src/message_keys.auto.c.9.o
1496
+ .debug_str     0x0000000000000cf0       0x18 src/message_keys.auto.c.9.o
1498 1497
                                         0x1ab (size before relaxing)
1499 1498
 
1500
-.debug_frame    0x0000000000000000      0x12c
1501
- .debug_frame   0x0000000000000000      0x12c src/c/bike_companion.c.9.o
1499
+.debug_frame    0x0000000000000000      0x130
1500
+ .debug_frame   0x0000000000000000      0x130 src/c/bike_companion.c.9.o
... ...
@@ -84,44 +84,41 @@
84 84
 	
85 85
 	var messageKeys = __webpack_require__(5);
86 86
 	
87
-	//var sid;
88
-	var status;
89
-	//var retry;
90
-	//retry = 1;
87
+	var message;
91 88
 	
92 89
 	var locationInterval;
93 90
 	var locationOptions = {
94
-	    'enableHighAccuracy': true, // default = false (quick and dirty mode), can be true (more accurate but need more power and time)
95
-	    'timeout': 2000, //2s timeout
96
-	    'maximumAge': 1000 // 1s cache
91
+	  'enableHighAccuracy': true, // default = false (quick and dirty mode), can be true (more accurate but need more power and time)
92
+	  'timeout': 2000, //2s timeout
93
+	  'maximumAge': 1000 // 1s cache
97 94
 	};
98 95
 	
99 96
 	// Store location in Pebble app local storage
100 97
 	//
101 98
 	function storeLocation(position) {
102
-	    var latitude = position.coords.latitude;
103
-	    var longitude = position.coords.longitude;
104
-	    var timestamp = position.timestamp;
105
-	    localStorage.setItem("latitude", latitude);
106
-	    localStorage.setItem("longitude", longitude);
107
-	    localStorage.setItem("timestamp", timestamp);
108
-	    // console.log("Stored location " + position.coords.latitude + ',' + position.coords.longitude);
99
+	  var latitude = position.coords.latitude;
100
+	  var longitude = position.coords.longitude;
101
+	  var timestamp = position.timestamp;
102
+	  localStorage.setItem("latitude", latitude);
103
+	  localStorage.setItem("longitude", longitude);
104
+	  localStorage.setItem("timestamp", timestamp);
105
+	  // console.log("Stored location " + position.coords.latitude + ',' + position.coords.longitude);
109 106
 	}
110 107
 	
111 108
 	// Get location from Pebble app local storage
112 109
 	//
113 110
 	function getLocation() {
114
-	    if ( localStorage.getItem("latitude") || localStorage.getItem("longitude") || localStorage.getItem("timestamp")) {
115
-	        var la = localStorage.getItem("latitude");
116
-	        var lo = localStorage.getItem("longitude");
117
-	        var ti = localStorage.getItem("timestamp");
118
-	        var co = { "latitude": la, "longitude": lo };
119
-	        var pos = { "coords": co, "timestamp": ti };
120
-	        // console.log("Stored location " + pos.co.la + ',' + pos.co.lo);
121
-	        return pos;
122
-	    }else{
123
-	        return null;
124
-	    }
111
+	  if (localStorage.getItem("latitude") || localStorage.getItem("longitude") || localStorage.getItem("timestamp")) {
112
+	    var la = localStorage.getItem("latitude");
113
+	    var lo = localStorage.getItem("longitude");
114
+	    var ti = localStorage.getItem("timestamp");
115
+	    var co = { "latitude": la, "longitude": lo };
116
+	    var pos = { "coords": co, "timestamp": ti };
117
+	    // console.log("Stored location " + pos.co.la + ',' + pos.co.lo);
118
+	    return pos;
119
+	  } else {
120
+	    return null;
121
+	  }
125 122
 	}
126 123
 	
127 124
 	
... ...
@@ -129,132 +126,168 @@
129 126
 	// IMPORTANT : this is a calculation from 2D projection, altitude is not involved
130 127
 	//
131 128
 	function distance_on_geoid(lat1, lon1, lat2, lon2) {
132
-	    // Convert degrees to radians
133
-	    lat1 = lat1 * Math.PI / 180.0;
134
-	    lon1 = lon1 * Math.PI / 180.0;
135
-	    lat2 = lat2 * Math.PI / 180.0;
136
-	    lon2 = lon2 * Math.PI / 180.0;
137
-	    // radius of earth in metres
138
-	    r = 6378100;
139
-	    // P
140
-	    rho1 = r * Math.cos(lat1);
141
-	    z1 = r * Math.sin(lat1);
142
-	    x1 = rho1 * Math.cos(lon1);
143
-	    y1 = rho1 * Math.sin(lon1);
144
-	    // Q
145
-	    rho2 = r * Math.cos(lat2);
146
-	    z2 = r * Math.sin(lat2);
147
-	    x2 = rho2 * Math.cos(lon2);
148
-	    y2 = rho2 * Math.sin(lon2);
149
-	    // Dot product
150
-	    dot = (x1 * x2 + y1 * y2 + z1 * z2);
151
-	    cos_theta = dot / (r * r);
152
-	    theta = Math.acos(cos_theta);
153
-	    // Distance in Metres
154
-	    return r * theta;
129
+	  // Convert degrees to radians
130
+	  lat1 = lat1 * Math.PI / 180.0;
131
+	  lon1 = lon1 * Math.PI / 180.0;
132
+	  lat2 = lat2 * Math.PI / 180.0;
133
+	  lon2 = lon2 * Math.PI / 180.0;
134
+	  // radius of earth in metres
135
+	  r = 6378100;
136
+	  // P
137
+	  rho1 = r * Math.cos(lat1);
138
+	  z1 = r * Math.sin(lat1);
139
+	  x1 = rho1 * Math.cos(lon1);
140
+	  y1 = rho1 * Math.sin(lon1);
141
+	  // Q
142
+	  rho2 = r * Math.cos(lat2);
143
+	  z2 = r * Math.sin(lat2);
144
+	  x2 = rho2 * Math.cos(lon2);
145
+	  y2 = rho2 * Math.sin(lon2);
146
+	  // Dot product
147
+	  dot = (x1 * x2 + y1 * y2 + z1 * z2);
148
+	  cos_theta = dot / (r * r);
149
+	  theta = Math.acos(cos_theta);
150
+	  // Distance in Metres
151
+	  return r * theta;
155 152
 	}
156 153
 	
157 154
 	// Calculate speed from 2 geoloc point arrays (with lat,long,timestamp)
158 155
 	//
159 156
 	function speed_from_distance_and_time(p1, p2) {
160
-	    dist = distance_on_geoid(p1.coords.latitude, p1.coords.longitude, p2.coords.latitude, p2.coords.longitude);
161
-	    // timestamp is in milliseconds
162
-	    time_s = (p2.timestamp - p1.timestamp) / 1000.0;
163
-	    speed_mps = dist / time_s;
164
-	    speed_kph = (speed_mps * 3600.0) / 1000.0;
165
-	    return speed_kph;
157
+	  dist = distance_on_geoid(p1.coords.latitude, p1.coords.longitude, p2.coords.latitude, p2.coords.longitude);
158
+	  // timestamp is in milliseconds
159
+	  time_s = (p2.timestamp - p1.timestamp) / 1000.0;
160
+	  speed_mps = dist / time_s;
161
+	  speed_kph = (speed_mps * 3600.0) / 1000.0;
162
+	  return speed_kph;
166 163
 	}
167 164
 	
168 165
 	// split float number into an array of int (null returned instead of 0 for decimal)
169 166
 	//
170 167
 	function splitFloatNumber(num) {
171
-	    const intStr = num.toString().split('.')[0];
172
-	    const decimalStr = num.toString().split('.')[1];
173
-	    return [Number(intStr), Number(decimalStr)];
168
+	  const intStr = num.toString().split('.')[0];
169
+	  const decimalStr = num.toString().split('.')[1];
170
+	  return [Number(intStr), Number(decimalStr)];
171
+	}
172
+	
173
+	// Build GPX headers
174
+	//
175
+	function GPXHeadersBuilder(timestamp, name, type) {
176
+	  var headers = '<?xml version="1.0" encoding="UTF-8"?><gpx creator="Pebble with barometer" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd" version="1.1" xmlns="http://www.topografix.com/GPX/1/1"><metadata><time>' + timestamp + '</time></metadata><trk><name>' + name + '</name><type>' + type + '</type><trkseg>';
177
+	  var ret = localStorage.setItem("GPX", headers);
178
+	  return true;
179
+	}
180
+	
181
+	// Build GPX footer
182
+	//
183
+	function GPXtrkptBuilder(lat, lon, ele, timestamp) {
184
+	  var GPX = localStorage.getItem("GPX");
185
+	  var trkpt = '<trkpt lat="' + lat + '" lon="' + lon + '"><ele>' + ele + '</ele><time>' + timestamp + '</time></trkpt>';
186
+	  var ret = localStorage.setItem("GPX", GPX + trkpt);
187
+	  return true;
188
+	}
189
+	
190
+	// Build GPX footer
191
+	//
192
+	function GPXfooterBuilder() {
193
+	  var GPX = localStorage.getItem("GPX");
194
+	  var footer = '</trkseg></trk></gpx>';
195
+	  var ret = localStorage.setItem("GPX", GPX + footer);
196
+	  return true;
174 197
 	}
175 198
 	
199
+	// Adding leading characters to string for nice displays
200
+	//
176 201
 	function padStart(string, max_length, padding) {
177
-	    if (string.length > max_length) {
178
-	        return string;
179
-	    } else {
180
-	        var new_str = string;
181
-	        for (index = string.length; index < max_length; index++) {
182
-	            new_str = "0" + new_str;
183
-	        }
184
-	        return new_str;
202
+	  if (string.length > max_length) {
203
+	    return string;
204
+	  } else {
205
+	    var new_str = string;
206
+	    for (index = string.length; index < max_length; index++) {
207
+	      new_str = "0" + new_str;
185 208
 	    }
209
+	    return new_str;
210
+	  }
186 211
 	}
187 212
 	
188 213
 	// called in case of successful geoloc gathering and sends the coordinate to watch
189 214
 	//
190 215
 	function locationSuccess(new_pos) {
191
-	    var prev_pos = getLocation();
192
-	    storeLocation(new_pos);
193
-	    if (prev_pos === null){
194
-	        return null;
195
-	    }else{
196
-	
197
-	        var speed = speed_from_distance_and_time(prev_pos, new_pos);
198
-	
199
-	        // Prepare display on watch
200
-	        // now it's only raw data
201
-	        //init strings
202
-	        var latitudeString = "";
203
-	        var longitudeString = "";
204
-	        var accuracyString = "";
205
-	        var altitudeString = "";
206
-	        var altitudeAccuracyString = "";
207
-	        var timestampString = "";
208
-	        var speedString = "";
209
-	        //formating for precision and max size
210
-	        latitudeString = new_pos.coords.latitude.toString().substring(0, 12);
211
-	        longitudeString = new_pos.coords.longitude.toString().substring(0, 12);
212
-	        accuracyString = new_pos.coords.accuracy.toString().substring(0, 4);
213
-	        altitudeString = splitFloatNumber(new_pos.coords.altitude)[0].toString().substring(0, 5);
214
-	        altitudeAccuracyString = splitFloatNumber(new_pos.coords.altitudeAccuracy)[0].toString().substring(0, 3);
215
-	        timestampString = splitFloatNumber(new_pos.timestamp)[0].toString().substring(0, 13);
216
-	        speedString = speed.toString().substring(0, 5);
217
-	        // logging
218
-	        console.log('Your current position at ' + timestampString + ' is:');
219
-	        console.log('Coordinates: ' + latitudeString+ ', ' + longitudeString+' ; with a ' + accuracyString + 'm accuracy');
220
-	        console.log('Altitude: ' + altitudeString + 'm ; with a ' + altitudeAccuracyString + 'm accuracy');
221
-	        console.log('Speed: ' + speedString + ' km/h.');
222
-	
223
-	        // Build message
224
-	        var message = "OK";
225
-	        var dict = {
226
-	            /*'latitude': padStart(latitudeString, 12, '0'),
227
-	            'longitude': padStart(longitudeString, 12, '0'),
228
-	            'accuracy': padStart(accuracyString, 4, '0'),
229
-	            'altitude': padStart(altitudeString, 5, '0'),
230
-	            'altitude_accuracy': padStart(altitudeAccuracyString, 3, '0'),
231
-	            'timestamp': padStart(timestampString, 13, '0'),*/
232
-	            'speed': padStart(speedString, 5, '0'),
233
-	            'status': message
234
-	        };
235
-	        //console.log('Message to send: ' + JSON.stringify(dict));
236
-	
237
-	        // Send the message
238
-	        Pebble.sendAppMessage(dict, function () {
239
-	            console.log('Message sent successfully: ' + JSON.stringify(dict));
240
-	        }, function (e) {
241
-	            console.log('Message (' + JSON.stringify(dict) + ') failed: ' + JSON.stringify(e));
242
-	        });
216
+	  var prev_pos = getLocation();
217
+	  storeLocation(new_pos);
218
+	  if (prev_pos === null) {
219
+	    GPXHeadersBuilder(timestampISO = new Date(new_pos.timestamp).toISOString(), "test", "18");
220
+	    return null;
221
+	  } else {
222
+	    var speed = speed_from_distance_and_time(prev_pos, new_pos);
223
+	
224
+	    // Prepare display on watch
225
+	    // now it's only raw data
226
+	    //init strings
227
+	    var latitudeString = "";
228
+	    var longitudeString = "";
229
+	    var accuracyString = "";
230
+	    var altitudeString = "";
231
+	    //var altitudeAccuracyString = "";
232
+	    //var timestampString = "";
233
+	    var speedString = "";
234
+	
235
+	    //formating for precision and max size
236
+	    latitudeString = new_pos.coords.latitude.toString().substring(0, 12);
237
+	    longitudeString = new_pos.coords.longitude.toString().substring(0, 12);
238
+	    accuracyString = new_pos.coords.accuracy.toString().substring(0, 4);
239
+	    altitudeString = splitFloatNumber(new_pos.coords.altitude)[0].toString().substring(0, 5);
240
+	    timestampISO = new Date(new_pos.timestamp).toISOString();
241
+	    speedString = speed.toString().substring(0, 5);
242
+	
243
+	    if (speedString == "NaN") {
244
+	      speedString = "---";
243 245
 	    }
246
+	    // logging
247
+	    /*console.log('Your current position at ' + timestampString + ' is:');
248
+	    console.log('Coordinates: ' + latitudeString+ ', ' + longitudeString+' ; with a ' + accuracyString + 'm accuracy');
249
+	    console.log('Altitude: ' + altitudeString + 'm ; with a ' + altitudeAccuracyString + 'm accuracy');
250
+	    console.log('Speed: ' + speedString + ' km/h.');
251
+	    */
252
+	    GPXtrkptBuilder(latitudeString, longitudeString, altitudeString, timestampISO);
253
+	
254
+	    console.log('GPX: ' + localStorage.getItem("GPX"));
255
+	
256
+	    // Build message
257
+	    message = "OK";
258
+	    var dict = {
259
+	      //'latitude': padStart(latitudeString, 12, '0'),
260
+	      //'longitude': padStart(longitudeString, 12, '0'),
261
+	      'accuracy': accuracyString,
262
+	      'altitude': altitudeString,
263
+	      //'altitude_accuracy': padStart(altitudeAccuracyString, 3, '0'),
264
+	      //'timestamp': padStart(timestampString, 13, '0'),
265
+	      'speed': speedString,
266
+	      'status': message
267
+	    };
268
+	    //console.log('Message to send: ' + JSON.stringify(dict));
269
+	
270
+	    // Send the message
271
+	    Pebble.sendAppMessage(dict, function () {
272
+	      console.log('Message sent successfully: ' + JSON.stringify(dict));
273
+	    }, function (e) {
274
+	      console.log('Message (' + JSON.stringify(dict) + ') failed: ' + JSON.stringify(e));
275
+	    });
276
+	  }
244 277
 	}
245 278
 	
246 279
 	function locationError(err) {
247
-	    console.warn('location error (' + err.code + '): ' + err.message);
248
-	    /* // No app when no location
249
-	    Pebble.sendAppMessage({
250
-	        'WEATHER_CITY_KEY': 'Loc Unavailable',
251
-	        'WEATHER_TEMPERATURE_KEY': 'N/A'
252
-	    });*/
280
+	  console.warn('location error (' + err.code + '): ' + err.message);
281
+	  /* // No app when no location
282
+	       Pebble.sendAppMessage({
283
+	           'WEATHER_CITY_KEY': 'Loc Unavailable',
284
+	           'WEATHER_TEMPERATURE_KEY': 'N/A'
285
+	       });*/
253 286
 	}
254 287
 	
255 288
 	function get_coordinate() {
256
-	    console.log('---- get_coordinate');
257
-	    navigator.geolocation.getCurrentPosition(locationSuccess, locationError, locationOptions);
289
+	  console.log('---- get_coordinate');
290
+	  navigator.geolocation.getCurrentPosition(locationSuccess, locationError, locationOptions);
258 291
 	
259 292
 	}
260 293
 	
... ...
@@ -354,47 +387,47 @@
354 387
 	
355 388
 	}*/
356 389
 	
357
-	function init(){
358
-	    // local storage init
359
-	    localStorage.clear();
360
-	    // clear any other var to do
361
-	    clearInterval(locationInterval);
390
+	function init() {
391
+	  // local storage init
392
+	  localStorage.clear();
393
+	  // clear any other var to do
394
+	  clearInterval(locationInterval);
362 395
 	
363
-	    console.log('--- Starting regular getCurrentPosition loop using setInterval at 1 sec');
364
-	    locationInterval = setInterval(function() {
365
-	      navigator.geolocation.getCurrentPosition(locationSuccess, locationError, locationOptions);
366
-	    }, 1000);
396
+	  console.log('--- Starting regular getCurrentPosition loop using setInterval at 1 sec');
397
+	  locationInterval = setInterval(function () {
398
+	    navigator.geolocation.getCurrentPosition(locationSuccess, locationError, locationOptions);
399
+	  }, 1000);
367 400
 	
368 401
 	
369 402
 	}
370 403
 	
371 404
 	// Get JS readiness events
372 405
 	Pebble.addEventListener('ready', function (e) {
373
-	    console.log('PebbleKit JS is ready');
374
-	    // Update Watch on this
375
-	    Pebble.sendAppMessage({ 'JSReady': 1 });
406
+	  console.log('PebbleKit JS is ready');
407
+	  // Update Watch on this
408
+	  Pebble.sendAppMessage({ 'JSReady': 1 });
376 409
 	
377
-	    init();
410
+	  init();
378 411
 	});
379 412
 	
380 413
 	// Get AppMessage events
381 414
 	Pebble.addEventListener('appmessage', function (e) {
382
-	    // Get the dictionary from the message
383
-	    var dict = e.payload;
384
-	    console.log(dict[0].toString());
385
-	    switch (dict[0]) {
386
-	        case 'get':
387
-	            get_coordinate();
388
-	            break;/*
415
+	  // Get the dictionary from the message
416
+	  var dict = e.payload;
417
+	  console.log(dict[0].toString());
418
+	  switch (dict[0]) {
419
+	    case 'get':
420
+	      get_coordinate();
421
+	      break;/*
389 422
 	    case 'home_on':
390 423
 	      switch_home(true);
391 424
 	      break;
392 425
 	    case 'home_off':
393 426
 	      switch_home(false);
394 427
 	      break;*/
395
-	        default:
396
-	            console.log('Sorry. I don\'t understand your request :' + dict[0]);
397
-	    }
428
+	    default:
429
+	      console.log('Sorry. I don\'t understand your request :' + dict[0]);
430
+	  }
398 431
 	
399 432
 	});
400 433
 
... ...
@@ -1 +1 @@
1
-{"version":3,"sources":["webpack/bootstrap 9eefdcfddb5a31c0bfa4","/home/louis/.pebble-sdk/SDKs/4.3/sdk-core/pebble/common/include/_pkjs_shared_additions.js","./src/pkjs/index.js","./~/pebble-clay/dist/js/index.js","/home/louis/.pebble-sdk/SDKs/4.3/sdk-core/pebble/common/include/_message_key_wrapper.js","./build/js/message_keys.json","./src/pkjs/config.js"],"names":[],"mappings":";AAAA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,uBAAe;AACf;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;;;;;;;;;;;;;;ACtCA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;;AAEA,EAAC;;;;;;;ACnBD;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAkB;AAClB,oBAAmB;AACnB;AACA;AACA,MAAK;AACL;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,MAAK;AACL;AACA,oCAAmC,oBAAoB;AACvD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;;AAEL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iFAAgF;AAChF,yDAAwD;AACxD;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,UAAS;AACT;AACA,UAAS;AACT;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK,EAAE;AACP;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;A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","file":"pebble-js-app.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId])\n \t\t\treturn installedModules[moduleId].exports;\n\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\texports: {},\n \t\t\tid: moduleId,\n \t\t\tloaded: false\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.loaded = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(0);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 9eefdcfddb5a31c0bfa4","(function(p) {\n  if (!p === undefined) {\n    console.error('Pebble object not found!?');\n    return;\n  }\n\n  // Aliases:\n  p.on = p.addEventListener;\n  p.off = p.removeEventListener;\n\n  // For Android (WebView-based) pkjs, print stacktrace for uncaught errors:\n  if (typeof window !== 'undefined' && window.addEventListener) {\n    window.addEventListener('error', function(event) {\n      if (event.error && event.error.stack) {\n        console.error('' + event.error + '\\n' + event.error.stack);\n      }\n    });\n  }\n\n})(Pebble);\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// /home/louis/.pebble-sdk/SDKs/4.3/sdk-core/pebble/common/include/_pkjs_shared_additions.js\n// module id = 1\n// module chunks = 0","var Clay = require('pebble-clay');\nvar clayConfig = require('./config');\nvar clay = new Clay(clayConfig);\n\nvar messageKeys = require('message_keys');\n\n//var sid;\nvar status;\n//var retry;\n//retry = 1;\n\nvar locationInterval;\nvar locationOptions = {\n    'enableHighAccuracy': true, // default = false (quick and dirty mode), can be true (more accurate but need more power and time)\n    'timeout': 2000, //2s timeout\n    'maximumAge': 1000 // 1s cache\n};\n\n// Store location in Pebble app local storage\n//\nfunction storeLocation(position) {\n    var latitude = position.coords.latitude;\n    var longitude = position.coords.longitude;\n    var timestamp = position.timestamp;\n    localStorage.setItem(\"latitude\", latitude);\n    localStorage.setItem(\"longitude\", longitude);\n    localStorage.setItem(\"timestamp\", timestamp);\n    // console.log(\"Stored location \" + position.coords.latitude + ',' + position.coords.longitude);\n}\n\n// Get location from Pebble app local storage\n//\nfunction getLocation() {\n    if ( localStorage.getItem(\"latitude\") || localStorage.getItem(\"longitude\") || localStorage.getItem(\"timestamp\")) {\n        var la = localStorage.getItem(\"latitude\");\n        var lo = localStorage.getItem(\"longitude\");\n        var ti = localStorage.getItem(\"timestamp\");\n        var co = { \"latitude\": la, \"longitude\": lo };\n        var pos = { \"coords\": co, \"timestamp\": ti };\n        // console.log(\"Stored location \" + pos.co.la + ',' + pos.co.lo);\n        return pos;\n    }else{\n        return null;\n    }\n}\n\n\n// Calculate the distance from 2 geoloc in degrees.\n// IMPORTANT : this is a calculation from 2D projection, altitude is not involved\n//\nfunction distance_on_geoid(lat1, lon1, lat2, lon2) {\n    // Convert degrees to radians\n    lat1 = lat1 * Math.PI / 180.0;\n    lon1 = lon1 * Math.PI / 180.0;\n    lat2 = lat2 * Math.PI / 180.0;\n    lon2 = lon2 * Math.PI / 180.0;\n    // radius of earth in metres\n    r = 6378100;\n    // P\n    rho1 = r * Math.cos(lat1);\n    z1 = r * Math.sin(lat1);\n    x1 = rho1 * Math.cos(lon1);\n    y1 = rho1 * Math.sin(lon1);\n    // Q\n    rho2 = r * Math.cos(lat2);\n    z2 = r * Math.sin(lat2);\n    x2 = rho2 * Math.cos(lon2);\n    y2 = rho2 * Math.sin(lon2);\n    // Dot product\n    dot = (x1 * x2 + y1 * y2 + z1 * z2);\n    cos_theta = dot / (r * r);\n    theta = Math.acos(cos_theta);\n    // Distance in Metres\n    return r * theta;\n}\n\n// Calculate speed from 2 geoloc point arrays (with lat,long,timestamp)\n//\nfunction speed_from_distance_and_time(p1, p2) {\n    dist = distance_on_geoid(p1.coords.latitude, p1.coords.longitude, p2.coords.latitude, p2.coords.longitude);\n    // timestamp is in milliseconds\n    time_s = (p2.timestamp - p1.timestamp) / 1000.0;\n    speed_mps = dist / time_s;\n    speed_kph = (speed_mps * 3600.0) / 1000.0;\n    return speed_kph;\n}\n\n// split float number into an array of int (null returned instead of 0 for decimal)\n//\nfunction splitFloatNumber(num) {\n    const intStr = num.toString().split('.')[0];\n    const decimalStr = num.toString().split('.')[1];\n    return [Number(intStr), Number(decimalStr)];\n}\n\nfunction padStart(string, max_length, padding) {\n    if (string.length > max_length) {\n        return string;\n    } else {\n        var new_str = string;\n        for (index = string.length; index < max_length; index++) {\n            new_str = \"0\" + new_str;\n        }\n        return new_str;\n    }\n}\n\n// called in case of successful geoloc gathering and sends the coordinate to watch\n//\nfunction locationSuccess(new_pos) {\n    var prev_pos = getLocation();\n    storeLocation(new_pos);\n    if (prev_pos === null){\n        return null;\n    }else{\n\n        var speed = speed_from_distance_and_time(prev_pos, new_pos);\n\n        // Prepare display on watch\n        // now it's only raw data\n        //init strings\n        var latitudeString = \"\";\n        var longitudeString = \"\";\n        var accuracyString = \"\";\n        var altitudeString = \"\";\n        var altitudeAccuracyString = \"\";\n        var timestampString = \"\";\n        var speedString = \"\";\n        //formating for precision and max size\n        latitudeString = new_pos.coords.latitude.toString().substring(0, 12);\n        longitudeString = new_pos.coords.longitude.toString().substring(0, 12);\n        accuracyString = new_pos.coords.accuracy.toString().substring(0, 4);\n        altitudeString = splitFloatNumber(new_pos.coords.altitude)[0].toString().substring(0, 5);\n        altitudeAccuracyString = splitFloatNumber(new_pos.coords.altitudeAccuracy)[0].toString().substring(0, 3);\n        timestampString = splitFloatNumber(new_pos.timestamp)[0].toString().substring(0, 13);\n        speedString = speed.toString().substring(0, 5);\n        // logging\n        console.log('Your current position at ' + timestampString + ' is:');\n        console.log('Coordinates: ' + latitudeString+ ', ' + longitudeString+' ; with a ' + accuracyString + 'm accuracy');\n        console.log('Altitude: ' + altitudeString + 'm ; with a ' + altitudeAccuracyString + 'm accuracy');\n        console.log('Speed: ' + speedString + ' km/h.');\n\n        // Build message\n        var message = \"OK\";\n        var dict = {\n            /*'latitude': padStart(latitudeString, 12, '0'),\n            'longitude': padStart(longitudeString, 12, '0'),\n            'accuracy': padStart(accuracyString, 4, '0'),\n            'altitude': padStart(altitudeString, 5, '0'),\n            'altitude_accuracy': padStart(altitudeAccuracyString, 3, '0'),\n            'timestamp': padStart(timestampString, 13, '0'),*/\n            'speed': padStart(speedString, 5, '0'),\n            'status': message\n        };\n        //console.log('Message to send: ' + JSON.stringify(dict));\n\n        // Send the message\n        Pebble.sendAppMessage(dict, function () {\n            console.log('Message sent successfully: ' + JSON.stringify(dict));\n        }, function (e) {\n            console.log('Message (' + JSON.stringify(dict) + ') failed: ' + JSON.stringify(e));\n        });\n    }\n}\n\nfunction locationError(err) {\n    console.warn('location error (' + err.code + '): ' + err.message);\n    /* // No app when no location\n    Pebble.sendAppMessage({\n        'WEATHER_CITY_KEY': 'Loc Unavailable',\n        'WEATHER_TEMPERATURE_KEY': 'N/A'\n    });*/\n}\n\nfunction get_coordinate() {\n    console.log('---- get_coordinate');\n    navigator.geolocation.getCurrentPosition(locationSuccess, locationError, locationOptions);\n\n}\n\n/*\nfunction switch_home(bool) {\n  var response;\n  console.log('---- authenticate');\n  if (sid != \"\"){\n    status = \"\";\n    console.log('---- get_status');\n    if (localStorage.getItem('username')  && localStorage.getItem('password') && localStorage.getItem('server') ){\n      var username=localStorage.getItem('username');\n      var password=localStorage.getItem('password');\n      var server=localStorage.getItem('server');\n      var xhr = new XMLHttpRequest();\n\n      url = server + \"/webapi/entry.cgi?api=SYNO.SurveillanceStation.HomeMode&version=1&method=GetInfo&_sid=\"+sid;\n\n      xhr.open(\"GET\", url,false);\n      xhr.send();\n\n      if(xhr.status == 200) {\n        response = JSON.parse(xhr.responseText);\n        if (response.success == true){\n          status = response.data.on;\n          console.log('------ status:'+status);\n          var message;\n          var dict;\n          if ( status != bool){\n            console.log('---- switching home mode to '+ bool);\n            url = server + \"/webapi/entry.cgi?api=SYNO.SurveillanceStation.HomeMode&version=1&method=Switch&on=\"+bool+\"&_sid=\"+sid;\n\n            xhr.open(\"GET\", url,false);\n            xhr.send();\n\n            if(xhr.status == 200) {\n              response = JSON.parse(xhr.responseText);\n              if (response.success == true){\n                status=bool;\n                switch (status) {\n                  case true:\n                    message = \"You just set Home mode ON\";\n                    break;\n                  case false:\n                    message = \"You just set Home mode OFF\";\n                    break;\n                  default:\n                    message = \"something happened, try again !\";\n                }\n                // Build message\n                dict = {\n                  'status': message,\n                };\n\n                // Send the message\n                Pebble.sendAppMessage(dict, function(e) {\n                  console.log('sent');\n                }, function() {\n                  console.log('failed');\n                });\n              }\n            }else {\n              console.log('------Request returned error code ' + xhr.status.toString());\n            }\n          }else{\n            console.log('---- nothing to do, status already '+status);\n            switch (status) {\n              case true:\n                message = \"Your Home Mode is already ON\";\n                break;\n              case false:\n                message = \"Your Home Mode is already OFF\";\n                break;\n              default:\n                message = \"something happened, try again !\";\n            }\n            // Build message\n            dict = {\n              'status': message,\n            };\n\n            // Send the message\n            Pebble.sendAppMessage(dict, function(e) {\n              console.log('sent');\n            }, function() {\n              console.log('failed');\n            });\n          }\n        }\n      }else {\n        console.log('------Request returned error code ' + xhr.status.toString());\n      }\n    }else{\n      Pebble.showSimpleNotificationOnPebble(\"DSCam H-S\", \"You need to set your Synology account and server.\");\n    }\n   }\n\n}*/\n\nfunction init(){\n    // local storage init\n    localStorage.clear();\n    // clear any other var to do\n    clearInterval(locationInterval);\n\n    console.log('--- Starting regular getCurrentPosition loop using setInterval at 1 sec');\n    locationInterval = setInterval(function() {\n      navigator.geolocation.getCurrentPosition(locationSuccess, locationError, locationOptions);\n    }, 1000);\n\n\n}\n\n// Get JS readiness events\nPebble.addEventListener('ready', function (e) {\n    console.log('PebbleKit JS is ready');\n    // Update Watch on this\n    Pebble.sendAppMessage({ 'JSReady': 1 });\n\n    init();\n});\n\n// Get AppMessage events\nPebble.addEventListener('appmessage', function (e) {\n    // Get the dictionary from the message\n    var dict = e.payload;\n    console.log(dict[0].toString());\n    switch (dict[0]) {\n        case 'get':\n            get_coordinate();\n            break;/*\n    case 'home_on':\n      switch_home(true);\n      break;\n    case 'home_off':\n      switch_home(false);\n      break;*/\n        default:\n            console.log('Sorry. I don\\'t understand your request :' + dict[0]);\n    }\n\n});\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/pkjs/index.js\n// module id = 2\n// module chunks = 0","/* Clay - https://github.com/pebble/clay - Version: 1.0.4 - Build Date: 2016-11-21T20:14:28.839Z */\n!function(t){if(\"object\"==typeof exports&&\"undefined\"!=typeof module)module.exports=t();else if(\"function\"==typeof define&&define.amd)define([],t);else{var e;e=\"undefined\"!=typeof window?window:\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:this,e.pebbleClay=t()}}(function(){var t;return function e(t,n,r){function o(a,s){if(!n[a]){if(!t[a]){var c=\"function\"==typeof require&&require;if(!s&&c)return c(a,!0);if(i)return i(a,!0);var l=new Error(\"Cannot find module '\"+a+\"'\");throw l.code=\"MODULE_NOT_FOUND\",l}var u=n[a]={exports:{}};t[a][0].call(u.exports,function(e){var n=t[a][1][e];return o(n?n:e)},u,u.exports,e,t,n,r)}return n[a].exports}for(var i=\"function\"==typeof require&&require,a=0;a<r.length;a++)o(r[a]);return o}({1:[function(t,e,n){\"use strict\";function r(t){var e=t.length;if(e%4>0)throw new Error(\"Invalid string. Length must be a multiple of 4\");return\"=\"===t[e-2]?2:\"=\"===t[e-1]?1:0}function o(t){return 3*t.length/4-r(t)}function i(t){var e,n,o,i,a,s,c=t.length;a=r(t),s=new f(3*c/4-a),o=a>0?c-4:c;var l=0;for(e=0,n=0;e<o;e+=4,n+=3)i=u[t.charCodeAt(e)]<<18|u[t.charCodeAt(e+1)]<<12|u[t.charCodeAt(e+2)]<<6|u[t.charCodeAt(e+3)],s[l++]=i>>16&255,s[l++]=i>>8&255,s[l++]=255&i;return 2===a?(i=u[t.charCodeAt(e)]<<2|u[t.charCodeAt(e+1)]>>4,s[l++]=255&i):1===a&&(i=u[t.charCodeAt(e)]<<10|u[t.charCodeAt(e+1)]<<4|u[t.charCodeAt(e+2)]>>2,s[l++]=i>>8&255,s[l++]=255&i),s}function a(t){return l[t>>18&63]+l[t>>12&63]+l[t>>6&63]+l[63&t]}function s(t,e,n){for(var r,o=[],i=e;i<n;i+=3)r=(t[i]<<16)+(t[i+1]<<8)+t[i+2],o.push(a(r));return o.join(\"\")}function c(t){for(var e,n=t.length,r=n%3,o=\"\",i=[],a=16383,c=0,u=n-r;c<u;c+=a)i.push(s(t,c,c+a>u?u:c+a));return 1===r?(e=t[n-1],o+=l[e>>2],o+=l[e<<4&63],o+=\"==\"):2===r&&(e=(t[n-2]<<8)+t[n-1],o+=l[e>>10],o+=l[e>>4&63],o+=l[e<<2&63],o+=\"=\"),i.push(o),i.join(\"\")}n.byteLength=o,n.toByteArray=i,n.fromByteArray=c;for(var l=[],u=[],f=\"undefined\"!=typeof Uint8Array?Uint8Array:Array,p=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\",d=0,h=p.length;d<h;++d)l[d]=p[d],u[p.charCodeAt(d)]=d;u[\"-\".charCodeAt(0)]=62,u[\"_\".charCodeAt(0)]=63},{}],2:[function(t,e,n){(function(e){/*!\n * The buffer module from node.js, for the browser.\n *\n * @author   Feross Aboukhadijeh <feross@feross.org> <http://feross.org>\n * @license  MIT\n */\n\"use strict\";function r(){try{var t=new Uint8Array(1);return t.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===t.foo()&&\"function\"==typeof t.subarray&&0===t.subarray(1,1).byteLength}catch(e){return!1}}function o(){return a.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function i(t,e){if(o()<e)throw new RangeError(\"Invalid typed array length\");return a.TYPED_ARRAY_SUPPORT?(t=new Uint8Array(e),t.__proto__=a.prototype):(null===t&&(t=new a(e)),t.length=e),t}function a(t,e,n){if(!(a.TYPED_ARRAY_SUPPORT||this instanceof a))return new a(t,e,n);if(\"number\"==typeof t){if(\"string\"==typeof e)throw new Error(\"If encoding is specified then the first argument must be a string\");return u(this,t)}return s(this,t,e,n)}function s(t,e,n,r){if(\"number\"==typeof e)throw new TypeError('\"value\" argument must not be a number');return\"undefined\"!=typeof ArrayBuffer&&e instanceof ArrayBuffer?d(t,e,n,r):\"string\"==typeof e?f(t,e,n):h(t,e)}function c(t){if(\"number\"!=typeof t)throw new TypeError('\"size\" argument must be a number');if(t<0)throw new RangeError('\"size\" argument must not be negative')}function l(t,e,n,r){return c(e),e<=0?i(t,e):void 0!==n?\"string\"==typeof r?i(t,e).fill(n,r):i(t,e).fill(n):i(t,e)}function u(t,e){if(c(e),t=i(t,e<0?0:0|m(e)),!a.TYPED_ARRAY_SUPPORT)for(var n=0;n<e;++n)t[n]=0;return t}function f(t,e,n){if(\"string\"==typeof n&&\"\"!==n||(n=\"utf8\"),!a.isEncoding(n))throw new TypeError('\"encoding\" must be a valid string encoding');var r=0|b(e,n);t=i(t,r);var o=t.write(e,n);return o!==r&&(t=t.slice(0,o)),t}function p(t,e){var n=e.length<0?0:0|m(e.length);t=i(t,n);for(var r=0;r<n;r+=1)t[r]=255&e[r];return t}function d(t,e,n,r){if(e.byteLength,n<0||e.byteLength<n)throw new RangeError(\"'offset' is out of bounds\");if(e.byteLength<n+(r||0))throw new RangeError(\"'length' is out of bounds\");return e=void 0===n&&void 0===r?new Uint8Array(e):void 0===r?new Uint8Array(e,n):new Uint8Array(e,n,r),a.TYPED_ARRAY_SUPPORT?(t=e,t.__proto__=a.prototype):t=p(t,e),t}function h(t,e){if(a.isBuffer(e)){var n=0|m(e.length);return t=i(t,n),0===t.length?t:(e.copy(t,0,0,n),t)}if(e){if(\"undefined\"!=typeof ArrayBuffer&&e.buffer instanceof ArrayBuffer||\"length\"in e)return\"number\"!=typeof e.length||H(e.length)?i(t,0):p(t,e);if(\"Buffer\"===e.type&&_(e.data))return p(t,e.data)}throw new TypeError(\"First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.\")}function m(t){if(t>=o())throw new RangeError(\"Attempt to allocate Buffer larger than maximum size: 0x\"+o().toString(16)+\" bytes\");return 0|t}function g(t){return+t!=t&&(t=0),a.alloc(+t)}function b(t,e){if(a.isBuffer(t))return t.length;if(\"undefined\"!=typeof ArrayBuffer&&\"function\"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(t)||t instanceof ArrayBuffer))return t.byteLength;\"string\"!=typeof t&&(t=\"\"+t);var n=t.length;if(0===n)return 0;for(var r=!1;;)switch(e){case\"ascii\":case\"latin1\":case\"binary\":return n;case\"utf8\":case\"utf-8\":case void 0:return W(t).length;case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return 2*n;case\"hex\":return n>>>1;case\"base64\":return U(t).length;default:if(r)return W(t).length;e=(\"\"+e).toLowerCase(),r=!0}}function y(t,e,n){var r=!1;if((void 0===e||e<0)&&(e=0),e>this.length)return\"\";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return\"\";if(n>>>=0,e>>>=0,n<=e)return\"\";for(t||(t=\"utf8\");;)switch(t){case\"hex\":return D(this,e,n);case\"utf8\":case\"utf-8\":return E(this,e,n);case\"ascii\":return B(this,e,n);case\"latin1\":case\"binary\":return S(this,e,n);case\"base64\":return O(this,e,n);case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return N(this,e,n);default:if(r)throw new TypeError(\"Unknown encoding: \"+t);t=(t+\"\").toLowerCase(),r=!0}}function v(t,e,n){var r=t[e];t[e]=t[n],t[n]=r}function A(t,e,n,r,o){if(0===t.length)return-1;if(\"string\"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=o?0:t.length-1),n<0&&(n=t.length+n),n>=t.length){if(o)return-1;n=t.length-1}else if(n<0){if(!o)return-1;n=0}if(\"string\"==typeof e&&(e=a.from(e,r)),a.isBuffer(e))return 0===e.length?-1:w(t,e,n,r,o);if(\"number\"==typeof e)return e=255&e,a.TYPED_ARRAY_SUPPORT&&\"function\"==typeof Uint8Array.prototype.indexOf?o?Uint8Array.prototype.indexOf.call(t,e,n):Uint8Array.prototype.lastIndexOf.call(t,e,n):w(t,[e],n,r,o);throw new TypeError(\"val must be string, number or Buffer\")}function w(t,e,n,r,o){function i(t,e){return 1===a?t[e]:t.readUInt16BE(e*a)}var a=1,s=t.length,c=e.length;if(void 0!==r&&(r=String(r).toLowerCase(),\"ucs2\"===r||\"ucs-2\"===r||\"utf16le\"===r||\"utf-16le\"===r)){if(t.length<2||e.length<2)return-1;a=2,s/=2,c/=2,n/=2}var l;if(o){var u=-1;for(l=n;l<s;l++)if(i(t,l)===i(e,u===-1?0:l-u)){if(u===-1&&(u=l),l-u+1===c)return u*a}else u!==-1&&(l-=l-u),u=-1}else for(n+c>s&&(n=s-c),l=n;l>=0;l--){for(var f=!0,p=0;p<c;p++)if(i(t,l+p)!==i(e,p)){f=!1;break}if(f)return l}return-1}function k(t,e,n,r){n=Number(n)||0;var o=t.length-n;r?(r=Number(r),r>o&&(r=o)):r=o;var i=e.length;if(i%2!==0)throw new TypeError(\"Invalid hex string\");r>i/2&&(r=i/2);for(var a=0;a<r;++a){var s=parseInt(e.substr(2*a,2),16);if(isNaN(s))return a;t[n+a]=s}return a}function x(t,e,n,r){return q(W(e,t.length-n),t,n,r)}function M(t,e,n,r){return q(Z(e),t,n,r)}function T(t,e,n,r){return M(t,e,n,r)}function R(t,e,n,r){return q(U(e),t,n,r)}function P(t,e,n,r){return q(J(e,t.length-n),t,n,r)}function O(t,e,n){return 0===e&&n===t.length?Q.fromByteArray(t):Q.fromByteArray(t.slice(e,n))}function E(t,e,n){n=Math.min(t.length,n);for(var r=[],o=e;o<n;){var i=t[o],a=null,s=i>239?4:i>223?3:i>191?2:1;if(o+s<=n){var c,l,u,f;switch(s){case 1:i<128&&(a=i);break;case 2:c=t[o+1],128===(192&c)&&(f=(31&i)<<6|63&c,f>127&&(a=f));break;case 3:c=t[o+1],l=t[o+2],128===(192&c)&&128===(192&l)&&(f=(15&i)<<12|(63&c)<<6|63&l,f>2047&&(f<55296||f>57343)&&(a=f));break;case 4:c=t[o+1],l=t[o+2],u=t[o+3],128===(192&c)&&128===(192&l)&&128===(192&u)&&(f=(15&i)<<18|(63&c)<<12|(63&l)<<6|63&u,f>65535&&f<1114112&&(a=f))}}null===a?(a=65533,s=1):a>65535&&(a-=65536,r.push(a>>>10&1023|55296),a=56320|1023&a),r.push(a),o+=s}return j(r)}function j(t){var e=t.length;if(e<=tt)return String.fromCharCode.apply(String,t);for(var n=\"\",r=0;r<e;)n+=String.fromCharCode.apply(String,t.slice(r,r+=tt));return n}function B(t,e,n){var r=\"\";n=Math.min(t.length,n);for(var o=e;o<n;++o)r+=String.fromCharCode(127&t[o]);return r}function S(t,e,n){var r=\"\";n=Math.min(t.length,n);for(var o=e;o<n;++o)r+=String.fromCharCode(t[o]);return r}function D(t,e,n){var r=t.length;(!e||e<0)&&(e=0),(!n||n<0||n>r)&&(n=r);for(var o=\"\",i=e;i<n;++i)o+=V(t[i]);return o}function N(t,e,n){for(var r=t.slice(e,n),o=\"\",i=0;i<r.length;i+=2)o+=String.fromCharCode(r[i]+256*r[i+1]);return o}function Y(t,e,n){if(t%1!==0||t<0)throw new RangeError(\"offset is not uint\");if(t+e>n)throw new RangeError(\"Trying to access beyond buffer length\")}function F(t,e,n,r,o,i){if(!a.isBuffer(t))throw new TypeError('\"buffer\" argument must be a Buffer instance');if(e>o||e<i)throw new RangeError('\"value\" argument is out of bounds');if(n+r>t.length)throw new RangeError(\"Index out of range\")}function z(t,e,n,r){e<0&&(e=65535+e+1);for(var o=0,i=Math.min(t.length-n,2);o<i;++o)t[n+o]=(e&255<<8*(r?o:1-o))>>>8*(r?o:1-o)}function I(t,e,n,r){e<0&&(e=4294967295+e+1);for(var o=0,i=Math.min(t.length-n,4);o<i;++o)t[n+o]=e>>>8*(r?o:3-o)&255}function L(t,e,n,r,o,i){if(n+r>t.length)throw new RangeError(\"Index out of range\");if(n<0)throw new RangeError(\"Index out of range\")}function K(t,e,n,r,o){return o||L(t,e,n,4,3.4028234663852886e38,-3.4028234663852886e38),$.write(t,e,n,r,23,4),n+4}function G(t,e,n,r,o){return o||L(t,e,n,8,1.7976931348623157e308,-1.7976931348623157e308),$.write(t,e,n,r,52,8),n+8}function C(t){if(t=X(t).replace(et,\"\"),t.length<2)return\"\";for(;t.length%4!==0;)t+=\"=\";return t}function X(t){return t.trim?t.trim():t.replace(/^\\s+|\\s+$/g,\"\")}function V(t){return t<16?\"0\"+t.toString(16):t.toString(16)}function W(t,e){e=e||1/0;for(var n,r=t.length,o=null,i=[],a=0;a<r;++a){if(n=t.charCodeAt(a),n>55295&&n<57344){if(!o){if(n>56319){(e-=3)>-1&&i.push(239,191,189);continue}if(a+1===r){(e-=3)>-1&&i.push(239,191,189);continue}o=n;continue}if(n<56320){(e-=3)>-1&&i.push(239,191,189),o=n;continue}n=(o-55296<<10|n-56320)+65536}else o&&(e-=3)>-1&&i.push(239,191,189);if(o=null,n<128){if((e-=1)<0)break;i.push(n)}else if(n<2048){if((e-=2)<0)break;i.push(n>>6|192,63&n|128)}else if(n<65536){if((e-=3)<0)break;i.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error(\"Invalid code point\");if((e-=4)<0)break;i.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return i}function Z(t){for(var e=[],n=0;n<t.length;++n)e.push(255&t.charCodeAt(n));return e}function J(t,e){for(var n,r,o,i=[],a=0;a<t.length&&!((e-=2)<0);++a)n=t.charCodeAt(a),r=n>>8,o=n%256,i.push(o),i.push(r);return i}function U(t){return Q.toByteArray(C(t))}function q(t,e,n,r){for(var o=0;o<r&&!(o+n>=e.length||o>=t.length);++o)e[o+n]=t[o];return o}function H(t){return t!==t}var Q=t(\"base64-js\"),$=t(\"ieee754\"),_=t(\"isarray\");n.Buffer=a,n.SlowBuffer=g,n.INSPECT_MAX_BYTES=50,a.TYPED_ARRAY_SUPPORT=void 0!==e.TYPED_ARRAY_SUPPORT?e.TYPED_ARRAY_SUPPORT:r(),n.kMaxLength=o(),a.poolSize=8192,a._augment=function(t){return t.__proto__=a.prototype,t},a.from=function(t,e,n){return s(null,t,e,n)},a.TYPED_ARRAY_SUPPORT&&(a.prototype.__proto__=Uint8Array.prototype,a.__proto__=Uint8Array,\"undefined\"!=typeof Symbol&&Symbol.species&&a[Symbol.species]===a&&Object.defineProperty(a,Symbol.species,{value:null,configurable:!0})),a.alloc=function(t,e,n){return l(null,t,e,n)},a.allocUnsafe=function(t){return u(null,t)},a.allocUnsafeSlow=function(t){return u(null,t)},a.isBuffer=function(t){return!(null==t||!t._isBuffer)},a.compare=function(t,e){if(!a.isBuffer(t)||!a.isBuffer(e))throw new TypeError(\"Arguments must be Buffers\");if(t===e)return 0;for(var n=t.length,r=e.length,o=0,i=Math.min(n,r);o<i;++o)if(t[o]!==e[o]){n=t[o],r=e[o];break}return n<r?-1:r<n?1:0},a.isEncoding=function(t){switch(String(t).toLowerCase()){case\"hex\":case\"utf8\":case\"utf-8\":case\"ascii\":case\"latin1\":case\"binary\":case\"base64\":case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return!0;default:return!1}},a.concat=function(t,e){if(!_(t))throw new TypeError('\"list\" argument must be an Array of Buffers');if(0===t.length)return a.alloc(0);var n;if(void 0===e)for(e=0,n=0;n<t.length;++n)e+=t[n].length;var r=a.allocUnsafe(e),o=0;for(n=0;n<t.length;++n){var i=t[n];if(!a.isBuffer(i))throw new TypeError('\"list\" argument must be an Array of Buffers');i.copy(r,o),o+=i.length}return r},a.byteLength=b,a.prototype._isBuffer=!0,a.prototype.swap16=function(){var t=this.length;if(t%2!==0)throw new RangeError(\"Buffer size must be a multiple of 16-bits\");for(var e=0;e<t;e+=2)v(this,e,e+1);return this},a.prototype.swap32=function(){var t=this.length;if(t%4!==0)throw new RangeError(\"Buffer size must be a multiple of 32-bits\");for(var e=0;e<t;e+=4)v(this,e,e+3),v(this,e+1,e+2);return this},a.prototype.swap64=function(){var t=this.length;if(t%8!==0)throw new RangeError(\"Buffer size must be a multiple of 64-bits\");for(var e=0;e<t;e+=8)v(this,e,e+7),v(this,e+1,e+6),v(this,e+2,e+5),v(this,e+3,e+4);return this},a.prototype.toString=function(){var t=0|this.length;return 0===t?\"\":0===arguments.length?E(this,0,t):y.apply(this,arguments)},a.prototype.equals=function(t){if(!a.isBuffer(t))throw new TypeError(\"Argument must be a Buffer\");return this===t||0===a.compare(this,t)},a.prototype.inspect=function(){var t=\"\",e=n.INSPECT_MAX_BYTES;return this.length>0&&(t=this.toString(\"hex\",0,e).match(/.{2}/g).join(\" \"),this.length>e&&(t+=\" ... \")),\"<Buffer \"+t+\">\"},a.prototype.compare=function(t,e,n,r,o){if(!a.isBuffer(t))throw new TypeError(\"Argument must be a Buffer\");if(void 0===e&&(e=0),void 0===n&&(n=t?t.length:0),void 0===r&&(r=0),void 0===o&&(o=this.length),e<0||n>t.length||r<0||o>this.length)throw new RangeError(\"out of range index\");if(r>=o&&e>=n)return 0;if(r>=o)return-1;if(e>=n)return 1;if(e>>>=0,n>>>=0,r>>>=0,o>>>=0,this===t)return 0;for(var i=o-r,s=n-e,c=Math.min(i,s),l=this.slice(r,o),u=t.slice(e,n),f=0;f<c;++f)if(l[f]!==u[f]){i=l[f],s=u[f];break}return i<s?-1:s<i?1:0},a.prototype.includes=function(t,e,n){return this.indexOf(t,e,n)!==-1},a.prototype.indexOf=function(t,e,n){return A(this,t,e,n,!0)},a.prototype.lastIndexOf=function(t,e,n){return A(this,t,e,n,!1)},a.prototype.write=function(t,e,n,r){if(void 0===e)r=\"utf8\",n=this.length,e=0;else if(void 0===n&&\"string\"==typeof e)r=e,n=this.length,e=0;else{if(!isFinite(e))throw new Error(\"Buffer.write(string, encoding, offset[, length]) is no longer supported\");e=0|e,isFinite(n)?(n=0|n,void 0===r&&(r=\"utf8\")):(r=n,n=void 0)}var o=this.length-e;if((void 0===n||n>o)&&(n=o),t.length>0&&(n<0||e<0)||e>this.length)throw new RangeError(\"Attempt to write outside buffer bounds\");r||(r=\"utf8\");for(var i=!1;;)switch(r){case\"hex\":return k(this,t,e,n);case\"utf8\":case\"utf-8\":return x(this,t,e,n);case\"ascii\":return M(this,t,e,n);case\"latin1\":case\"binary\":return T(this,t,e,n);case\"base64\":return R(this,t,e,n);case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return P(this,t,e,n);default:if(i)throw new TypeError(\"Unknown encoding: \"+r);r=(\"\"+r).toLowerCase(),i=!0}},a.prototype.toJSON=function(){return{type:\"Buffer\",data:Array.prototype.slice.call(this._arr||this,0)}};var tt=4096;a.prototype.slice=function(t,e){var n=this.length;t=~~t,e=void 0===e?n:~~e,t<0?(t+=n,t<0&&(t=0)):t>n&&(t=n),e<0?(e+=n,e<0&&(e=0)):e>n&&(e=n),e<t&&(e=t);var r;if(a.TYPED_ARRAY_SUPPORT)r=this.subarray(t,e),r.__proto__=a.prototype;else{var o=e-t;r=new a(o,(void 0));for(var i=0;i<o;++i)r[i]=this[i+t]}return r},a.prototype.readUIntLE=function(t,e,n){t=0|t,e=0|e,n||Y(t,e,this.length);for(var r=this[t],o=1,i=0;++i<e&&(o*=256);)r+=this[t+i]*o;return r},a.prototype.readUIntBE=function(t,e,n){t=0|t,e=0|e,n||Y(t,e,this.length);for(var r=this[t+--e],o=1;e>0&&(o*=256);)r+=this[t+--e]*o;return r},a.prototype.readUInt8=function(t,e){return e||Y(t,1,this.length),this[t]},a.prototype.readUInt16LE=function(t,e){return e||Y(t,2,this.length),this[t]|this[t+1]<<8},a.prototype.readUInt16BE=function(t,e){return e||Y(t,2,this.length),this[t]<<8|this[t+1]},a.prototype.readUInt32LE=function(t,e){return e||Y(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},a.prototype.readUInt32BE=function(t,e){return e||Y(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},a.prototype.readIntLE=function(t,e,n){t=0|t,e=0|e,n||Y(t,e,this.length);for(var r=this[t],o=1,i=0;++i<e&&(o*=256);)r+=this[t+i]*o;return o*=128,r>=o&&(r-=Math.pow(2,8*e)),r},a.prototype.readIntBE=function(t,e,n){t=0|t,e=0|e,n||Y(t,e,this.length);for(var r=e,o=1,i=this[t+--r];r>0&&(o*=256);)i+=this[t+--r]*o;return o*=128,i>=o&&(i-=Math.pow(2,8*e)),i},a.prototype.readInt8=function(t,e){return e||Y(t,1,this.length),128&this[t]?(255-this[t]+1)*-1:this[t]},a.prototype.readInt16LE=function(t,e){e||Y(t,2,this.length);var n=this[t]|this[t+1]<<8;return 32768&n?4294901760|n:n},a.prototype.readInt16BE=function(t,e){e||Y(t,2,this.length);var n=this[t+1]|this[t]<<8;return 32768&n?4294901760|n:n},a.prototype.readInt32LE=function(t,e){return e||Y(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},a.prototype.readInt32BE=function(t,e){return e||Y(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},a.prototype.readFloatLE=function(t,e){return e||Y(t,4,this.length),$.read(this,t,!0,23,4)},a.prototype.readFloatBE=function(t,e){return e||Y(t,4,this.length),$.read(this,t,!1,23,4)},a.prototype.readDoubleLE=function(t,e){return e||Y(t,8,this.length),$.read(this,t,!0,52,8)},a.prototype.readDoubleBE=function(t,e){return e||Y(t,8,this.length),$.read(this,t,!1,52,8)},a.prototype.writeUIntLE=function(t,e,n,r){if(t=+t,e=0|e,n=0|n,!r){var o=Math.pow(2,8*n)-1;F(this,t,e,n,o,0)}var i=1,a=0;for(this[e]=255&t;++a<n&&(i*=256);)this[e+a]=t/i&255;return e+n},a.prototype.writeUIntBE=function(t,e,n,r){if(t=+t,e=0|e,n=0|n,!r){var o=Math.pow(2,8*n)-1;F(this,t,e,n,o,0)}var i=n-1,a=1;for(this[e+i]=255&t;--i>=0&&(a*=256);)this[e+i]=t/a&255;return e+n},a.prototype.writeUInt8=function(t,e,n){return t=+t,e=0|e,n||F(this,t,e,1,255,0),a.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),this[e]=255&t,e+1},a.prototype.writeUInt16LE=function(t,e,n){return t=+t,e=0|e,n||F(this,t,e,2,65535,0),a.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8):z(this,t,e,!0),e+2},a.prototype.writeUInt16BE=function(t,e,n){return t=+t,e=0|e,n||F(this,t,e,2,65535,0),a.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=255&t):z(this,t,e,!1),e+2},a.prototype.writeUInt32LE=function(t,e,n){return t=+t,e=0|e,n||F(this,t,e,4,4294967295,0),a.TYPED_ARRAY_SUPPORT?(this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t):I(this,t,e,!0),e+4},a.prototype.writeUInt32BE=function(t,e,n){return t=+t,e=0|e,n||F(this,t,e,4,4294967295,0),a.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):I(this,t,e,!1),e+4},a.prototype.writeIntLE=function(t,e,n,r){if(t=+t,e=0|e,!r){var o=Math.pow(2,8*n-1);F(this,t,e,n,o-1,-o)}var i=0,a=1,s=0;for(this[e]=255&t;++i<n&&(a*=256);)t<0&&0===s&&0!==this[e+i-1]&&(s=1),this[e+i]=(t/a>>0)-s&255;return e+n},a.prototype.writeIntBE=function(t,e,n,r){if(t=+t,e=0|e,!r){var o=Math.pow(2,8*n-1);F(this,t,e,n,o-1,-o)}var i=n-1,a=1,s=0;for(this[e+i]=255&t;--i>=0&&(a*=256);)t<0&&0===s&&0!==this[e+i+1]&&(s=1),this[e+i]=(t/a>>0)-s&255;return e+n},a.prototype.writeInt8=function(t,e,n){return t=+t,e=0|e,n||F(this,t,e,1,127,-128),a.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),t<0&&(t=255+t+1),this[e]=255&t,e+1},a.prototype.writeInt16LE=function(t,e,n){return t=+t,e=0|e,n||F(this,t,e,2,32767,-32768),a.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8):z(this,t,e,!0),e+2},a.prototype.writeInt16BE=function(t,e,n){return t=+t,e=0|e,n||F(this,t,e,2,32767,-32768),a.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=255&t):z(this,t,e,!1),e+2},a.prototype.writeInt32LE=function(t,e,n){return t=+t,e=0|e,n||F(this,t,e,4,2147483647,-2147483648),a.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24):I(this,t,e,!0),e+4},a.prototype.writeInt32BE=function(t,e,n){return t=+t,e=0|e,n||F(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),a.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):I(this,t,e,!1),e+4},a.prototype.writeFloatLE=function(t,e,n){return K(this,t,e,!0,n)},a.prototype.writeFloatBE=function(t,e,n){return K(this,t,e,!1,n)},a.prototype.writeDoubleLE=function(t,e,n){return G(this,t,e,!0,n)},a.prototype.writeDoubleBE=function(t,e,n){return G(this,t,e,!1,n)},a.prototype.copy=function(t,e,n,r){if(n||(n=0),r||0===r||(r=this.length),e>=t.length&&(e=t.length),e||(e=0),r>0&&r<n&&(r=n),r===n)return 0;if(0===t.length||0===this.length)return 0;if(e<0)throw new RangeError(\"targetStart out of bounds\");if(n<0||n>=this.length)throw new RangeError(\"sourceStart out of bounds\");if(r<0)throw new RangeError(\"sourceEnd out of bounds\");r>this.length&&(r=this.length),t.length-e<r-n&&(r=t.length-e+n);var o,i=r-n;if(this===t&&n<e&&e<r)for(o=i-1;o>=0;--o)t[o+e]=this[o+n];else if(i<1e3||!a.TYPED_ARRAY_SUPPORT)for(o=0;o<i;++o)t[o+e]=this[o+n];else Uint8Array.prototype.set.call(t,this.subarray(n,n+i),e);return i},a.prototype.fill=function(t,e,n,r){if(\"string\"==typeof t){if(\"string\"==typeof e?(r=e,e=0,n=this.length):\"string\"==typeof n&&(r=n,n=this.length),1===t.length){var o=t.charCodeAt(0);o<256&&(t=o)}if(void 0!==r&&\"string\"!=typeof r)throw new TypeError(\"encoding must be a string\");if(\"string\"==typeof r&&!a.isEncoding(r))throw new TypeError(\"Unknown encoding: \"+r)}else\"number\"==typeof t&&(t=255&t);if(e<0||this.length<e||this.length<n)throw new RangeError(\"Out of range index\");if(n<=e)return this;e>>>=0,n=void 0===n?this.length:n>>>0,t||(t=0);var i;if(\"number\"==typeof t)for(i=e;i<n;++i)this[i]=t;else{var s=a.isBuffer(t)?t:W(new a(t,r).toString()),c=s.length;for(i=0;i<n-e;++i)this[i+e]=s[i%c]}return this};var et=/[^+\\/0-9A-Za-z-_]/g}).call(this,\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:\"undefined\"!=typeof window?window:{})},{\"base64-js\":1,ieee754:4,isarray:5}],3:[function(e,n,r){(function(e){/*!\n * @license deepcopy.js Copyright(c) 2013 sasa+1\n * https://github.com/sasaplus1/deepcopy.js\n * Released under the MIT license.\n */\n!function(e,o){\"object\"==typeof r&&\"object\"==typeof n?n.exports=o():\"function\"==typeof t&&t.amd?t([],o):\"object\"==typeof r?r.deepcopy=o():e.deepcopy=o()}(this,function(){return function(t){function e(r){if(n[r])return n[r].exports;var o=n[r]={exports:{},id:r,loaded:!1};return t[r].call(o.exports,o,o.exports,e),o.loaded=!0,o.exports}var n={};return e.m=t,e.c=n,e.p=\"\",e(0)}([function(t,e,n){\"use strict\";t.exports=n(3)},function(t,n){\"use strict\";function r(t,e){if(\"[object Array]\"!==o.call(t))throw new TypeError(\"array must be an Array\");var n=void 0,r=void 0,i=void 0;for(n=0,r=t.length;r>n;++n)if(i=t[n],i===e||i!==i&&e!==e)return n;return-1}n.__esModule=!0;var o=Object.prototype.toString,i=\"undefined\"!=typeof e?function(t){return e.isBuffer(t)}:function(){return!1},a=\"function\"==typeof Object.keys?function(t){return Object.keys(t)}:function(t){var e=typeof t;if(null===t||\"function\"!==e&&\"object\"!==e)throw new TypeError(\"obj must be an Object\");var n=[],r=void 0;for(r in t)Object.prototype.hasOwnProperty.call(t,r)&&n.push(r);return n},s=\"function\"==typeof Symbol?function(t){return Object.getOwnPropertySymbols(t)}:function(){return[]};n.getKeys=a,n.getSymbols=s,n.indexOf=r,n.isBuffer=i},function(t,n,r){\"use strict\";function o(t,e){var n=a(t);return null!==n?n:i(t,e)}function i(t,n){if(\"function\"!=typeof n)throw new TypeError(\"customizer is must be a Function\");if(\"function\"==typeof t){var r=String(t);return/^\\s*function\\s*\\S*\\([^\\)]*\\)\\s*{\\s*\\[native code\\]\\s*}/.test(r)?t:new Function(\"return \"+String(r))()}var o=c.call(t);if(\"[object Array]\"===o)return[];if(\"[object Object]\"===o&&t.constructor===Object)return{};if(\"[object Date]\"===o)return new Date(t.getTime());if(\"[object RegExp]\"===o){var i=String(t),a=i.lastIndexOf(\"/\");return new RegExp(i.slice(1,a),i.slice(a+1))}if((0,s.isBuffer)(t)){var l=new e(t.length);return t.copy(l),l}var u=n(t);return void 0!==u?u:null}function a(t){var e=typeof t;return null!==t&&\"object\"!==e&&\"function\"!==e?t:null}n.__esModule=!0,n.copyValue=n.copyCollection=n.copy=void 0;var s=r(1),c=Object.prototype.toString;n.copy=o,n.copyCollection=i,n.copyValue=a},function(t,e,n){\"use strict\";function r(t){}function o(t){var e=arguments.length<=1||void 0===arguments[1]?r:arguments[1];if(null===t)return null;var n=(0,a.copyValue)(t);if(null!==n)return n;var o=(0,a.copyCollection)(t,e),s=null!==o?o:t,c=[t],l=[s];return i(t,e,s,c,l)}function i(t,e,n,r,o){if(null===t)return null;var c=(0,a.copyValue)(t);if(null!==c)return c;var l=(0,s.getKeys)(t).concat((0,s.getSymbols)(t)),u=void 0,f=void 0,p=void 0,d=void 0,h=void 0,m=void 0,g=void 0,b=void 0;for(u=0,f=l.length;f>u;++u)p=l[u],d=t[p],h=(0,s.indexOf)(r,d),m=void 0,g=void 0,b=void 0,-1===h?(m=(0,a.copy)(d,e),g=null!==m?m:d,null!==d&&/^(?:function|object)$/.test(typeof d)&&(r.push(d),o.push(g))):b=o[h],n[p]=b||i(d,e,g,r,o);return n}e.__esModule=!0;var a=n(2),s=n(1);e[\"default\"]=o,t.exports=e[\"default\"]}])})}).call(this,e(\"buffer\").Buffer)},{buffer:2}],4:[function(t,e,n){n.read=function(t,e,n,r,o){var i,a,s=8*o-r-1,c=(1<<s)-1,l=c>>1,u=-7,f=n?o-1:0,p=n?-1:1,d=t[e+f];for(f+=p,i=d&(1<<-u)-1,d>>=-u,u+=s;u>0;i=256*i+t[e+f],f+=p,u-=8);for(a=i&(1<<-u)-1,i>>=-u,u+=r;u>0;a=256*a+t[e+f],f+=p,u-=8);if(0===i)i=1-l;else{if(i===c)return a?NaN:(d?-1:1)*(1/0);a+=Math.pow(2,r),i-=l}return(d?-1:1)*a*Math.pow(2,i-r)},n.write=function(t,e,n,r,o,i){var a,s,c,l=8*i-o-1,u=(1<<l)-1,f=u>>1,p=23===o?Math.pow(2,-24)-Math.pow(2,-77):0,d=r?0:i-1,h=r?1:-1,m=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,a=u):(a=Math.floor(Math.log(e)/Math.LN2),e*(c=Math.pow(2,-a))<1&&(a--,c*=2),e+=a+f>=1?p/c:p*Math.pow(2,1-f),e*c>=2&&(a++,c/=2),a+f>=u?(s=0,a=u):a+f>=1?(s=(e*c-1)*Math.pow(2,o),a+=f):(s=e*Math.pow(2,f-1)*Math.pow(2,o),a=0));o>=8;t[n+d]=255&s,d+=h,s/=256,o-=8);for(a=a<<o|s,l+=o;l>0;t[n+d]=255&a,d+=h,a/=256,l-=8);t[n+d-h]|=128*m}},{}],5:[function(t,e,n){var r={}.toString;e.exports=Array.isArray||function(t){return\"[object Array]\"==r.call(t)}},{}],6:[function(t,e,n){function r(t){return/^[a-z_$][0-9a-z_$]*$/gi.test(t)&&!i.test(t)}function o(t){if(a)return t.toString();var e=t.source.replace(/\\//g,function(t,e,n){return 0===e||\"\\\\\"!==n[e-1]?\"\\\\/\":\"/\"}),n=(t.global&&\"g\"||\"\")+(t.ignoreCase&&\"i\"||\"\")+(t.multiline&&\"m\"||\"\");return\"/\"+e+\"/\"+n}/* toSource by Marcello Bastea-Forte - zlib license */\ne.exports=function(t,e,n,i){function a(t,e,n,i,s){function c(t){return n.slice(1)+t.join(\",\"+(n&&\"\\n\")+l)+(n?\" \":\"\")}var l=i+n;switch(t=e?e(t):t,typeof t){case\"string\":return JSON.stringify(t);case\"boolean\":case\"number\":case\"undefined\":return\"\"+t;case\"function\":return t.toString()}if(null===t)return\"null\";if(t instanceof RegExp)return o(t);if(t instanceof Date)return\"new Date(\"+t.getTime()+\")\";var u=s.indexOf(t)+1;if(u>0)return\"{$circularReference:\"+u+\"}\";if(s.push(t),Array.isArray(t))return\"[\"+c(t.map(function(t){return a(t,e,n,l,s.slice())}))+\"]\";var f=Object.keys(t);return f.length?\"{\"+c(f.map(function(o){return(r(o)?o:JSON.stringify(o))+\":\"+a(t[o],e,n,l,s.slice())}))+\"}\":\"{}\"}var s=[];return a(t,e,void 0===n?\"  \":n||\"\",i||\"\",s)};var i=/^(abstract|boolean|break|byte|case|catch|char|class|const|continue|debugger|default|delete|do|double|else|enum|export|extends|false|final|finally|float|for|function|goto|if|implements|import|in|instanceof|int|interface|long|native|new|null|package|private|protected|public|return|short|static|super|switch|synchronized|this|throw|throws|transient|true|try|typeof|undefined|var|void|volatile|while|with)$/,a=\"\\\\/\"===new RegExp(\"/\").source},{}],7:[function(t,e,n){e.exports={name:\"pebble-clay\",version:\"1.0.4\",description:\"Pebble Config Framework\",scripts:{\"test-travis\":\"./node_modules/.bin/gulp && ./node_modules/.bin/karma start ./test/karma.conf.js --single-run --browsers chromeTravisCI && ./node_modules/.bin/eslint ./\",\"test-debug\":\"(export DEBUG=true && ./node_modules/.bin/gulp && ./node_modules/.bin/karma start ./test/karma.conf.js --no-single-run)\",test:\"./node_modules/.bin/gulp && ./node_modules/.bin/karma start ./test/karma.conf.js --single-run\",lint:\"./node_modules/.bin/eslint ./\",build:\"gulp\",dev:\"gulp dev\",\"pebble-clean\":\"rm -rf tmp src/js/index.js && pebble clean\",\"pebble-publish\":\"npm run pebble-clean && npm run build && pebble build && pebble package publish && npm run pebble-clean\",\"pebble-build\":\"npm run build && pebble build\"},repository:{type:\"git\",url:\"git+https://github.com/pebble/clay.git\"},keywords:[\"pebble\",\"config\",\"configuration\",\"pebble-package\"],author:\"Pebble Technology\",license:\"MIT\",bugs:{url:\"https://github.com/pebble/clay/issues\"},pebble:{projectType:\"package\",sdkVersion:\"3\",targetPlatforms:[\"aplite\",\"basalt\",\"chalk\",\"diorite\",\"emery\"],resources:{media:[]},capabilities:[\"configurable\"]},homepage:\"https://github.com/pebble/clay#readme\",devDependencies:{autoprefixer:\"^6.3.1\",bourbon:\"^4.2.6\",browserify:\"^13.0.0\",\"browserify-istanbul\":\"^0.2.1\",chai:\"^3.4.1\",deamdify:\"^0.2.0\",deepcopy:\"^0.6.1\",del:\"^2.0.2\",eslint:\"^1.5.1\",\"eslint-config-pebble\":\"^1.2.0\",\"eslint-plugin-standard\":\"^1.3.1\",gulp:\"^3.9.0\",\"gulp-autoprefixer\":\"^3.1.0\",\"gulp-htmlmin\":\"^1.3.0\",\"gulp-inline\":\"0.0.15\",\"gulp-insert\":\"^0.5.0\",\"gulp-sass\":\"^2.1.1\",\"gulp-sourcemaps\":\"^1.6.0\",\"gulp-uglify\":\"^1.5.2\",joi:\"^6.10.1\",karma:\"^0.13.19\",\"karma-browserify\":\"^5.0.1\",\"karma-chrome-launcher\":\"^0.2.2\",\"karma-coverage\":\"^0.5.3\",\"karma-mocha\":\"^0.2.1\",\"karma-mocha-reporter\":\"^1.1.5\",\"karma-source-map-support\":\"^1.1.0\",\"karma-threshold-reporter\":\"^0.1.15\",mocha:\"^2.3.4\",postcss:\"^5.0.14\",\"require-from-string\":\"^1.1.0\",sassify:\"^0.9.1\",sinon:\"^1.17.3\",stringify:\"^3.2.0\",through:\"^2.3.8\",tosource:\"^1.0.0\",\"vinyl-buffer\":\"^1.0.0\",\"vinyl-source-stream\":\"^1.1.0\",watchify:\"^3.7.0\"},dependencies:{}}},{}],8:[function(t,e,n){\"use strict\";e.exports={name:\"button\",template:t(\"../../templates/components/button.tpl\"),style:t(\"../../styles/clay/components/button.scss\"),manipulator:\"button\",defaults:{primary:!1,attributes:{},description:\"\"}}},{\"../../styles/clay/components/button.scss\":21,\"../../templates/components/button.tpl\":30}],9:[function(t,e,n){\"use strict\";e.exports={name:\"checkboxgroup\",template:t(\"../../templates/components/checkboxgroup.tpl\"),style:t(\"../../styles/clay/components/checkboxgroup.scss\"),manipulator:\"checkboxgroup\",defaults:{label:\"\",options:[],description:\"\"}}},{\"../../styles/clay/components/checkboxgroup.scss\":22,\"../../templates/components/checkboxgroup.tpl\":31}],10:[function(t,e,n){\"use strict\";e.exports={name:\"color\",template:t(\"../../templates/components/color.tpl\"),style:t(\"../../styles/clay/components/color.scss\"),manipulator:\"color\",defaults:{label:\"\",description:\"\"},initialize:function(t,e){function n(t){if(\"number\"==typeof t)t=t.toString(16);else if(!t)return\"transparent\";return t=r(t),\"#\"+(f?p[t]:t)}function r(t){for(t=t.toLowerCase();t.length<6;)t=\"0\"+t;return t}function o(t){switch(typeof t){case\"number\":return r(t.toString(16));case\"string\":return t.replace(/^#|^0x/,\"\");default:return t}}function i(t){return t.reduce(function(t,e){return t.concat(e)},[])}function a(t){t=t.replace(/^#|^0x/,\"\");var e=parseInt(t.slice(0,2),16)/255,n=parseInt(t.slice(2,4),16)/255,r=parseInt(t.slice(4),16)/255;e=e>.04045?Math.pow((e+.055)/1.055,2.4):e/12.92,n=n>.04045?Math.pow((n+.055)/1.055,2.4):n/12.92,r=r>.04045?Math.pow((r+.055)/1.055,2.4):r/12.92;var o=(.4124*e+.3576*n+.1805*r)/.95047,i=(.2126*e+.7152*n+.0722*r)/1,a=(.0193*e+.1192*n+.9505*r)/1.08883;return o=o>.008856?Math.pow(o,1/3):7.787*o+16/116,i=i>.008856?Math.pow(i,1/3):7.787*i+16/116,a=a>.008856?Math.pow(a,1/3):7.787*a+16/116,[116*i-16,500*(o-i),200*(i-a)]}function s(t,e){var n=t[0]-e[0],r=t[1]-e[1],o=t[2]-e[2];return Math.sqrt(Math.pow(n,2)+Math.pow(r,2)+Math.pow(o,2))}function c(){return!e.meta.activeWatchInfo||2===e.meta.activeWatchInfo.firmware.major||[\"aplite\",\"diorite\"].indexOf(e.meta.activeWatchInfo.platform)>-1&&!u.config.allowGray?d.BLACK_WHITE:[\"aplite\",\"diorite\"].indexOf(e.meta.activeWatchInfo.platform)>-1&&u.config.allowGray?d.GRAY:d.COLOR}var l=t.HTML,u=this;u.roundColorToLayout=function(t){var e=o(t);if(m.indexOf(e)===-1){var n=a(e),r=m.map(function(t){var e=a(o(t));return s(n,e)}),i=Math.min.apply(Math,r),c=r.indexOf(i);e=m[c]}return parseInt(e,16)};var f=u.config.sunlight!==!1,p={\"000000\":\"000000\",\"000055\":\"001e41\",\"0000aa\":\"004387\",\"0000ff\":\"0068ca\",\"005500\":\"2b4a2c\",\"005555\":\"27514f\",\"0055aa\":\"16638d\",\"0055ff\":\"007dce\",\"00aa00\":\"5e9860\",\"00aa55\":\"5c9b72\",\"00aaaa\":\"57a5a2\",\"00aaff\":\"4cb4db\",\"00ff00\":\"8ee391\",\"00ff55\":\"8ee69e\",\"00ffaa\":\"8aebc0\",\"00ffff\":\"84f5f1\",550000:\"4a161b\",550055:\"482748\",\"5500aa\":\"40488a\",\"5500ff\":\"2f6bcc\",555500:\"564e36\",555555:\"545454\",\"5555aa\":\"4f6790\",\"5555ff\":\"4180d0\",\"55aa00\":\"759a64\",\"55aa55\":\"759d76\",\"55aaaa\":\"71a6a4\",\"55aaff\":\"69b5dd\",\"55ff00\":\"9ee594\",\"55ff55\":\"9de7a0\",\"55ffaa\":\"9becc2\",\"55ffff\":\"95f6f2\",aa0000:\"99353f\",aa0055:\"983e5a\",aa00aa:\"955694\",aa00ff:\"8f74d2\",aa5500:\"9d5b4d\",aa5555:\"9d6064\",aa55aa:\"9a7099\",aa55ff:\"9587d5\",aaaa00:\"afa072\",aaaa55:\"aea382\",aaaaaa:\"ababab\",ffffff:\"ffffff\",aaaaff:\"a7bae2\",aaff00:\"c9e89d\",aaff55:\"c9eaa7\",aaffaa:\"c7f0c8\",aaffff:\"c3f9f7\",ff0000:\"e35462\",ff0055:\"e25874\",ff00aa:\"e16aa3\",ff00ff:\"de83dc\",ff5500:\"e66e6b\",ff5555:\"e6727c\",ff55aa:\"e37fa7\",ff55ff:\"e194df\",ffaa00:\"f1aa86\",ffaa55:\"f1ad93\",ffaaaa:\"efb5b8\",ffaaff:\"ecc3eb\",ffff00:\"ffeeab\",ffff55:\"fff1b5\",ffffaa:\"fff6d3\"},d={COLOR:[[!1,!1,\"55ff00\",\"aaff55\",!1,\"ffff55\",\"ffffaa\",!1,!1],[!1,\"aaffaa\",\"55ff55\",\"00ff00\",\"aaff00\",\"ffff00\",\"ffaa55\",\"ffaaaa\",!1],[\"55ffaa\",\"00ff55\",\"00aa00\",\"55aa00\",\"aaaa55\",\"aaaa00\",\"ffaa00\",\"ff5500\",\"ff5555\"],[\"aaffff\",\"00ffaa\",\"00aa55\",\"55aa55\",\"005500\",\"555500\",\"aa5500\",\"ff0000\",\"ff0055\"],[!1,\"55aaaa\",\"00aaaa\",\"005555\",\"ffffff\",\"000000\",\"aa5555\",\"aa0000\",!1],[\"55ffff\",\"00ffff\",\"00aaff\",\"0055aa\",\"aaaaaa\",\"555555\",\"550000\",\"aa0055\",\"ff55aa\"],[\"55aaff\",\"0055ff\",\"0000ff\",\"0000aa\",\"000055\",\"550055\",\"aa00aa\",\"ff00aa\",\"ffaaff\"],[!1,\"5555aa\",\"5555ff\",\"5500ff\",\"5500aa\",\"aa00ff\",\"ff00ff\",\"ff55ff\",!1],[!1,!1,!1,\"aaaaff\",\"aa55ff\",\"aa55aa\",!1,!1,!1]],GRAY:[[\"000000\",\"aaaaaa\",\"ffffff\"]],BLACK_WHITE:[[\"000000\",\"ffffff\"]]},h=u.config.layout||c();\"string\"==typeof h&&(h=d[h]),Array.isArray(h[0])||(h=[h]);var m=i(h).map(function(t){return o(t)}).filter(function(t){return t}),g=\"\",b=h.length,y=0;h.forEach(function(t){y=t.length>y?t.length:y});for(var v=100/y,A=100/b,w=u.$element,k=0;k<b;k++)for(var x=0;x<y;x++){var M=o(h[k][x]),T=M?\" selectable\":\"\",R=0===k&&0===x||0===k&&!h[k][x-1]||!h[k][x-1]&&!h[k-1][x]?\" rounded-tl\":\"\",P=0===k&&!h[k][x+1]||!h[k][x+1]&&!h[k-1][x]?\" rounded-tr \":\"\",O=k===h.length-1&&0===x||k===h.length-1&&!h[k][x-1]||!h[k][x-1]&&!h[k+1][x]?\" rounded-bl\":\"\",E=k===h.length-1&&!h[k][x+1]||!h[k][x+1]&&!h[k+1][x]?\" rounded-br\":\"\";g+='<i class=\"color-box '+T+R+P+O+E+'\" '+(M?'data-value=\"'+parseInt(M,16)+'\" ':\"\")+'style=\"width:'+v+\"%; height:\"+A+\"%; background:\"+n(M)+';\"></i>'}var j=0;3===y&&(j=5),2===y&&(j=8);var B=j*v/A+\"%\",S=j+\"%\";w.select(\".color-box-container\").add(l(g)).set(\"$paddingTop\",B).set(\"$paddingRight\",S).set(\"$paddingBottom\",B).set(\"$paddingLeft\",S),w.select(\".color-box-wrap\").set(\"$paddingBottom\",v/A*100+\"%\");var D=w.select(\".value\"),N=w.select(\".picker-wrap\"),Y=u.$manipulatorTarget.get(\"disabled\");w.select(\"label\").on(\"click\",function(){Y||N.set(\"show\")}),u.on(\"change\",function(){var t=u.get();D.set(\"$background-color\",n(t)),w.select(\".color-box\").set(\"-selected\"),w.select('.color-box[data-value=\"'+t+'\"]').set(\"+selected\")}),w.select(\".color-box.selectable\").on(\"click\",function(t){u.set(parseInt(t.target.dataset.value,10)),N.set(\"-show\")}),N.on(\"click\",function(){N.set(\"-show\")}),u.on(\"disabled\",function(){Y=!0}),u.on(\"enabled\",function(){Y=!1}),u._layout=h}}},{\"../../styles/clay/components/color.scss\":23,\"../../templates/components/color.tpl\":32}],11:[function(t,e,n){\"use strict\";e.exports={name:\"footer\",template:t(\"../../templates/components/footer.tpl\"),manipulator:\"html\"}},{\"../../templates/components/footer.tpl\":33}],12:[function(t,e,n){\"use strict\";e.exports={name:\"heading\",template:t(\"../../templates/components/heading.tpl\"),manipulator:\"html\",defaults:{size:4}}},{\"../../templates/components/heading.tpl\":34}],13:[function(t,e,n){\"use strict\";e.exports={color:t(\"./color\"),footer:t(\"./footer\"),heading:t(\"./heading\"),input:t(\"./input\"),select:t(\"./select\"),submit:t(\"./submit\"),text:t(\"./text\"),toggle:t(\"./toggle\"),radiogroup:t(\"./radiogroup\"),checkboxgroup:t(\"./checkboxgroup\"),button:t(\"./button\"),slider:t(\"./slider\")}},{\"./button\":8,\"./checkboxgroup\":9,\"./color\":10,\"./footer\":11,\"./heading\":12,\"./input\":14,\"./radiogroup\":15,\"./select\":16,\"./slider\":17,\"./submit\":18,\"./text\":19,\"./toggle\":20}],14:[function(t,e,n){\"use strict\";e.exports={name:\"input\",template:t(\"../../templates/components/input.tpl\"),style:t(\"../../styles/clay/components/input.scss\"),manipulator:\"val\",defaults:{label:\"\",description:\"\",attributes:{}}}},{\"../../styles/clay/components/input.scss\":24,\"../../templates/components/input.tpl\":35}],15:[function(t,e,n){\"use strict\";e.exports={name:\"radiogroup\",template:t(\"../../templates/components/radiogroup.tpl\"),style:t(\"../../styles/clay/components/radiogroup.scss\"),manipulator:\"radiogroup\",defaults:{label:\"\",options:[],description:\"\",attributes:{}}}},{\"../../styles/clay/components/radiogroup.scss\":25,\"../../templates/components/radiogroup.tpl\":36}],16:[function(t,e,n){\"use strict\";e.exports={name:\"select\",template:t(\"../../templates/components/select.tpl\"),style:t(\"../../styles/clay/components/select.scss\"),manipulator:\"val\",defaults:{label:\"\",options:[],description:\"\",attributes:{}},initialize:function(){function t(){var t=e.$manipulatorTarget.get(\"selectedIndex\"),r=e.$manipulatorTarget.select(\"option\"),o=r[t]&&r[t].innerHTML;n.set(\"innerHTML\",o)}var e=this,n=e.$element.select(\".value\");t(),e.on(\"change\",t)}}},{\"../../styles/clay/components/select.scss\":26,\"../../templates/components/select.tpl\":37}],17:[function(t,e,n){\"use strict\";e.exports={name:\"slider\",template:t(\"../../templates/components/slider.tpl\"),style:t(\"../../styles/clay/components/slider.scss\"),manipulator:\"slider\",defaults:{label:\"\",description:\"\",min:0,max:100,step:1,attributes:{}},initialize:function(){function t(){var t=e.get().toFixed(e.precision);n.set(\"value\",t),r.set(\"innerHTML\",t)}var e=this,n=e.$element.select(\".value\"),r=e.$element.select(\".value-pad\"),o=e.$manipulatorTarget,i=o.get(\"step\");i=i.toString(10).split(\".\")[1],e.precision=i?i.length:0,e.on(\"change\",t),o.on(\"|input\",t),t(),n.on(\"|input\",function(){r.set(\"innerHTML\",this.get(\"value\"))}),n.on(\"|change\",function(){e.set(this.get(\"value\")),t()})}}},{\"../../styles/clay/components/slider.scss\":27,\"../../templates/components/slider.tpl\":38}],18:[function(t,e,n){\"use strict\";e.exports={name:\"submit\",template:t(\"../../templates/components/submit.tpl\"),style:t(\"../../styles/clay/components/submit.scss\"),manipulator:\"button\",defaults:{attributes:{}}}},{\"../../styles/clay/components/submit.scss\":28,\"../../templates/components/submit.tpl\":39}],19:[function(t,e,n){\"use strict\";e.exports={name:\"text\",template:t(\"../../templates/components/text.tpl\"),manipulator:\"html\"}},{\"../../templates/components/text.tpl\":40}],20:[function(t,e,n){\"use strict\";e.exports={name:\"toggle\",template:t(\"../../templates/components/toggle.tpl\"),style:t(\"../../styles/clay/components/toggle.scss\"),manipulator:\"checked\",defaults:{label:\"\",description:\"\",attributes:{}}}},{\"../../styles/clay/components/toggle.scss\":29,\"../../templates/components/toggle.tpl\":41}],21:[function(t,e,n){e.exports=\".component-button { text-align: center; }\\n\\n.section .component-button { padding-bottom: 0; }\\n\\n.component-button .description { padding-left: 0; padding-right: 0; }\\n\"},{}],22:[function(t,e,n){e.exports=\".component-checkbox { display: block; }\\n\\n.section .component-checkbox { padding-right: 0.375rem; }\\n\\n.component-checkbox > .label { display: block; padding-bottom: 0.35rem; }\\n\\n.component-checkbox .checkbox-group { padding-bottom: 0.35rem; }\\n\\n.component-checkbox .checkbox-group label { padding: 0.35rem 0.375rem; }\\n\\n.component-checkbox .checkbox-group .label { font-size: 0.9em; }\\n\\n.component-checkbox .checkbox-group input { opacity: 0; position: absolute; }\\n\\n.component-checkbox .checkbox-group i { display: block; position: relative; border-radius: 0.25rem; width: 1.4rem; height: 1.4rem; border: 0.11765rem solid #767676; -webkit-flex-shrink: 0; flex-shrink: 0; }\\n\\n.component-checkbox .checkbox-group input:checked + i { border-color: #ff4700; background: #ff4700; }\\n\\n.component-checkbox .checkbox-group input:checked + i:after { content: ''; box-sizing: border-box; -webkit-transform: rotate(45deg); transform: rotate(45deg); position: absolute; left: 0.35rem; top: -0.05rem; display: block; width: 0.5rem; height: 1rem; border: 0 solid #ffffff; border-right-width: 0.11765rem; border-bottom-width: 0.11765rem; }\\n\\n.component-checkbox .description { padding-left: 0; padding-right: 0; }\\n\"},{}],23:[function(t,e,n){e.exports=\".section .component-color { padding: 0; }\\n\\n.component-color .value { width: 2.2652rem; height: 1.4rem; border-radius: 0.7rem; box-shadow: 0 0.1rem 0.1rem #2f2f2f; display: block; background: #000; }\\n\\n.component-color .picker-wrap { left: 0; top: 0; right: 0; bottom: 0; position: fixed; padding: 0.7rem 0.375rem; background: rgba(0, 0, 0, 0.65); opacity: 0; -webkit-transition: opacity 100ms ease-in 175ms; transition: opacity 100ms ease-in 175ms; pointer-events: none; z-index: 100; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -webkit-flex-direction: column; flex-direction: column; -webkit-box-pack: center; -webkit-justify-content: center; justify-content: center; -webkit-box-align: center; -webkit-align-items: center; align-items: center; }\\n\\n.component-color .picker-wrap .picker { padding: 0.7rem 0.75rem; background: #484848; box-shadow: 0 0.17647rem 0.88235rem rgba(0, 0, 0, 0.4); border-radius: 0.25rem; width: 100%; max-width: 26rem; overflow: auto; }\\n\\n.component-color .picker-wrap.show { -webkit-transition-delay: 0ms; transition-delay: 0ms; pointer-events: auto; opacity: 1; }\\n\\n.component-color .color-box-wrap { box-sizing: border-box; position: relative; height: 0; width: 100%; padding: 0 0 100% 0; }\\n\\n.component-color .color-box-wrap .color-box-container { position: absolute; height: 99.97%; width: 100%; left: 0; top: 0; }\\n\\n.component-color .color-box-wrap .color-box-container .color-box { float: left; cursor: pointer; -webkit-tap-highlight-color: transparent; }\\n\\n.component-color .color-box-wrap .color-box-container .color-box.rounded-tl { border-top-left-radius: 0.25rem; }\\n\\n.component-color .color-box-wrap .color-box-container .color-box.rounded-tr { border-top-right-radius: 0.25rem; }\\n\\n.component-color .color-box-wrap .color-box-container .color-box.rounded-bl { border-bottom-left-radius: 0.25rem; }\\n\\n.component-color .color-box-wrap .color-box-container .color-box.rounded-br { border-bottom-right-radius: 0.25rem; }\\n\\n.component-color .color-box-wrap .color-box-container .color-box.selected { -webkit-transform: scale(1.1); transform: scale(1.1); border-radius: 0.25rem; box-shadow: #111 0 0 0.24rem; position: relative; z-index: 100; }\\n\"},{}],24:[function(t,e,n){e.exports=\".section .component-input { padding: 0; }\\n\\n.component-input label { display: block; }\\n\\n.component-input .label { padding-bottom: 0.7rem; }\\n\\n.component-input .input { position: relative; min-width: 100%; margin-top: 0.7rem; margin-left: 0; }\\n\\n.component-input input { display: block; width: 100%; background: #333333; border-radius: 0.25rem; padding: 0.35rem 0.375rem; border: none; vertical-align: baseline; color: #ffffff; font-size: inherit; -webkit-appearance: none; appearance: none; min-height: 2.1rem; }\\n\\n.component-input input::-webkit-input-placeholder { color: #858585; }\\n\\n.component-input input::-moz-placeholder { color: #858585; }\\n\\n.component-input input:-moz-placeholder { color: #858585; }\\n\\n.component-input input:-ms-input-placeholder { color: #858585; }\\n\\n.component-input input:focus { border: none; box-shadow: none; }\\n\\n.component-input input:focus::-webkit-input-placeholder { color: #666666; }\\n\\n.component-input input:focus::-moz-placeholder { color: #666666; }\\n\\n.component-input input:focus:-moz-placeholder { color: #666666; }\\n\\n.component-input input:focus:-ms-input-placeholder { color: #666666; }\\n\"},{}],25:[function(t,e,n){e.exports=\".component-radio { display: block; }\\n\\n.section .component-radio { padding-right: 0.375rem; }\\n\\n.component-radio > .label { display: block; padding-bottom: 0.35rem; }\\n\\n.component-radio .radio-group { padding-bottom: 0.35rem; }\\n\\n.component-radio .radio-group label { padding: 0.35rem 0.375rem; }\\n\\n.component-radio .radio-group .label { font-size: 0.9em; }\\n\\n.component-radio .radio-group input { opacity: 0; position: absolute; }\\n\\n.component-radio .radio-group i { display: block; position: relative; border-radius: 1.4rem; width: 1.4rem; height: 1.4rem; border: 2px solid #767676; -webkit-flex-shrink: 0; flex-shrink: 0; }\\n\\n.component-radio .radio-group input:checked + i { border-color: #ff4700; }\\n\\n.component-radio .radio-group input:checked + i:after { content: ''; display: block; position: absolute; left: 15%; right: 15%; top: 15%; bottom: 15%; border-radius: 1.4rem; background: #ff4700; }\\n\\n.component-radio .description { padding-left: 0; padding-right: 0; }\\n\"},{}],26:[function(t,e,n){e.exports='.section .component-select { padding: 0; }\\n\\n.component-select label { position: relative; }\\n\\n.component-select .value { position: relative; padding-right: 1.1rem; display: block; }\\n\\n.component-select .value:after { content: \"\"; position: absolute; right: 0; top: 50%; margin-top: -0.1rem; height: 0; width: 0; border-left: 0.425rem solid transparent; border-right: 0.425rem solid transparent; border-top: 0.425rem solid #ff4700; }\\n\\n.component-select select { opacity: 0; position: absolute; display: block; left: 0; right: 0; top: 0; bottom: 0; width: 100%; border: none; margin: 0; padding: 0; }\\n'},{}],27:[function(t,e,n){e.exports=\".section .component-slider { padding: 0; }\\n\\n.component-slider label { display: block; }\\n\\n.component-slider .label-container { display: -webkit-box; display: -webkit-flex; display: flex; -webkit-box-align: center; -webkit-align-items: center; align-items: center; width: 100%; padding-bottom: 0.7rem; }\\n\\n.component-slider .label { -webkit-box-flex: 1; -webkit-flex: 1; flex: 1; min-width: 1rem; display: block; padding-right: 0.75rem; }\\n\\n.component-slider .value-wrap { display: block; position: relative; }\\n\\n.component-slider .value, .component-slider .value-pad { display: block; background: #333333; border-radius: 0.25rem; padding: 0.35rem 0.375rem; border: none; vertical-align: baseline; color: #ffffff; text-align: right; margin: 0; min-width: 1rem; }\\n\\n.component-slider .value-pad { visibility: hidden; }\\n\\n.component-slider .value-pad:before { content: ' '; display: inline-block; }\\n\\n.component-slider .value { max-width: 100%; position: absolute; left: 0; top: 0; }\\n\\n.component-slider .input-wrap { padding: 0 0.75rem 0.7rem; }\\n\\n.component-slider .input { display: block; position: relative; min-width: 100%; height: 1.4rem; overflow: hidden; margin-left: 0; }\\n\\n.component-slider .input:before { content: ''; display: block; position: absolute; height: 0.17647rem; background: #666666; width: 100%; top: 0.61176rem; }\\n\\n.component-slider .input .slider { display: block; width: 100%; -webkit-appearance: none; appearance: none; position: relative; height: 1.4rem; margin: 0; background-color: transparent; }\\n\\n.component-slider .input .slider:focus { outline: none; }\\n\\n.component-slider .input .slider::-webkit-slider-runnable-track { border: none; height: 1.4rem; width: 100%; background-color: transparent; }\\n\\n.component-slider .input .slider::-webkit-slider-thumb { -webkit-appearance: none; appearance: none; position: relative; height: 1.4rem; width: 1.4rem; background-color: #ff4700; border-radius: 50%; }\\n\\n.component-slider .input .slider::-webkit-slider-thumb:before { content: \\\"\\\"; position: absolute; left: -1000px; top: 0.61176rem; height: 0.17647rem; width: 1001px; background: #ff4700; }\\n\"},{}],28:[function(t,e,n){e.exports=\".component-submit { text-align: center; }\\n\"},{}],29:[function(t,e,n){e.exports=\".section .component-toggle { padding: 0; }\\n\\n.component-toggle input { display: none; }\\n\\n.component-toggle .graphic { display: inline-block; position: relative; }\\n\\n.component-toggle .graphic .slide { display: block; border-radius: 1.05rem; height: 1.05rem; width: 2.2652rem; background: #2f2f2f; -webkit-transition: background-color 150ms linear; transition: background-color 150ms linear; }\\n\\n.component-toggle .graphic .marker { background: #ececec; width: 1.4rem; height: 1.4rem; border-radius: 1.4rem; position: absolute; left: 0; display: block; top: -0.175rem; -webkit-transition: -webkit-transform 150ms linear; transition: -webkit-transform 150ms linear; transition: transform 150ms linear; transition: transform 150ms linear, -webkit-transform 150ms linear; box-shadow: 0 0.1rem 0.1rem #2f2f2f; }\\n\\n.component-toggle input:checked + .graphic .slide { background: #993d19; }\\n\\n.component-toggle input:checked + .graphic .marker { background: #ff4700; -webkit-transform: translateX(0.8652rem); transform: translateX(0.8652rem); }\\n\"},{}],30:[function(t,e,n){e.exports='<div class=\"component component-button\">\\n  <button\\n    type=\"button\"\\n    data-manipulator-target\\n    class=\"{{primary ? \\'primary\\' : \\'\\'}}\"\\n    {{each key: attributes}}{{key}}=\"{{this}}\"{{/each}}\\n  ></button>\\n  {{if description}}\\n    <div class=\"description\">{{{description}}}</div>\\n  {{/if}}\\n</div>\\n'},{}],31:[function(t,e,n){e.exports='<div class=\"component component-checkbox\">\\n  <span class=\"label\">{{{label}}}</span>\\n  <div class=\"checkbox-group\">\\n    {{each options}}\\n      <label class=\"tap-highlight\">\\n        <span class=\"label\">{{{this}}}</span>\\n        <input type=\"checkbox\" value=\"1\" name=\"clay-{{clayId}}\" />\\n        <i></i>\\n      </label>\\n    {{/each}}\\n  </div>\\n  {{if description}}\\n    <div class=\"description\">{{{description}}}</div>\\n  {{/if}}\\n</div>\\n'},{}],32:[function(t,e,n){e.exports='<div class=\"component component-color\">\\n  <label class=\"tap-highlight\">\\n    <input\\n      data-manipulator-target\\n      type=\"hidden\"\\n    />\\n    <span class=\"label\">{{{label}}}</span>\\n    <span class=\"value\"></span>\\n  </label>\\n  {{if description}}\\n    <div class=\"description\">{{{description}}}</div>\\n  {{/if}}\\n  <div class=\"picker-wrap\">\\n    <div class=\"picker\">\\n      <div class=\"color-box-wrap\">\\n        <div class=\"color-box-container\"></div>\\n      </div>\\n    </div>\\n  </div>\\n</div>\\n'},{}],33:[function(t,e,n){e.exports='<footer data-manipulator-target class=\"component component-footer\"></footer>\\n'},{}],34:[function(t,e,n){e.exports='<div class=\"component component-heading\">\\n  <h{{size}} data-manipulator-target></h{{size}}>\\n</div>\\n'},{}],35:[function(t,e,n){e.exports='<div class=\"component component-input\">\\n  <label class=\"tap-highlight\">\\n    <span class=\"label\">{{{label}}}</span>\\n    <span class=\"input\">\\n      <input\\n      data-manipulator-target\\n        {{each key: attributes}}{{key}}=\"{{this}}\"{{/each}}\\n    />\\n    </span>\\n  </label>\\n\\n  {{if description}}\\n    <div class=\"description\">{{{description}}}</div>\\n  {{/if}}\\n</div>\\n'},{}],36:[function(t,e,n){e.exports='<div class=\"component component-radio\">\\n  <span class=\"label\">{{{label}}}</span>\\n  <div class=\"radio-group\">\\n    {{each options}}\\n      <label class=\"tap-highlight\">\\n        <span class=\"label\">{{{this.label}}}</span>\\n        <input\\n          type=\"radio\"\\n          value=\"{{this.value}}\"\\n          name=\"clay-{{clayId}}\"\\n          {{each key: attributes}}{{key}}=\"{{this}}\"{{/each}}\\n        />\\n        <i></i>\\n      </label>\\n    {{/each}}\\n  </div>\\n  {{if description}}\\n    <div class=\"description\">{{{description}}}</div>\\n  {{/if}}\\n</div>\\n'},{}],37:[function(t,e,n){e.exports='<div class=\"component component-select\">\\n  <label class=\"tap-highlight\">\\n    <span class=\"label\">{{{label}}}</span>\\n    <span class=\"value\"></span>\\n    <select data-manipulator-target {{each key: attributes}}{{key}}=\"{{this}}\"{{/each}}>\\n      {{each options}}\\n        {{if Array.isArray(this.value)}}\\n          <optgroup label=\"{{this.label}}\">\\n            {{each this.value}}\\n              <option value=\"{{this.value}}\" class=\"item-select-option\">{{this.label}}</option>\\n            {{/each}}\\n          </optgroup>\\n        {{else}}\\n          <option value=\"{{this.value}}\" class=\"item-select-option\">{{this.label}}</option>\\n        {{/if}}\\n      {{/each}}\\n    </select>\\n  </label>\\n  {{if description}}\\n    <div class=\"description\">{{{description}}}</div>\\n  {{/if}}\\n</div>\\n'},{}],38:[function(t,e,n){e.exports='<div class=\"component component-slider\">\\n  <label class=\"tap-highlight\">\\n    <span class=\"label-container\">\\n      <span class=\"label\">{{{label}}}</span>\\n      <span class=\"value-wrap\">\\n        <span class=\"value-pad\"></span>\\n        <input type=\"text\" class=\"value\" />\\n      </span>\\n    </span>\\n    <span class=\"input\">\\n      <input\\n        data-manipulator-target\\n        class=\"slider\"\\n        type=\"range\"\\n        min=\"{{min}}\"\\n        max=\"{{max}}\"\\n        step=\"{{step}}\"\\n        {{each key: attributes}}{{key}}=\"{{this}}\"{{/each}}\\n      />\\n    </span>\\n</label>\\n  {{if description}}\\n    <div class=\"description\">{{{description}}}</div>\\n  {{/if}}\\n</div>\\n'},{}],39:[function(t,e,n){e.exports='<div class=\"component component-submit\">\\n  <button\\n    data-manipulator-target\\n    type=\"submit\"\\n    {{each key: attributes}}{{key}}=\"{{this}}\"{{/each}}\\n  ></button>\\n</div>\\n'},{}],40:[function(t,e,n){e.exports='<div class=\"component component-text\">\\n  <p data-manipulator-target></p>\\n</div>\\n'},{}],41:[function(t,e,n){e.exports='<div class=\"component component-toggle\">\\n  <label class=\"tap-highlight\">\\n    <span class=\"label\">{{{label}}}</span>\\n    <span class=\"input\">\\n      <input\\n        data-manipulator-target\\n        type=\"checkbox\"\\n        {{each key: attributes}}{{key}}=\"{{this}}\"{{/each}}\\n      />\\n      <span class=\"graphic\">\\n        <span class=\"slide\"></span>\\n        <span class=\"marker\"></span>\\n      </span>\\n    </span>\\n  </label>\\n  {{if description}}\\n    <div class=\"description\">{{{description}}}</div>\\n  {{/if}}\\n</div>\\n'},{}],42:[function(t,e,n){e.exports='<!DOCTYPE html><html lang=\"en\"><head><meta charset=\"utf-8\"><style>@font-face{font-family:PFDinDisplayProRegularWebfont;src:url(data:application/font-woff;charset=utf-8;base64,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) format(\"woff\");font-weight:400;font-style:normal}a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,p,pre,q,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;outline:0;font-size:100%;font:inherit;vertical-align:baseline}button,input,textarea{outline:0}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote:after,blockquote:before,q:after,q:before{content:\\'\\';content:none}html{box-sizing:border-box}*,:after,:before{box-sizing:inherit}body,html{font-weight:400;font-family:PFDinDisplayPro-Regular,PFDinDisplayProRegularWebfont,sans-serif;-webkit-font-smoothing:antialiased;font-size:17px;line-height:1.4;height:100%;color:#fff}body.platform-ios,html.platform-ios{font-size:16px}body{background-color:#333;padding:0 .75rem .7rem}em{font-style:italic}strong{font-weight:400;font-family:PFDinDisplayPro-Medium,PFDinDisplayProRegularWebfont,sans-serif;color:#ff4700}.platform-android strong{font-family:PFDinDisplayProRegularWebfont,sans-serif;font-weight:700;letter-spacing:.025em}a{color:#858585}a:hover{color:inherit}h1,h2,h3,h4{text-transform:uppercase;font-weight:400;font-family:PFDinDisplayPro-Medium,PFDinDisplayProRegularWebfont,sans-serif;text-transform:uppercase;position:relative;top:.05rem;line-height:.9}.platform-android h1,.platform-android h2,.platform-android h3,.platform-android h4{font-family:PFDinDisplayProRegularWebfont,sans-serif;font-weight:700;letter-spacing:.025em}h1{font-size:2rem;line-height:2.8rem}h2{font-size:1.8rem;line-height:2.8rem}h3{font-size:1.5rem;line-height:2.8rem}h4{font-size:1.2rem;line-height:1.4rem}h5{font-size:1rem;line-height:1.4rem}h6{font-size:.8rem;line-height:1.4rem}input{font-family:inherit;font-size:inherit;line-height:inherit}label{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;-webkit-box-align:center;-webkit-align-items:center;align-items:center;padding:.7rem .75rem}label .input{white-space:nowrap;display:-webkit-box;display:-webkit-flex;display:flex;max-width:50%;margin-left:.75rem}label.invalid .input:after{content:\"!\";display:inline-block;color:#fff;background:#ff4700;border-radius:.55rem;width:1.1rem;text-align:center;height:1.1rem;font-size:.825rem;vertical-align:middle;line-height:1.1rem;box-shadow:0 .1rem .1rem #2f2f2f;font-weight:400;font-family:PFDinDisplayPro-Medium,PFDinDisplayProRegularWebfont,sans-serif;-webkit-box-flex:0;-webkit-flex:0 0 1.1rem;flex:0 0 1.1rem;margin-left:.3rem}.platform-android label.invalid .input:after{font-family:PFDinDisplayProRegularWebfont,sans-serif;font-weight:700;letter-spacing:.025em}.hide{display:none!important}.tap-highlight{-webkit-tap-highlight-color:rgba(255,255,255,.1);border-radius:.25rem}.tap-highlight:active{background-color:rgba(255,255,255,.1)}.component{padding-top:.7rem}.component.disabled{pointer-events:none}.component.disabled>*{opacity:.25}.section{background:#484848;border-radius:.25rem;box-shadow:#2f2f2f 0 .15rem .25rem}.section>.component{padding-bottom:.7rem;padding-right:.75rem;padding-left:.75rem;position:relative;margin-top:1rem}.section>.component:not(.hide)~.component{margin-top:0}.section>.component:first-child:after{display:none}.section>.component:after{content:\"\";background:#666;display:block;position:absolute;top:0;left:.375rem;right:.375rem;height:1px;pointer-events:none}.section>.component:not(.hide):after{display:none}.section>.component:not(.hide)~.component:not(.hide):after{display:block}.section>.component-heading:first-child{background:#414141;border-radius:.25rem .25rem 0 0}.section>.component-heading:first-child:after,.section>.component-heading:first-child~.component:not(.hide):after{display:none}.section>.component-heading:first-child~.component:not(.hide)~.component:not(.hide):after{display:block}.description{padding:0 .75rem .7rem;font-size:.9rem;line-height:1.4rem;color:#a4a4a4;text-align:left}.inputs{display:block;width:100%;border-collapse:collapse}.button,button{font-weight:400;font-family:PFDinDisplayPro-Medium,PFDinDisplayProRegularWebfont,sans-serif;font-size:1rem;line-height:1.4rem;text-transform:uppercase;background-color:#767676;border-radius:.25rem;border:none;display:inline-block;color:#fff;min-width:12rem;text-align:center;margin:0 auto .7rem;padding:.6rem;-webkit-tap-highlight-color:#858585}.platform-android .button,.platform-android button{font-family:PFDinDisplayProRegularWebfont,sans-serif;font-weight:700;letter-spacing:.025em}.button:active,button:active{background-color:#858585}.platform-ios .button,.platform-ios button{padding:.5rem}.button.primary,.button[type=submit],button.primary,button[type=submit]{background-color:#ff4700;-webkit-tap-highlight-color:red}.button.primary:active,.button[type=submit]:active,button.primary:active,button[type=submit]:active{background-color:red}a.button{text-decoration:none;color:#fff}</style><meta name=\"viewport\"content=\"width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no\"><script>window.returnTo=\"$$RETURN_TO$$\",window.clayConfig=$$CONFIG$$,window.claySettings=$$SETTINGS$$,window.customFn=$$CUSTOM_FN$$,window.clayComponents=$$COMPONENTS$$,window.clayMeta=$$META$$</script></head><body><form id=\"main-form\"class=\"inputs\"></form><script>!function t(e,n,r){function i(a,u){if(!n[a]){if(!e[a]){var s=\"function\"==typeof require&&require;if(!u&&s)return s(a,!0);if(o)return o(a,!0);var c=new Error(\"Cannot find module \\'\"+a+\"\\'\");throw c.code=\"MODULE_NOT_FOUND\",c}var f=n[a]={exports:{}};e[a][0].call(f.exports,function(t){var n=e[a][1][t];return i(n?n:t)},f,f.exports,t,e,n,r)}return n[a].exports}for(var o=\"function\"==typeof require&&require,a=0;a<r.length;a++)i(r[a]);return i}({1:[function(t,e,n){\"use strict\";var r=t(\"./vendor/minified\"),i=t(\"./lib/clay-config\"),o=r.$,a=r._,u=a.extend([],window.clayConfig||[]),s=a.extend({},window.claySettings||{}),c=window.returnTo||\"pebblejs://close#\",f=window.customFn||function(){},l=window.clayComponents||{},h=window.clayMeta||{},m=window.navigator.userAgent.match(/android/i)?\"android\":\"ios\";document.documentElement.classList.add(\"platform-\"+m),a.eachObj(l,function(t,e){i.registerComponent(e)});var p=o(\"#main-form\"),d=new i(s,u,p,h);p.on(\"submit\",function(){location.href=c+encodeURIComponent(JSON.stringify(d.serialize()))}),f.call(d,r),d.build()},{\"./lib/clay-config\":2,\"./vendor/minified\":8}],2:[function(t,e,n){\"use strict\";function r(t,e,n,c){function f(){m=[],p={},d={},g=!1}function l(t,e){if(Array.isArray(t))t.forEach(function(t){l(t,e)});else if(u.includesCapability(c.activeWatchInfo,t.capabilities))if(\"section\"===t.type){var n=i(\\'<div class=\"section\">\\');e.add(n),l(t.items,n)}else{var r=o.copyObj(t);r.clayId=m.length;var s=new a(r).initialize(v);r.id&&(p[r.id]=s),r.messageKey&&(d[r.messageKey]=s),m.push(s);var f=\"undefined\"!=typeof y[r.messageKey]?y[r.messageKey]:r.defaultValue;s.set(\"undefined\"!=typeof f?f:\"\"),e.add(s.$element)}}function h(t){if(!g)throw new Error(\"ClayConfig not built. build() must be run before you can run \"+t+\"()\");return!0}var m,p,d,g,v=this,y=o.copyObj(t);v.meta=c,v.$rootContainer=n,v.EVENTS={BEFORE_BUILD:\"BEFORE_BUILD\",AFTER_BUILD:\"AFTER_BUILD\",BEFORE_DESTROY:\"BEFORE_DESTROY\",AFTER_DESTROY:\"AFTER_DESTROY\"},u.updateProperties(v.EVENTS,{writable:!1}),v.getAllItems=function(){return h(\"getAllItems\"),m},v.getItemByMessageKey=function(t){return h(\"getItemByMessageKey\"),d[t]},v.getItemById=function(t){return h(\"getItemById\"),p[t]},v.getItemsByType=function(t){return h(\"getItemsByType\"),m.filter(function(e){return e.config.type===t})},v.getItemsByGroup=function(t){return h(\"getItemsByGroup\"),m.filter(function(e){return e.config.group===t})},v.serialize=function(){return h(\"serialize\"),y={},o.eachObj(d,function(t,e){y[t]={value:e.get()},e.precision&&(y[t].precision=e.precision)}),y},v.registerComponent=r.registerComponent,v.destroy=function(){var t=n[0];for(v.trigger(v.EVENTS.BEFORE_DESTROY);t.firstChild;)t.removeChild(t.firstChild);return f(),v.trigger(v.EVENTS.AFTER_DESTROY),v},v.build=function(){return g&&v.destroy(),v.trigger(v.EVENTS.BEFORE_BUILD),l(v.config,n),g=!0,v.trigger(v.EVENTS.AFTER_BUILD),v},f(),s.call(v,n),u.updateProperties(v,{writable:!1,configurable:!1}),v.config=e}var i=t(\"../vendor/minified\").HTML,o=t(\"../vendor/minified\")._,a=t(\"./clay-item\"),u=t(\"../lib/utils\"),s=t(\"./clay-events\"),c=t(\"./component-registry\"),f=t(\"./manipulators\");r.registerComponent=function(t){var e=o.copyObj(t);if(c[e.name])return console.warn(\"Component: \"+e.name+\" is already registered. If you wish to override the existing functionality, you must provide a new name\"),!1;if(\"string\"==typeof e.manipulator&&(e.manipulator=f[t.manipulator],!e.manipulator))throw new Error(\"The manipulator: \"+t.manipulator+\" does not exist in the built-in manipulators.\");if(!e.manipulator)throw new Error(\"The manipulator must be defined\");if(\"function\"!=typeof e.manipulator.set||\"function\"!=typeof e.manipulator.get)throw new Error(\"The manipulator must have both a `get` and `set` method\");if(e.style){var n=document.createElement(\"style\");n.type=\"text/css\",n.appendChild(document.createTextNode(e.style)),document.head.appendChild(n)}return c[e.name]=e,!0},e.exports=r},{\"../lib/utils\":7,\"../vendor/minified\":8,\"./clay-events\":3,\"./clay-item\":4,\"./component-registry\":5,\"./manipulators\":6}],3:[function(t,e,n){\"use strict\";function r(t){function e(t){return t.split(\" \").map(function(t){return\"|\"+t.replace(/^\\\\|/,\"\")}).join(\" \")}function n(t,e){var n=o.find(u,function(e){return e.handler===t?e:null});return n||(n={handler:t,proxy:e},u.push(n)),n.proxy}function r(t){return o.find(u,function(e){return e.handler===t?e.proxy:null})}var a=this,u=[];a.on=function(r,i){var o=e(r),a=this,u=n(i,function(){i.apply(a,arguments)});return t.on(o,u),a},a.off=function(t){var e=r(t);return e&&i.off(e),a},a.trigger=function(e,n){return t.trigger(e,n),a}}var i=t(\"../vendor/minified\").$,o=t(\"../vendor/minified\")._;e.exports=r},{\"../vendor/minified\":8}],4:[function(t,e,n){\"use strict\";function r(t){var e=this,n=i[t.type];if(!n)throw new Error(\"The component: \"+t.type+\" is not registered. Make sure to register it with ClayConfig.registerComponent()\");var r={i18n:{foo:\"bar\"}},f=s.extend({},n.defaults||{},t,r),l=s.formatHtml(n.template.trim(),f);e.id=t.id||null,e.messageKey=t.messageKey||null,e.config=t,e.$element=c(l,f),e.$manipulatorTarget=e.$element.select(\"[data-manipulator-target]\"),e.$manipulatorTarget.length||(e.$manipulatorTarget=e.$element),e.initialize=function(t){return\"function\"==typeof n.initialize&&n.initialize.call(e,o,t),e},u.call(e,e.$manipulatorTarget),s.eachObj(n.manipulator,function(t,n){e[t]=n.bind(e)}),a.updateProperties(e,{writable:!1,configurable:!1})}var i=t(\"./component-registry\"),o=t(\"../vendor/minified\"),a=t(\"../lib/utils\"),u=t(\"./clay-events\"),s=o._,c=o.HTML;e.exports=r},{\"../lib/utils\":7,\"../vendor/minified\":8,\"./clay-events\":3,\"./component-registry\":5}],5:[function(t,e,n){\"use strict\";e.exports={}},{}],6:[function(t,e,n){\"use strict\";function r(){return this.$manipulatorTarget.get(\"disabled\")?this:(this.$element.set(\"+disabled\"),this.$manipulatorTarget.set(\"disabled\",!0),this.trigger(\"disabled\"))}function i(){return this.$manipulatorTarget.get(\"disabled\")?(this.$element.set(\"-disabled\"),this.$manipulatorTarget.set(\"disabled\",!1),this.trigger(\"enabled\")):this}function o(){return this.$element[0].classList.contains(\"hide\")?this:(this.$element.set(\"+hide\"),this.trigger(\"hide\"))}function a(){return this.$element[0].classList.contains(\"hide\")?(this.$element.set(\"-hide\"),this.trigger(\"show\")):this}var u=t(\"../vendor/minified\")._;e.exports={html:{get:function(){return this.$manipulatorTarget.get(\"innerHTML\")},set:function(t){return this.get()===t.toString(10)?this:(this.$manipulatorTarget.set(\"innerHTML\",t),this.trigger(\"change\"))},hide:o,show:a},button:{get:function(){return this.$manipulatorTarget.get(\"innerHTML\")},set:function(t){return this.get()===t.toString(10)?this:(this.$manipulatorTarget.set(\"innerHTML\",t),this.trigger(\"change\"))},disable:r,enable:i,hide:o,show:a},val:{get:function(){return this.$manipulatorTarget.get(\"value\")},set:function(t){return this.get()===t.toString(10)?this:(this.$manipulatorTarget.set(\"value\",t),this.trigger(\"change\"))},disable:r,enable:i,hide:o,show:a},slider:{get:function(){return parseFloat(this.$manipulatorTarget.get(\"value\"))},set:function(t){var e=this.get();return this.$manipulatorTarget.set(\"value\",t),this.get()===e?this:this.trigger(\"change\")},disable:r,enable:i,hide:o,show:a},checked:{get:function(){return this.$manipulatorTarget.get(\"checked\")},set:function(t){return!this.get()==!t?this:(this.$manipulatorTarget.set(\"checked\",!!t),this.trigger(\"change\"))},disable:r,enable:i,hide:o,show:a},radiogroup:{get:function(){return this.$element.select(\"input:checked\").get(\"value\")},set:function(t){return this.get()===t.toString(10)?this:(this.$element.select(\\'input[value=\"\\'+t.replace(\\'\"\\',\\'\\\\\\\\\"\\')+\\'\"]\\').set(\"checked\",!0),this.trigger(\"change\"))},disable:r,enable:i,hide:o,show:a},checkboxgroup:{get:function(){var t=[];return this.$element.select(\"input\").each(function(e){t.push(!!e.checked)}),t},set:function(t){var e=this;for(t=Array.isArray(t)?t:[];t.length<this.get().length;)t.push(!1);return u.equals(this.get(),t)?this:(e.$element.select(\"input\").set(\"checked\",!1).each(function(e,n){e.checked=!!t[n]}),e.trigger(\"change\"))},disable:r,enable:i,hide:o,show:a},color:{get:function(){return parseInt(this.$manipulatorTarget.get(\"value\"),10)||0},set:function(t){return t=this.roundColorToLayout(t||0),this.get()===t?this:(this.$manipulatorTarget.set(\"value\",t),this.trigger(\"change\"))},disable:r,enable:i,hide:o,show:a}}},{\"../vendor/minified\":8}],7:[function(t,e,n){\"use strict\";e.exports.updateProperties=function(t,e){Object.getOwnPropertyNames(t).forEach(function(n){Object.defineProperty(t,n,e)})},e.exports.capabilityMap={PLATFORM_APLITE:{platforms:[\"aplite\"],minFwMajor:0,minFwMinor:0},PLATFORM_BASALT:{platforms:[\"basalt\"],minFwMajor:0,minFwMinor:0},PLATFORM_CHALK:{platforms:[\"chalk\"],minFwMajor:0,minFwMinor:0},PLATFORM_DIORITE:{platforms:[\"diorite\"],minFwMajor:0,minFwMinor:0},PLATFORM_EMERY:{platforms:[\"emery\"],minFwMajor:0,minFwMinor:0},BW:{platforms:[\"aplite\",\"diorite\"],minFwMajor:0,minFwMinor:0},COLOR:{platforms:[\"basalt\",\"chalk\",\"emery\"],minFwMajor:0,minFwMinor:0},MICROPHONE:{platforms:[\"basalt\",\"chalk\",\"diorite\",\"emery\"],minFwMajor:0,minFwMinor:0},SMARTSTRAP:{platforms:[\"basalt\",\"chalk\",\"diorite\",\"emery\"],minFwMajor:3,minFwMinor:4},SMARTSTRAP_POWER:{platforms:[\"basalt\",\"chalk\",\"emery\"],minFwMajor:3,minFwMinor:4},HEALTH:{platforms:[\"basalt\",\"chalk\",\"diorite\",\"emery\"],minFwMajor:3,minFwMinor:10},RECT:{platforms:[\"aplite\",\"basalt\",\"diorite\",\"emery\"],minFwMajor:0,minFwMinor:0},ROUND:{platforms:[\"chalk\"],minFwMajor:0,minFwMinor:0},DISPLAY_144x168:{platforms:[\"aplite\",\"basalt\",\"diorite\"],minFwMajor:0,minFwMinor:0},DISPLAY_180x180_ROUND:{platforms:[\"chalk\"],minFwMajor:0,minFwMinor:0},DISPLAY_200x228:{platforms:[\"emery\"],minFwMajor:0,minFwMinor:0}},e.exports.includesCapability=function(t,n){var r=/^NOT_/,i=[];if(!n||!n.length)return!0;for(var o=n.length-1;o>=0;o--){var a=n[o],u=e.exports.capabilityMap[a.replace(r,\"\")];!u||u.platforms.indexOf(t.platform)===-1||u.minFwMajor>t.firmware.major||u.minFwMajor===t.firmware.major&&u.minFwMinor>t.firmware.minor?i.push(!!a.match(r)):i.push(!a.match(r))}return i.indexOf(!1)===-1}},{}],8:[function(t,e,n){e.exports=function(){function t(t){return t.substr(0,3)}function e(t){return t!=lt?\"\"+t:\"\"}function n(t,e){return typeof t==e}function r(t){return n(t,\"string\")}function i(t){return!!t&&n(t,\"object\")}function o(t){return t&&t.nodeType}function a(t){return n(t,\"number\")}function u(t){return i(t)&&!!t.getDay}function s(t){return t===!0||t===!1}function c(t){var e=typeof t;return\"object\"==e?!(!t||!t.getDay):\"string\"==e||\"number\"==e||s(t)}function f(t){return t}function l(t,n,r){return e(t).replace(n,r!=lt?r:\"\")}function h(t){return l(t,/^\\\\s+|\\\\s+$/g)}function m(t,e,n){for(var r in t)t.hasOwnProperty(r)&&e.call(n||t,r,t[r]);return t}function p(t,e,n){if(t)for(var r=0;r<t.length;r++)e.call(n||t,t[r],r);return t}function d(t,e,n){var r=[],i=B(e)?e:function(t){return e!=t};return p(t,function(e,o){i.call(n||t,e,o)&&r.push(e)}),r}function g(t,e,n,r){var i=[];return t(e,function(t,o){P(t=n.call(r||e,t,o))?p(t,function(t){i.push(t)}):t!=lt&&i.push(t)}),i}function v(t){var e=0;return m(t,function(t){e++}),e}function y(t){var e=[];return m(t,function(t){e.push(t)}),e}function b(t,e,n){var r=[];return p(t,function(i,o){r.push(e.call(n||t,i,o))}),r}function w(t,e){var n={};return p(t,function(t,r){n[t]=e}),n}function $(t,e){var n=e||{};for(var r in t)n[r]=t[r];return n}function T(t,e){for(var n=e,r=0;r<t.length;r++)n=$(t[r],n);return n}function M(t){return B(t)?t:function(e,n){if(t===e)return n}}function E(t,e,n){return e==lt?n:e<0?Math.max(t.length+e,0):Math.min(t.length,e)}function F(t,e,n,r){for(var i,o=M(e),a=E(t,r,t.length),u=E(t,n,0);u<a;u++)if((i=o.call(t,t[u],u))!=lt)return i}function x(t,e,n){var r=[];if(t)for(var i=E(t,n,t.length),o=E(t,e,0);o<i;o++)r.push(t[o]);return r}function O(t){return b(t,f)}function j(t,e){var n,r=B(t)?t():t,i=B(e)?e():e;return r==i||r!=lt&&i!=lt&&(c(r)||c(i)?u(r)&&u(i)&&+r==+i:P(r)?r.length==i.length&&!F(r,function(t,e){if(!j(t,i[e]))return!0}):!P(i)&&(n=y(r)).length==v(i)&&!F(n,function(t){if(!j(r[t],i[t]))return!0}))}function A(t,e,n){if(B(t))return t.apply(n&&e,b(n||e,f))}function R(t,e,n){return b(t,function(t){return A(t,e,n)})}function L(t){return\"\\\\\\\\u\"+(\"0000\"+t.charCodeAt(0).toString(16)).slice(-4)}function S(t){return l(t,/[\\\\x00-\\\\x1f\\'\"\\\\u2028\\\\u2029]/g,L)}function _(t,e){return t.split(e)}function C(t,e){if(dt[t])return dt[t];var n=\"with(_.isObject(obj)?obj:{}){\"+b(_(t,/{{|}}}?/g),function(t,e){var n,r=h(t),i=l(r,/^{/),o=r==i?\"esc(\":\"\";return e%2?(n=/^each\\\\b(\\\\s+([\\\\w_]+(\\\\s*,\\\\s*[\\\\w_]+)?)\\\\s*:)?(.*)/.exec(i))?\"each(\"+(h(n[4])?n[4]:\"this\")+\", function(\"+n[2]+\"){\":(n=/^if\\\\b(.*)/.exec(i))?\"if(\"+n[1]+\"){\":(n=/^else\\\\b\\\\s*(if\\\\b(.*))?/.exec(i))?\"}else \"+(n[1]?\"if(\"+n[2]+\")\":\"\")+\"{\":(n=/^\\\\/(if)?/.exec(i))?n[1]?\"}\\\\n\":\"});\\\\n\":(n=/^(var\\\\s.*)/.exec(i))?n[1]+\";\":(n=/^#(.*)/.exec(i))?n[1]:(n=/(.*)::\\\\s*(.*)/.exec(i))?\"print(\"+o+\\'_.formatValue(\"\\'+S(n[2])+\\'\",\\'+(h(n[1])?n[1]:\"this\")+(o&&\")\")+\"));\\\\n\":\"print(\"+o+(h(i)?i:\"this\")+(o&&\")\")+\");\\\\n\":t?\\'print(\"\\'+S(t)+\\'\");\\\\n\\':void 0}).join(\"\")+\"}\",r=new Function(\"obj\",\"each\",\"esc\",\"print\",\"_\",n),i=function(t,n){var i=[];return r.call(n||t,t,function(t,e){P(t)?p(t,function(t,n){e.call(t,t,n)}):m(t,function(t,n){e.call(n,t,n)})},e||f,function(){A(i.push,i,arguments)},rt),i.join(\"\")};return gt.push(i)>pt&&delete dt[gt.shift()],dt[t]=i}function I(t){return l(t,/[<>\\'\"&]/g,function(t){return\"&#\"+t.charCodeAt(0)+\";\"})}function N(t,e){return C(t,I)(e)}function D(t){return function(e,n,r){return t(this,e,n,r)}}function B(t){return\"function\"==typeof t&&!t.item}function P(t){return t&&t.length!=lt&&!r(t)&&!o(t)&&!B(t)&&t!==ot}function H(t){return parseFloat(l(t,/^[^\\\\d-]+/))}function k(t){return t[at]=t[at]||++ct}function q(t,e){var n,r=[],i={};return Q(t,function(t){Q(e(t),function(t){i[n=k(t)]||(r.push(t),i[n]=!0)})}),r}function U(t,e){var n={$position:\"absolute\",$visibility:\"hidden\",$display:\"block\",$height:lt},r=t.get(n),i=t.set(n).get(\"clientHeight\");return t.set(r),i*e+\"px\"}function Y(t,n,i,o,a){return B(n)?this.on(lt,t,n,i,o):r(o)?this.on(t,n,i,lt,o):this.each(function(r,u){Q(t?G(t,r):r,function(t){Q(e(n).split(/\\\\s/),function(e){function n(e,n,r){var f=!a,l=a?r:t;if(a)for(var h=Z(a,t);l&&l!=t&&!(f=h(l));)l=l.parentNode;return!f||s!=e||i.apply(X(l),o||[n,u])&&\"?\"==c||\"|\"==c}function r(t){n(s,t,t.target)||(t.preventDefault(),t.stopPropagation())}var s=l(e,/[?|]/g),c=l(e,/[^?|]/g),h=(\"blur\"==s||\"focus\"==s)&&!!a,m=ct++;t.addEventListener(s,r,h),t.M||(t.M={}),t.M[m]=n,i.M=g(Q,[i.M,function(){t.removeEventListener(s,r,h),delete t.M[m]}],f)})})})}function K(t){R(t.M),t.M=lt}function V(t){ft?ft.push(t):setTimeout(t,0)}function z(t,e,n){return G(t,e,n)[0]}function W(t,e,n){var r=X(document.createElement(t));return P(e)||e!=lt&&!i(e)?r.add(e):r.set(e).add(n)}function J(t){return g(Q,t,function(t){var e;return P(t)?J(t):o(t)?(e=t.cloneNode(!0),e.removeAttribute&&e.removeAttribute(\"id\"),e):t})}function X(t,e,n){return B(t)?V(t):new nt(G(t,e,n))}function G(t,e,n){function i(t){return P(t)?g(Q,t,i):t}function a(t){return d(g(Q,t,i),function(t){for(var r=t;r=r.parentNode;)if(r==e[0]||n)return r==e[0]})}return e?1!=(e=G(e)).length?q(e,function(e){return G(t,e,n)}):r(t)?1!=o(e[0])?[]:n?a(e[0].querySelectorAll(t)):e[0].querySelectorAll(t):a(t):r(t)?document.querySelectorAll(t):g(Q,t,i)}function Z(t,e){function n(t,e){var n=RegExp(\"(^|\\\\\\\\s+)\"+t+\"(?=$|\\\\\\\\s)\",\"i\");return function(r){return!t||n.test(r[e])}}var i={},u=i;if(B(t))return t;if(a(t))return function(e,n){return n==t};if(!t||\"*\"==t||r(t)&&(u=/^([\\\\w-]*)\\\\.?([\\\\w-]*)$/.exec(t))){var s=n(u[1],\"tagName\"),c=n(u[2],\"className\");return function(t){return 1==o(t)&&s(t)&&c(t)}}return e?function(n){return X(t,e).find(n)!=lt}:(X(t).each(function(t){i[k(t)]=!0}),function(t){return i[k(t)]})}function Q(t,e){return P(t)?p(t,e):t!=lt&&e(t,0),t}function tt(){this.state=null,this.values=[],this.parent=null}function et(){var t=[],e=arguments,n=e.length,r=0,o=0,a=new tt;a.errHandled=function(){o++,a.parent&&a.parent.errHandled()};var u=a.fire=function(e,n){return null==a.state&&null!=e&&(a.state=!!e,a.values=P(n)?n:[n],setTimeout(function(){p(t,function(t){t()})},0)),a};p(e,function c(t,e){try{t.then?t.then(function(t){var o;(i(t)||B(t))&&B(o=t.then)?c(t,e):(a.values[e]=O(arguments),++r==n&&u(!0,n<2?a.values[e]:a.values))},function(t){a.values[e]=O(arguments),u(!1,n<2?a.values[e]:[a.values[e][0],a.values,e])}):t(function(){u(!0,O(arguments))},function(){u(!1,O(arguments))})}catch(o){u(!1,[o,a.values,e])}}),a.stop=function(){return p(e,function(t){t.stop&&t.stop()}),a.stop0&&A(a.stop0)};var s=a.then=function(e,n){var r=et(),u=function(){try{var t=a.state?e:n;B(t)?!function s(t){try{var e,n=0;if((i(t)||B(t))&&B(e=t.then)){if(t===r)throw new TypeError;e.call(t,function(t){n++||s(t)},function(t){n++||r.fire(!1,[t])}),r.stop0=t.stop}else r.fire(!0,[t])}catch(a){if(!n++&&(r.fire(!1,[a]),!o))throw a}}(A(t,it,a.values)):r.fire(a.state,a.values)}catch(u){if(r.fire(!1,[u]),!o)throw u}};return B(n)&&a.errHandled(),r.stop0=a.stop,r.parent=a,null!=a.state?setTimeout(u,0):t.push(u),r};return a.always=function(t){return s(t,t)},a.error=function(t){return s(0,t)},a}function nt(t,e){var n=this,r=0;if(t)for(var i=0,o=t.length;i<o;i++){var a=t[i];if(e&&P(a))for(var u=0,s=a.length;u<s;u++)n[r++]=a[u];else n[r++]=a}else n[r++]=e;n.length=r,n._=!0}function rt(){return new nt(arguments,(!0))}var it,ot=window,at=\"Nia\",ut={},st={},ct=1,ft=/^[ic]/.test(document.readyState)?lt:[],lt=null,ht=_(\"January,February,March,April,May,June,July,August,September,October,November,December\",/,/g),mt=(b(ht,t),_(\"Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday\",/,/g)),pt=(b(mt,t),_(\"am,pm\",/,/g),_(\"am,am,am,am,am,am,am,am,am,am,am,am,pm,pm,pm,pm,pm,pm,pm,pm,pm,pm,pm,pm\",/,/g),99),dt={},gt=[];return $({each:D(p),equals:D(j),find:D(F),dummySort:0,select:function(t,e){return X(t,this,e)},get:function(t,e){var n=this,i=n[0];if(i){if(r(t)){var o,a=/^(\\\\W*)(.*)/.exec(l(t,/^%/,\"@data-\")),u=a[1];return o=st[u]?st[u](this,a[2]):\"$\"==t?n.get(\"className\"):\"$$\"==t?n.get(\"@style\"):\"$$slide\"==t?n.get(\"$height\"):\"$$fade\"==t||\"$$show\"==t?\"hidden\"==n.get(\"$visibility\")||\"none\"==n.get(\"$display\")?0:\"$$fade\"==t?isNaN(n.get(\"$opacity\",!0))?1:n.get(\"$opacity\",!0):1:\"$\"==u?ot.getComputedStyle(i,lt).getPropertyValue(l(a[2],/[A-Z]/g,function(t){return\"-\"+t.toLowerCase()})):\"@\"==u?i.getAttribute(a[2]):i[a[2]],e?H(o):o}var s={};return(P(t)?Q:m)(t,function(t){s[t]=n.get(t,e)}),s}},set:function(t,e){var n=this;if(e!==it){var i=/^(\\\\W*)(.*)/.exec(l(l(t,/^\\\\$float$/,\"cssFloat\"),/^%/,\"@data-\")),o=i[1];ut[o]?ut[o](this,i[2],e):\"$$fade\"==t?this.set({$visibility:e?\"visible\":\"hidden\",$opacity:e}):\"$$slide\"==t?n.set({$visibility:e?\"visible\":\"hidden\",$overflow:\"hidden\",$height:/px/.test(e)?e:function(t,n,r){return U(X(r),e)}}):\"$$show\"==t?e?n.set({$visibility:e?\"visible\":\"hidden\",$display:\"\"}).set({$display:function(t){return\"none\"==t?\"block\":t}}):n.set({$display:\"none\"}):\"$$\"==t?n.set(\"@style\",e):Q(this,function(n,r){var a=B(e)?e(X(n).get(t),r,n):e;\"$\"==o?i[2]?n.style[i[2]]=a:Q(a&&a.split(/\\\\s+/),function(t){var e=l(t,/^[+-]/);/^\\\\+/.test(t)?n.classList.add(e):/^-/.test(t)?n.classList.remove(e):n.classList.toggle(e)}):\"$$scrollX\"==t?n.scroll(a,X(n).get(\"$$scrollY\")):\"$$scrollY\"==t?n.scroll(X(n).get(\"$$scrollX\"),a):\"@\"==o?a==lt?n.removeAttribute(i[2]):n.setAttribute(i[2],a):n[i[2]]=a})}else r(t)||B(t)?n.set(\"$\",t):m(t,function(t,e){n.set(t,e)});return n},add:function(t,e){return this.each(function(n,r){function i(t){if(P(t))Q(t,i);else if(B(t))i(t(n,r));else if(t!=lt){var u=o(t)?t:document.createTextNode(t);a?a.parentNode.insertBefore(u,a.nextSibling):e?e(u,n,n.parentNode):n.appendChild(u),a=u}}var a;i(r&&!B(t)?J(t):t)})},on:Y,trigger:function(t,e){return this.each(function(n,r){for(var i=!0,o=n;o&&i;)m(o.M,function(r,o){i=i&&o(t,e,n)}),o=o.parentNode})},ht:function(t,e){var n=arguments.length>2?T(x(arguments,1)):e;return this.set(\"innerHTML\",B(t)?t(n):/{{/.test(t)?N(t,n):/^#\\\\S+$/.test(t)?N(z(t).text,n):t)}},nt.prototype),$({request:function(t,n,r,i){var o,a=i||{},u=0,s=et(),c=r&&r.constructor==a.constructor;try{s.xhr=o=new XMLHttpRequest,s.stop0=function(){o.abort()},c&&(r=g(m,r,function(t,e){return g(Q,e,function(e){return encodeURIComponent(t)+(e!=lt?\"=\"+encodeURIComponent(e):\"\")})}).join(\"&\")),r==lt||/post/i.test(t)||(n+=\"?\"+r,r=lt),o.open(t,n,!0,a.user,a.pass),c&&/post/i.test(t)&&o.setRequestHeader(\"Content-Type\",\"application/x-www-form-urlencoded\"),m(a.headers,function(t,e){o.setRequestHeader(t,e)}),m(a.xhr,function(t,e){o[t]=e}),o.onreadystatechange=function(){4!=o.readyState||u++||(o.status>=200&&o.status<300?s.fire(!0,[o.responseText,o]):s.fire(!1,[o.status,o.responseText,o]))},o.send(r)}catch(f){u||s.fire(!1,[0,lt,e(f)])}return s},ready:V,off:K,wait:function(t,e){var n=et(),r=setTimeout(function(){n.fire(!0,e)},t);return n.stop0=function(){n.fire(!1),clearTimeout(r)},n}},X),$({each:p,toObject:w,find:F,equals:j,copyObj:$,extend:function(t){return T(x(arguments,1),t)},eachObj:m,isObject:i,format:function(t,e,n){return C(t,n)(e)},template:C,formatHtml:N,promise:et},rt),document.addEventListener(\"DOMContentLoaded\",function(){R(ft),ft=lt},!1),{HTML:function(){var t=W(\"div\");return rt(A(t.ht,t,arguments)[0].childNodes)},_:rt,$:X,$$:z,M:nt,getter:st,setter:ut}}()},{}]},{},[1])</script></body></html>';\n},{}],\"pebble-clay\":[function(t,e,n){\"use strict\";function r(t,e,n){function r(){i.meta={activeWatchInfo:Pebble.getActiveWatchInfo&&Pebble.getActiveWatchInfo(),accountToken:Pebble.getAccountToken(),watchToken:Pebble.getWatchToken(),userData:s(n.userData||{})}}function o(t,e,n){Array.isArray(t)?t.forEach(function(t){o(t,e,n)}):\"section\"===t.type?o(t.items,e,n):e(t)&&n(t)}var i=this;if(!Array.isArray(t))throw new Error(\"config must be an Array\");if(e&&\"function\"!=typeof e)throw new Error('customFn must be a function or \"null\"');n=n||{},i.config=s(t),i.customFn=e||function(){},i.components={},i.meta={activeWatchInfo:null,accountToken:\"\",watchToken:\"\",userData:{}},i.version=c,n.autoHandleEvents!==!1&&\"undefined\"!=typeof Pebble?(Pebble.addEventListener(\"showConfiguration\",function(){r(),Pebble.openURL(i.generateUrl())}),Pebble.addEventListener(\"webviewclosed\",function(t){t&&t.response&&Pebble.sendAppMessage(i.getSettings(t.response),function(){console.log(\"Sent config data to Pebble\")},function(t){console.log(\"Failed to send config data!\"),console.log(JSON.stringify(t))})})):\"undefined\"!=typeof Pebble&&Pebble.addEventListener(\"ready\",function(){r()}),o(i.config,function(t){return a[t.type]},function(t){i.registerComponent(a[t.type])}),o(i.config,function(t){return t.appKey},function(){throw new Error(\"appKeys are no longer supported. Please follow the migration guide to upgrade your project\")})}var o=t(\"./tmp/config-page.html\"),i=t(\"tosource\"),a=t(\"./src/scripts/components\"),s=t(\"deepcopy/build/deepcopy.min\"),c=t(\"./package.json\").version,l=t(\"message_keys\");r.prototype.registerComponent=function(t){this.components[t.name]=t},r.prototype.generateUrl=function(){var t={},e=!Pebble||\"pypkjs\"===Pebble.platform,n=e?\"$$$RETURN_TO$$$\":\"pebblejs://close#\";try{t=JSON.parse(localStorage.getItem(\"clay-settings\"))||{}}catch(a){console.error(a.toString())}var s=o.replace(\"$$RETURN_TO$$\",n).replace(\"$$CUSTOM_FN$$\",i(this.customFn)).replace(\"$$CONFIG$$\",i(this.config)).replace(\"$$SETTINGS$$\",i(t)).replace(\"$$COMPONENTS$$\",i(this.components)).replace(\"$$META$$\",i(this.meta));return e?r.encodeDataUri(s,\"http://clay.pebble.com.s3-website-us-west-2.amazonaws.com/#\"):r.encodeDataUri(s)},r.prototype.getSettings=function(t,e){var n={};t=t.match(/^\\{/)?t:decodeURIComponent(t);try{n=JSON.parse(t)}catch(o){throw new Error(\"The provided response was not valid JSON\")}var i={};return Object.keys(n).forEach(function(t){\"object\"==typeof n[t]&&n[t]?i[t]=n[t].value:i[t]=n[t]}),localStorage.setItem(\"clay-settings\",JSON.stringify(i)),e===!1?n:r.prepareSettingsForAppMessage(n)},r.prototype.setSettings=function(t,e){var n={};try{n=JSON.parse(localStorage.getItem(\"clay-settings\"))||{}}catch(r){console.error(r.toString())}if(\"object\"==typeof t){var o=t;Object.keys(o).forEach(function(t){n[t]=o[t]})}else n[t]=e;localStorage.setItem(\"clay-settings\",JSON.stringify(n))},r.encodeDataUri=function(t,e){return e=\"undefined\"!=typeof e?e:\"data:text/html;charset=utf-8,\",e+encodeURIComponent(t)},r.prepareForAppMessage=function(t){function e(t,e){return Math.floor(t*Math.pow(10,e||0))}var n;return Array.isArray(t)?(n=[],t.forEach(function(t,e){n[e]=r.prepareForAppMessage(t)})):n=\"object\"==typeof t&&t?\"number\"==typeof t.value?e(t.value,t.precision):Array.isArray(t.value)?t.value.map(function(n){return\"number\"==typeof n?e(n,t.precision):n}):r.prepareForAppMessage(t.value):\"boolean\"==typeof t?t?1:0:t,n},r.prepareSettingsForAppMessage=function(t){var e={};Object.keys(t).forEach(function(n){var r=t[n],o=n.match(/(.+?)(?:\\[(\\d*)\\])?$/);if(!o[2])return void(e[n]=r);var i=parseInt(o[2],10);n=o[1],\"undefined\"==typeof e[n]&&(e[n]=[]),e[n][i]=r});var n={};return Object.keys(e).forEach(function(t){var o=l[t],i=r.prepareForAppMessage(e[t]);i=Array.isArray(i)?i:[i],i.forEach(function(t,e){n[o+e]=t})}),Object.keys(n).forEach(function(t){if(Array.isArray(n[t]))throw new Error('Clay does not support 2 dimensional arrays for item values. Make sure you are not attempting to use array syntax (eg: \"myMessageKey[2]\") in the messageKey for components that return an array, such as a checkboxgroup')}),n},e.exports=r},{\"./package.json\":7,\"./src/scripts/components\":13,\"./tmp/config-page.html\":42,\"deepcopy/build/deepcopy.min\":3,message_keys:void 0,tosource:6}]},{},[\"pebble-clay\"])(\"pebble-clay\")});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/pebble-clay/dist/js/index.js\n// module id = 3\n// module chunks = 0","module.exports = function(module) {\n    switch(module) {\n        case \"message_keys\": return require(\"message_keys\");\n    }\n    throw new Error('Module not found: ' + module);\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// /home/louis/.pebble-sdk/SDKs/4.3/sdk-core/pebble/common/include/_message_key_wrapper.js\n// module id = 4\n// module chunks = 0","module.exports = {\"JSReady\":10008,\"accuracy\":10002,\"altitude\":10003,\"altitude_accuracy\":10004,\"latitude\":10000,\"longitude\":10001,\"speed\":10005,\"status\":10007,\"timestamp\":10006}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./build/js/message_keys.json\n// module id = 5\n// module chunks = 0","module.exports = [\n  {\n    \"type\": \"heading\",\n    \"defaultValue\": \"Bike Companion Configuration\"\n  },\n  {\n    \"type\": \"text\",\n    \"defaultValue\": \"This is not used for now, no action will be executed with these info.\"\n  },\n  {\n  \"type\": \"section\",\n    \"items\":\n    [\n      {\n        \"type\": \"heading\",\n        \"defaultValue\": \"Your synology account\"\n      },\n      {\n        \"type\": \"input\",\n        \"messageKey\": \"username\",\n        \"label\": \"Your DSM Username\",\n        \"attributes\":\n        {\n           \"maxlength\":40\n        }\n      },\n      {\n        \"type\": \"input\",\n        \"messageKey\": \"password\",\n        \"label\": \"Your DSM Password\",\n        \"attributes\":\n        {\n          \"type\": \"password\",\n          \"maxlength\":40\n        }\n      },\n      {\n        \"type\": \"input\",\n        \"messageKey\": \"server\",\n        \"label\": \"Your DSM Server\",\n        \"attributes\":\n        {\n          \"type\": \"url\",\n          \"maxlength\":255\n        }\n      }\n    ]\n  },\n  {\n    \"type\": \"submit\",\n    \"defaultValue\": \"Save Settings\"\n  }\n];\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/pkjs/config.js\n// module id = 6\n// module chunks = 0"],"sourceRoot":""}
2 1
\ No newline at end of file
2
+{"version":3,"sources":["webpack/bootstrap e9ecc99bde768a53fe75","/home/louis/.pebble-sdk/SDKs/4.3/sdk-core/pebble/common/include/_pkjs_shared_additions.js","./src/pkjs/index.js","./~/pebble-clay/dist/js/index.js","/home/louis/.pebble-sdk/SDKs/4.3/sdk-core/pebble/common/include/_message_key_wrapper.js","./build/js/message_keys.json","./src/pkjs/config.js"],"names":[],"mappings":";AAAA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,uBAAe;AACf;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;;;;;;;;;;;;;;ACtCA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,MAAK;AACL;;AAEA,EAAC;;;;;;;ACnBD;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAc;AACd,gBAAe;AACf;AACA;AACA,IAAG;AACH;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;AACA,gCAA+B,oBAAoB;AACnD;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,6EAA4E;AAC5E,qDAAoD;AACpD;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,MAAK;AACL;AACA,MAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,SAAQ,EAAE;AACV;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,kBAAiB;AACjB;AACA,kBAAiB;AACjB;AACA,cAAa;AACb;AACA;AACA,YAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAa;AACb;AACA,cAAa;AACb;AACA;AACA,QAAO;AACP;AACA;AACA,MAAK;AACL;AACA;AACA;;AAEA,EAAC;;AAED;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAG;;;AAGH;;AAEA;AACA;AACA;AACA;AACA,0BAAyB,eAAe;;AAExC;AACA,EAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAY;AACZ;AACA;AACA;AACA;AACA;AACA,aAAY;AACZ;AACA;AACA;;AAEA,EAAC;;;;;;;yBC/VD;AACA,cAAa,2BAA2E,2DAA2D,KAAK,MAAM,2HAA2H,YAAY,MAAM,yBAAyB,gBAAgB,UAAU,UAAU,0CAA0C,8BAAwB,oBAAoB,8CAA8C,kCAAkC,YAAY,YAAY,mCAAmC,iBAAiB,gBAAgB,sBAAsB,oBAAoB,kDAAkD,WAAW,YAAY,SAAS,EAAE,mBAAmB,aAAa,cAAc,eAAe,2EAA2E,sCAAsC,cAAc,yBAAyB,cAAc,2BAA2B,oCAAoC,QAAQ,YAAY,IAAI,uJAAuJ,6LAA6L,cAAc,kDAAkD,kBAAkB,mBAAmB,IAAI,kDAAkD,kBAAkB,cAAc,uDAAuD,IAAI,gCA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","file":"pebble-js-app.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId])\n \t\t\treturn installedModules[moduleId].exports;\n\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\texports: {},\n \t\t\tid: moduleId,\n \t\t\tloaded: false\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.loaded = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(0);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap e9ecc99bde768a53fe75","(function(p) {\n  if (!p === undefined) {\n    console.error('Pebble object not found!?');\n    return;\n  }\n\n  // Aliases:\n  p.on = p.addEventListener;\n  p.off = p.removeEventListener;\n\n  // For Android (WebView-based) pkjs, print stacktrace for uncaught errors:\n  if (typeof window !== 'undefined' && window.addEventListener) {\n    window.addEventListener('error', function(event) {\n      if (event.error && event.error.stack) {\n        console.error('' + event.error + '\\n' + event.error.stack);\n      }\n    });\n  }\n\n})(Pebble);\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// /home/louis/.pebble-sdk/SDKs/4.3/sdk-core/pebble/common/include/_pkjs_shared_additions.js\n// module id = 1\n// module chunks = 0","var Clay = require('pebble-clay');\nvar clayConfig = require('./config');\nvar clay = new Clay(clayConfig);\n\nvar messageKeys = require('message_keys');\n\nvar message;\n\nvar locationInterval;\nvar locationOptions = {\n  'enableHighAccuracy': true, // default = false (quick and dirty mode), can be true (more accurate but need more power and time)\n  'timeout': 2000, //2s timeout\n  'maximumAge': 1000 // 1s cache\n};\n\n// Store location in Pebble app local storage\n//\nfunction storeLocation(position) {\n  var latitude = position.coords.latitude;\n  var longitude = position.coords.longitude;\n  var timestamp = position.timestamp;\n  localStorage.setItem(\"latitude\", latitude);\n  localStorage.setItem(\"longitude\", longitude);\n  localStorage.setItem(\"timestamp\", timestamp);\n  // console.log(\"Stored location \" + position.coords.latitude + ',' + position.coords.longitude);\n}\n\n// Get location from Pebble app local storage\n//\nfunction getLocation() {\n  if (localStorage.getItem(\"latitude\") || localStorage.getItem(\"longitude\") || localStorage.getItem(\"timestamp\")) {\n    var la = localStorage.getItem(\"latitude\");\n    var lo = localStorage.getItem(\"longitude\");\n    var ti = localStorage.getItem(\"timestamp\");\n    var co = { \"latitude\": la, \"longitude\": lo };\n    var pos = { \"coords\": co, \"timestamp\": ti };\n    // console.log(\"Stored location \" + pos.co.la + ',' + pos.co.lo);\n    return pos;\n  } else {\n    return null;\n  }\n}\n\n\n// Calculate the distance from 2 geoloc in degrees.\n// IMPORTANT : this is a calculation from 2D projection, altitude is not involved\n//\nfunction distance_on_geoid(lat1, lon1, lat2, lon2) {\n  // Convert degrees to radians\n  lat1 = lat1 * Math.PI / 180.0;\n  lon1 = lon1 * Math.PI / 180.0;\n  lat2 = lat2 * Math.PI / 180.0;\n  lon2 = lon2 * Math.PI / 180.0;\n  // radius of earth in metres\n  r = 6378100;\n  // P\n  rho1 = r * Math.cos(lat1);\n  z1 = r * Math.sin(lat1);\n  x1 = rho1 * Math.cos(lon1);\n  y1 = rho1 * Math.sin(lon1);\n  // Q\n  rho2 = r * Math.cos(lat2);\n  z2 = r * Math.sin(lat2);\n  x2 = rho2 * Math.cos(lon2);\n  y2 = rho2 * Math.sin(lon2);\n  // Dot product\n  dot = (x1 * x2 + y1 * y2 + z1 * z2);\n  cos_theta = dot / (r * r);\n  theta = Math.acos(cos_theta);\n  // Distance in Metres\n  return r * theta;\n}\n\n// Calculate speed from 2 geoloc point arrays (with lat,long,timestamp)\n//\nfunction speed_from_distance_and_time(p1, p2) {\n  dist = distance_on_geoid(p1.coords.latitude, p1.coords.longitude, p2.coords.latitude, p2.coords.longitude);\n  // timestamp is in milliseconds\n  time_s = (p2.timestamp - p1.timestamp) / 1000.0;\n  speed_mps = dist / time_s;\n  speed_kph = (speed_mps * 3600.0) / 1000.0;\n  return speed_kph;\n}\n\n// split float number into an array of int (null returned instead of 0 for decimal)\n//\nfunction splitFloatNumber(num) {\n  const intStr = num.toString().split('.')[0];\n  const decimalStr = num.toString().split('.')[1];\n  return [Number(intStr), Number(decimalStr)];\n}\n\n// Build GPX headers\n//\nfunction GPXHeadersBuilder(timestamp, name, type) {\n  var headers = '<?xml version=\"1.0\" encoding=\"UTF-8\"?><gpx creator=\"Pebble with barometer\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd\" version=\"1.1\" xmlns=\"http://www.topografix.com/GPX/1/1\"><metadata><time>' + timestamp + '</time></metadata><trk><name>' + name + '</name><type>' + type + '</type><trkseg>';\n  var ret = localStorage.setItem(\"GPX\", headers);\n  return true;\n}\n\n// Build GPX footer\n//\nfunction GPXtrkptBuilder(lat, lon, ele, timestamp) {\n  var GPX = localStorage.getItem(\"GPX\");\n  var trkpt = '<trkpt lat=\"' + lat + '\" lon=\"' + lon + '\"><ele>' + ele + '</ele><time>' + timestamp + '</time></trkpt>';\n  var ret = localStorage.setItem(\"GPX\", GPX + trkpt);\n  return true;\n}\n\n// Build GPX footer\n//\nfunction GPXfooterBuilder() {\n  var GPX = localStorage.getItem(\"GPX\");\n  var footer = '</trkseg></trk></gpx>';\n  var ret = localStorage.setItem(\"GPX\", GPX + footer);\n  return true;\n}\n\n// Adding leading characters to string for nice displays\n//\nfunction padStart(string, max_length, padding) {\n  if (string.length > max_length) {\n    return string;\n  } else {\n    var new_str = string;\n    for (index = string.length; index < max_length; index++) {\n      new_str = \"0\" + new_str;\n    }\n    return new_str;\n  }\n}\n\n// called in case of successful geoloc gathering and sends the coordinate to watch\n//\nfunction locationSuccess(new_pos) {\n  var prev_pos = getLocation();\n  storeLocation(new_pos);\n  if (prev_pos === null) {\n    GPXHeadersBuilder(timestampISO = new Date(new_pos.timestamp).toISOString(), \"test\", \"18\");\n    return null;\n  } else {\n    var speed = speed_from_distance_and_time(prev_pos, new_pos);\n\n    // Prepare display on watch\n    // now it's only raw data\n    //init strings\n    var latitudeString = \"\";\n    var longitudeString = \"\";\n    var accuracyString = \"\";\n    var altitudeString = \"\";\n    //var altitudeAccuracyString = \"\";\n    //var timestampString = \"\";\n    var speedString = \"\";\n\n    //formating for precision and max size\n    latitudeString = new_pos.coords.latitude.toString().substring(0, 12);\n    longitudeString = new_pos.coords.longitude.toString().substring(0, 12);\n    accuracyString = new_pos.coords.accuracy.toString().substring(0, 4);\n    altitudeString = splitFloatNumber(new_pos.coords.altitude)[0].toString().substring(0, 5);\n    timestampISO = new Date(new_pos.timestamp).toISOString();\n    speedString = speed.toString().substring(0, 5);\n\n    if (speedString == \"NaN\") {\n      speedString = \"---\";\n    }\n    // logging\n    /*console.log('Your current position at ' + timestampString + ' is:');\n    console.log('Coordinates: ' + latitudeString+ ', ' + longitudeString+' ; with a ' + accuracyString + 'm accuracy');\n    console.log('Altitude: ' + altitudeString + 'm ; with a ' + altitudeAccuracyString + 'm accuracy');\n    console.log('Speed: ' + speedString + ' km/h.');\n    */\n    GPXtrkptBuilder(latitudeString, longitudeString, altitudeString, timestampISO);\n\n    console.log('GPX: ' + localStorage.getItem(\"GPX\"));\n\n    // Build message\n    message = \"OK\";\n    var dict = {\n      //'latitude': padStart(latitudeString, 12, '0'),\n      //'longitude': padStart(longitudeString, 12, '0'),\n      'accuracy': accuracyString,\n      'altitude': altitudeString,\n      //'altitude_accuracy': padStart(altitudeAccuracyString, 3, '0'),\n      //'timestamp': padStart(timestampString, 13, '0'),\n      'speed': speedString,\n      'status': message\n    };\n    //console.log('Message to send: ' + JSON.stringify(dict));\n\n    // Send the message\n    Pebble.sendAppMessage(dict, function () {\n      console.log('Message sent successfully: ' + JSON.stringify(dict));\n    }, function (e) {\n      console.log('Message (' + JSON.stringify(dict) + ') failed: ' + JSON.stringify(e));\n    });\n  }\n}\n\nfunction locationError(err) {\n  console.warn('location error (' + err.code + '): ' + err.message);\n  /* // No app when no location\n       Pebble.sendAppMessage({\n           'WEATHER_CITY_KEY': 'Loc Unavailable',\n           'WEATHER_TEMPERATURE_KEY': 'N/A'\n       });*/\n}\n\nfunction get_coordinate() {\n  console.log('---- get_coordinate');\n  navigator.geolocation.getCurrentPosition(locationSuccess, locationError, locationOptions);\n\n}\n\n/*\nfunction switch_home(bool) {\n  var response;\n  console.log('---- authenticate');\n  if (sid != \"\"){\n    status = \"\";\n    console.log('---- get_status');\n    if (localStorage.getItem('username')  && localStorage.getItem('password') && localStorage.getItem('server') ){\n      var username=localStorage.getItem('username');\n      var password=localStorage.getItem('password');\n      var server=localStorage.getItem('server');\n      var xhr = new XMLHttpRequest();\n\n      url = server + \"/webapi/entry.cgi?api=SYNO.SurveillanceStation.HomeMode&version=1&method=GetInfo&_sid=\"+sid;\n\n      xhr.open(\"GET\", url,false);\n      xhr.send();\n\n      if(xhr.status == 200) {\n        response = JSON.parse(xhr.responseText);\n        if (response.success == true){\n          status = response.data.on;\n          console.log('------ status:'+status);\n          var message;\n          var dict;\n          if ( status != bool){\n            console.log('---- switching home mode to '+ bool);\n            url = server + \"/webapi/entry.cgi?api=SYNO.SurveillanceStation.HomeMode&version=1&method=Switch&on=\"+bool+\"&_sid=\"+sid;\n\n            xhr.open(\"GET\", url,false);\n            xhr.send();\n\n            if(xhr.status == 200) {\n              response = JSON.parse(xhr.responseText);\n              if (response.success == true){\n                status=bool;\n                switch (status) {\n                  case true:\n                    message = \"You just set Home mode ON\";\n                    break;\n                  case false:\n                    message = \"You just set Home mode OFF\";\n                    break;\n                  default:\n                    message = \"something happened, try again !\";\n                }\n                // Build message\n                dict = {\n                  'status': message,\n                };\n\n                // Send the message\n                Pebble.sendAppMessage(dict, function(e) {\n                  console.log('sent');\n                }, function() {\n                  console.log('failed');\n                });\n              }\n            }else {\n              console.log('------Request returned error code ' + xhr.status.toString());\n            }\n          }else{\n            console.log('---- nothing to do, status already '+status);\n            switch (status) {\n              case true:\n                message = \"Your Home Mode is already ON\";\n                break;\n              case false:\n                message = \"Your Home Mode is already OFF\";\n                break;\n              default:\n                message = \"something happened, try again !\";\n            }\n            // Build message\n            dict = {\n              'status': message,\n            };\n\n            // Send the message\n            Pebble.sendAppMessage(dict, function(e) {\n              console.log('sent');\n            }, function() {\n              console.log('failed');\n            });\n          }\n        }\n      }else {\n        console.log('------Request returned error code ' + xhr.status.toString());\n      }\n    }else{\n      Pebble.showSimpleNotificationOnPebble(\"DSCam H-S\", \"You need to set your Synology account and server.\");\n    }\n   }\n\n}*/\n\nfunction init() {\n  // local storage init\n  localStorage.clear();\n  // clear any other var to do\n  clearInterval(locationInterval);\n\n  console.log('--- Starting regular getCurrentPosition loop using setInterval at 1 sec');\n  locationInterval = setInterval(function () {\n    navigator.geolocation.getCurrentPosition(locationSuccess, locationError, locationOptions);\n  }, 1000);\n\n\n}\n\n// Get JS readiness events\nPebble.addEventListener('ready', function (e) {\n  console.log('PebbleKit JS is ready');\n  // Update Watch on this\n  Pebble.sendAppMessage({ 'JSReady': 1 });\n\n  init();\n});\n\n// Get AppMessage events\nPebble.addEventListener('appmessage', function (e) {\n  // Get the dictionary from the message\n  var dict = e.payload;\n  console.log(dict[0].toString());\n  switch (dict[0]) {\n    case 'get':\n      get_coordinate();\n      break;/*\n    case 'home_on':\n      switch_home(true);\n      break;\n    case 'home_off':\n      switch_home(false);\n      break;*/\n    default:\n      console.log('Sorry. I don\\'t understand your request :' + dict[0]);\n  }\n\n});\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/pkjs/index.js\n// module id = 2\n// module chunks = 0","/* Clay - https://github.com/pebble/clay - Version: 1.0.4 - Build Date: 2016-11-21T20:14:28.839Z */\n!function(t){if(\"object\"==typeof exports&&\"undefined\"!=typeof module)module.exports=t();else if(\"function\"==typeof define&&define.amd)define([],t);else{var e;e=\"undefined\"!=typeof window?window:\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:this,e.pebbleClay=t()}}(function(){var t;return function e(t,n,r){function o(a,s){if(!n[a]){if(!t[a]){var c=\"function\"==typeof require&&require;if(!s&&c)return c(a,!0);if(i)return i(a,!0);var l=new Error(\"Cannot find module '\"+a+\"'\");throw l.code=\"MODULE_NOT_FOUND\",l}var u=n[a]={exports:{}};t[a][0].call(u.exports,function(e){var n=t[a][1][e];return o(n?n:e)},u,u.exports,e,t,n,r)}return n[a].exports}for(var i=\"function\"==typeof require&&require,a=0;a<r.length;a++)o(r[a]);return o}({1:[function(t,e,n){\"use strict\";function r(t){var e=t.length;if(e%4>0)throw new Error(\"Invalid string. Length must be a multiple of 4\");return\"=\"===t[e-2]?2:\"=\"===t[e-1]?1:0}function o(t){return 3*t.length/4-r(t)}function i(t){var e,n,o,i,a,s,c=t.length;a=r(t),s=new f(3*c/4-a),o=a>0?c-4:c;var l=0;for(e=0,n=0;e<o;e+=4,n+=3)i=u[t.charCodeAt(e)]<<18|u[t.charCodeAt(e+1)]<<12|u[t.charCodeAt(e+2)]<<6|u[t.charCodeAt(e+3)],s[l++]=i>>16&255,s[l++]=i>>8&255,s[l++]=255&i;return 2===a?(i=u[t.charCodeAt(e)]<<2|u[t.charCodeAt(e+1)]>>4,s[l++]=255&i):1===a&&(i=u[t.charCodeAt(e)]<<10|u[t.charCodeAt(e+1)]<<4|u[t.charCodeAt(e+2)]>>2,s[l++]=i>>8&255,s[l++]=255&i),s}function a(t){return l[t>>18&63]+l[t>>12&63]+l[t>>6&63]+l[63&t]}function s(t,e,n){for(var r,o=[],i=e;i<n;i+=3)r=(t[i]<<16)+(t[i+1]<<8)+t[i+2],o.push(a(r));return o.join(\"\")}function c(t){for(var e,n=t.length,r=n%3,o=\"\",i=[],a=16383,c=0,u=n-r;c<u;c+=a)i.push(s(t,c,c+a>u?u:c+a));return 1===r?(e=t[n-1],o+=l[e>>2],o+=l[e<<4&63],o+=\"==\"):2===r&&(e=(t[n-2]<<8)+t[n-1],o+=l[e>>10],o+=l[e>>4&63],o+=l[e<<2&63],o+=\"=\"),i.push(o),i.join(\"\")}n.byteLength=o,n.toByteArray=i,n.fromByteArray=c;for(var l=[],u=[],f=\"undefined\"!=typeof Uint8Array?Uint8Array:Array,p=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\",d=0,h=p.length;d<h;++d)l[d]=p[d],u[p.charCodeAt(d)]=d;u[\"-\".charCodeAt(0)]=62,u[\"_\".charCodeAt(0)]=63},{}],2:[function(t,e,n){(function(e){/*!\n * The buffer module from node.js, for the browser.\n *\n * @author   Feross Aboukhadijeh <feross@feross.org> <http://feross.org>\n * @license  MIT\n */\n\"use strict\";function r(){try{var t=new Uint8Array(1);return t.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===t.foo()&&\"function\"==typeof t.subarray&&0===t.subarray(1,1).byteLength}catch(e){return!1}}function o(){return a.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function i(t,e){if(o()<e)throw new RangeError(\"Invalid typed array length\");return a.TYPED_ARRAY_SUPPORT?(t=new Uint8Array(e),t.__proto__=a.prototype):(null===t&&(t=new a(e)),t.length=e),t}function a(t,e,n){if(!(a.TYPED_ARRAY_SUPPORT||this instanceof a))return new a(t,e,n);if(\"number\"==typeof t){if(\"string\"==typeof e)throw new Error(\"If encoding is specified then the first argument must be a string\");return u(this,t)}return s(this,t,e,n)}function s(t,e,n,r){if(\"number\"==typeof e)throw new TypeError('\"value\" argument must not be a number');return\"undefined\"!=typeof ArrayBuffer&&e instanceof ArrayBuffer?d(t,e,n,r):\"string\"==typeof e?f(t,e,n):h(t,e)}function c(t){if(\"number\"!=typeof t)throw new TypeError('\"size\" argument must be a number');if(t<0)throw new RangeError('\"size\" argument must not be negative')}function l(t,e,n,r){return c(e),e<=0?i(t,e):void 0!==n?\"string\"==typeof r?i(t,e).fill(n,r):i(t,e).fill(n):i(t,e)}function u(t,e){if(c(e),t=i(t,e<0?0:0|m(e)),!a.TYPED_ARRAY_SUPPORT)for(var n=0;n<e;++n)t[n]=0;return t}function f(t,e,n){if(\"string\"==typeof n&&\"\"!==n||(n=\"utf8\"),!a.isEncoding(n))throw new TypeError('\"encoding\" must be a valid string encoding');var r=0|b(e,n);t=i(t,r);var o=t.write(e,n);return o!==r&&(t=t.slice(0,o)),t}function p(t,e){var n=e.length<0?0:0|m(e.length);t=i(t,n);for(var r=0;r<n;r+=1)t[r]=255&e[r];return t}function d(t,e,n,r){if(e.byteLength,n<0||e.byteLength<n)throw new RangeError(\"'offset' is out of bounds\");if(e.byteLength<n+(r||0))throw new RangeError(\"'length' is out of bounds\");return e=void 0===n&&void 0===r?new Uint8Array(e):void 0===r?new Uint8Array(e,n):new Uint8Array(e,n,r),a.TYPED_ARRAY_SUPPORT?(t=e,t.__proto__=a.prototype):t=p(t,e),t}function h(t,e){if(a.isBuffer(e)){var n=0|m(e.length);return t=i(t,n),0===t.length?t:(e.copy(t,0,0,n),t)}if(e){if(\"undefined\"!=typeof ArrayBuffer&&e.buffer instanceof ArrayBuffer||\"length\"in e)return\"number\"!=typeof e.length||H(e.length)?i(t,0):p(t,e);if(\"Buffer\"===e.type&&_(e.data))return p(t,e.data)}throw new TypeError(\"First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.\")}function m(t){if(t>=o())throw new RangeError(\"Attempt to allocate Buffer larger than maximum size: 0x\"+o().toString(16)+\" bytes\");return 0|t}function g(t){return+t!=t&&(t=0),a.alloc(+t)}function b(t,e){if(a.isBuffer(t))return t.length;if(\"undefined\"!=typeof ArrayBuffer&&\"function\"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(t)||t instanceof ArrayBuffer))return t.byteLength;\"string\"!=typeof t&&(t=\"\"+t);var n=t.length;if(0===n)return 0;for(var r=!1;;)switch(e){case\"ascii\":case\"latin1\":case\"binary\":return n;case\"utf8\":case\"utf-8\":case void 0:return W(t).length;case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return 2*n;case\"hex\":return n>>>1;case\"base64\":return U(t).length;default:if(r)return W(t).length;e=(\"\"+e).toLowerCase(),r=!0}}function y(t,e,n){var r=!1;if((void 0===e||e<0)&&(e=0),e>this.length)return\"\";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return\"\";if(n>>>=0,e>>>=0,n<=e)return\"\";for(t||(t=\"utf8\");;)switch(t){case\"hex\":return D(this,e,n);case\"utf8\":case\"utf-8\":return E(this,e,n);case\"ascii\":return B(this,e,n);case\"latin1\":case\"binary\":return S(this,e,n);case\"base64\":return O(this,e,n);case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return N(this,e,n);default:if(r)throw new TypeError(\"Unknown encoding: \"+t);t=(t+\"\").toLowerCase(),r=!0}}function v(t,e,n){var r=t[e];t[e]=t[n],t[n]=r}function A(t,e,n,r,o){if(0===t.length)return-1;if(\"string\"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=o?0:t.length-1),n<0&&(n=t.length+n),n>=t.length){if(o)return-1;n=t.length-1}else if(n<0){if(!o)return-1;n=0}if(\"string\"==typeof e&&(e=a.from(e,r)),a.isBuffer(e))return 0===e.length?-1:w(t,e,n,r,o);if(\"number\"==typeof e)return e=255&e,a.TYPED_ARRAY_SUPPORT&&\"function\"==typeof Uint8Array.prototype.indexOf?o?Uint8Array.prototype.indexOf.call(t,e,n):Uint8Array.prototype.lastIndexOf.call(t,e,n):w(t,[e],n,r,o);throw new TypeError(\"val must be string, number or Buffer\")}function w(t,e,n,r,o){function i(t,e){return 1===a?t[e]:t.readUInt16BE(e*a)}var a=1,s=t.length,c=e.length;if(void 0!==r&&(r=String(r).toLowerCase(),\"ucs2\"===r||\"ucs-2\"===r||\"utf16le\"===r||\"utf-16le\"===r)){if(t.length<2||e.length<2)return-1;a=2,s/=2,c/=2,n/=2}var l;if(o){var u=-1;for(l=n;l<s;l++)if(i(t,l)===i(e,u===-1?0:l-u)){if(u===-1&&(u=l),l-u+1===c)return u*a}else u!==-1&&(l-=l-u),u=-1}else for(n+c>s&&(n=s-c),l=n;l>=0;l--){for(var f=!0,p=0;p<c;p++)if(i(t,l+p)!==i(e,p)){f=!1;break}if(f)return l}return-1}function k(t,e,n,r){n=Number(n)||0;var o=t.length-n;r?(r=Number(r),r>o&&(r=o)):r=o;var i=e.length;if(i%2!==0)throw new TypeError(\"Invalid hex string\");r>i/2&&(r=i/2);for(var a=0;a<r;++a){var s=parseInt(e.substr(2*a,2),16);if(isNaN(s))return a;t[n+a]=s}return a}function x(t,e,n,r){return q(W(e,t.length-n),t,n,r)}function M(t,e,n,r){return q(Z(e),t,n,r)}function T(t,e,n,r){return M(t,e,n,r)}function R(t,e,n,r){return q(U(e),t,n,r)}function P(t,e,n,r){return q(J(e,t.length-n),t,n,r)}function O(t,e,n){return 0===e&&n===t.length?Q.fromByteArray(t):Q.fromByteArray(t.slice(e,n))}function E(t,e,n){n=Math.min(t.length,n);for(var r=[],o=e;o<n;){var i=t[o],a=null,s=i>239?4:i>223?3:i>191?2:1;if(o+s<=n){var c,l,u,f;switch(s){case 1:i<128&&(a=i);break;case 2:c=t[o+1],128===(192&c)&&(f=(31&i)<<6|63&c,f>127&&(a=f));break;case 3:c=t[o+1],l=t[o+2],128===(192&c)&&128===(192&l)&&(f=(15&i)<<12|(63&c)<<6|63&l,f>2047&&(f<55296||f>57343)&&(a=f));break;case 4:c=t[o+1],l=t[o+2],u=t[o+3],128===(192&c)&&128===(192&l)&&128===(192&u)&&(f=(15&i)<<18|(63&c)<<12|(63&l)<<6|63&u,f>65535&&f<1114112&&(a=f))}}null===a?(a=65533,s=1):a>65535&&(a-=65536,r.push(a>>>10&1023|55296),a=56320|1023&a),r.push(a),o+=s}return j(r)}function j(t){var e=t.length;if(e<=tt)return String.fromCharCode.apply(String,t);for(var n=\"\",r=0;r<e;)n+=String.fromCharCode.apply(String,t.slice(r,r+=tt));return n}function B(t,e,n){var r=\"\";n=Math.min(t.length,n);for(var o=e;o<n;++o)r+=String.fromCharCode(127&t[o]);return r}function S(t,e,n){var r=\"\";n=Math.min(t.length,n);for(var o=e;o<n;++o)r+=String.fromCharCode(t[o]);return r}function D(t,e,n){var r=t.length;(!e||e<0)&&(e=0),(!n||n<0||n>r)&&(n=r);for(var o=\"\",i=e;i<n;++i)o+=V(t[i]);return o}function N(t,e,n){for(var r=t.slice(e,n),o=\"\",i=0;i<r.length;i+=2)o+=String.fromCharCode(r[i]+256*r[i+1]);return o}function Y(t,e,n){if(t%1!==0||t<0)throw new RangeError(\"offset is not uint\");if(t+e>n)throw new RangeError(\"Trying to access beyond buffer length\")}function F(t,e,n,r,o,i){if(!a.isBuffer(t))throw new TypeError('\"buffer\" argument must be a Buffer instance');if(e>o||e<i)throw new RangeError('\"value\" argument is out of bounds');if(n+r>t.length)throw new RangeError(\"Index out of range\")}function z(t,e,n,r){e<0&&(e=65535+e+1);for(var o=0,i=Math.min(t.length-n,2);o<i;++o)t[n+o]=(e&255<<8*(r?o:1-o))>>>8*(r?o:1-o)}function I(t,e,n,r){e<0&&(e=4294967295+e+1);for(var o=0,i=Math.min(t.length-n,4);o<i;++o)t[n+o]=e>>>8*(r?o:3-o)&255}function L(t,e,n,r,o,i){if(n+r>t.length)throw new RangeError(\"Index out of range\");if(n<0)throw new RangeError(\"Index out of range\")}function K(t,e,n,r,o){return o||L(t,e,n,4,3.4028234663852886e38,-3.4028234663852886e38),$.write(t,e,n,r,23,4),n+4}function G(t,e,n,r,o){return o||L(t,e,n,8,1.7976931348623157e308,-1.7976931348623157e308),$.write(t,e,n,r,52,8),n+8}function C(t){if(t=X(t).replace(et,\"\"),t.length<2)return\"\";for(;t.length%4!==0;)t+=\"=\";return t}function X(t){return t.trim?t.trim():t.replace(/^\\s+|\\s+$/g,\"\")}function V(t){return t<16?\"0\"+t.toString(16):t.toString(16)}function W(t,e){e=e||1/0;for(var n,r=t.length,o=null,i=[],a=0;a<r;++a){if(n=t.charCodeAt(a),n>55295&&n<57344){if(!o){if(n>56319){(e-=3)>-1&&i.push(239,191,189);continue}if(a+1===r){(e-=3)>-1&&i.push(239,191,189);continue}o=n;continue}if(n<56320){(e-=3)>-1&&i.push(239,191,189),o=n;continue}n=(o-55296<<10|n-56320)+65536}else o&&(e-=3)>-1&&i.push(239,191,189);if(o=null,n<128){if((e-=1)<0)break;i.push(n)}else if(n<2048){if((e-=2)<0)break;i.push(n>>6|192,63&n|128)}else if(n<65536){if((e-=3)<0)break;i.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error(\"Invalid code point\");if((e-=4)<0)break;i.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return i}function Z(t){for(var e=[],n=0;n<t.length;++n)e.push(255&t.charCodeAt(n));return e}function J(t,e){for(var n,r,o,i=[],a=0;a<t.length&&!((e-=2)<0);++a)n=t.charCodeAt(a),r=n>>8,o=n%256,i.push(o),i.push(r);return i}function U(t){return Q.toByteArray(C(t))}function q(t,e,n,r){for(var o=0;o<r&&!(o+n>=e.length||o>=t.length);++o)e[o+n]=t[o];return o}function H(t){return t!==t}var Q=t(\"base64-js\"),$=t(\"ieee754\"),_=t(\"isarray\");n.Buffer=a,n.SlowBuffer=g,n.INSPECT_MAX_BYTES=50,a.TYPED_ARRAY_SUPPORT=void 0!==e.TYPED_ARRAY_SUPPORT?e.TYPED_ARRAY_SUPPORT:r(),n.kMaxLength=o(),a.poolSize=8192,a._augment=function(t){return t.__proto__=a.prototype,t},a.from=function(t,e,n){return s(null,t,e,n)},a.TYPED_ARRAY_SUPPORT&&(a.prototype.__proto__=Uint8Array.prototype,a.__proto__=Uint8Array,\"undefined\"!=typeof Symbol&&Symbol.species&&a[Symbol.species]===a&&Object.defineProperty(a,Symbol.species,{value:null,configurable:!0})),a.alloc=function(t,e,n){return l(null,t,e,n)},a.allocUnsafe=function(t){return u(null,t)},a.allocUnsafeSlow=function(t){return u(null,t)},a.isBuffer=function(t){return!(null==t||!t._isBuffer)},a.compare=function(t,e){if(!a.isBuffer(t)||!a.isBuffer(e))throw new TypeError(\"Arguments must be Buffers\");if(t===e)return 0;for(var n=t.length,r=e.length,o=0,i=Math.min(n,r);o<i;++o)if(t[o]!==e[o]){n=t[o],r=e[o];break}return n<r?-1:r<n?1:0},a.isEncoding=function(t){switch(String(t).toLowerCase()){case\"hex\":case\"utf8\":case\"utf-8\":case\"ascii\":case\"latin1\":case\"binary\":case\"base64\":case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return!0;default:return!1}},a.concat=function(t,e){if(!_(t))throw new TypeError('\"list\" argument must be an Array of Buffers');if(0===t.length)return a.alloc(0);var n;if(void 0===e)for(e=0,n=0;n<t.length;++n)e+=t[n].length;var r=a.allocUnsafe(e),o=0;for(n=0;n<t.length;++n){var i=t[n];if(!a.isBuffer(i))throw new TypeError('\"list\" argument must be an Array of Buffers');i.copy(r,o),o+=i.length}return r},a.byteLength=b,a.prototype._isBuffer=!0,a.prototype.swap16=function(){var t=this.length;if(t%2!==0)throw new RangeError(\"Buffer size must be a multiple of 16-bits\");for(var e=0;e<t;e+=2)v(this,e,e+1);return this},a.prototype.swap32=function(){var t=this.length;if(t%4!==0)throw new RangeError(\"Buffer size must be a multiple of 32-bits\");for(var e=0;e<t;e+=4)v(this,e,e+3),v(this,e+1,e+2);return this},a.prototype.swap64=function(){var t=this.length;if(t%8!==0)throw new RangeError(\"Buffer size must be a multiple of 64-bits\");for(var e=0;e<t;e+=8)v(this,e,e+7),v(this,e+1,e+6),v(this,e+2,e+5),v(this,e+3,e+4);return this},a.prototype.toString=function(){var t=0|this.length;return 0===t?\"\":0===arguments.length?E(this,0,t):y.apply(this,arguments)},a.prototype.equals=function(t){if(!a.isBuffer(t))throw new TypeError(\"Argument must be a Buffer\");return this===t||0===a.compare(this,t)},a.prototype.inspect=function(){var t=\"\",e=n.INSPECT_MAX_BYTES;return this.length>0&&(t=this.toString(\"hex\",0,e).match(/.{2}/g).join(\" \"),this.length>e&&(t+=\" ... \")),\"<Buffer \"+t+\">\"},a.prototype.compare=function(t,e,n,r,o){if(!a.isBuffer(t))throw new TypeError(\"Argument must be a Buffer\");if(void 0===e&&(e=0),void 0===n&&(n=t?t.length:0),void 0===r&&(r=0),void 0===o&&(o=this.length),e<0||n>t.length||r<0||o>this.length)throw new RangeError(\"out of range index\");if(r>=o&&e>=n)return 0;if(r>=o)return-1;if(e>=n)return 1;if(e>>>=0,n>>>=0,r>>>=0,o>>>=0,this===t)return 0;for(var i=o-r,s=n-e,c=Math.min(i,s),l=this.slice(r,o),u=t.slice(e,n),f=0;f<c;++f)if(l[f]!==u[f]){i=l[f],s=u[f];break}return i<s?-1:s<i?1:0},a.prototype.includes=function(t,e,n){return this.indexOf(t,e,n)!==-1},a.prototype.indexOf=function(t,e,n){return A(this,t,e,n,!0)},a.prototype.lastIndexOf=function(t,e,n){return A(this,t,e,n,!1)},a.prototype.write=function(t,e,n,r){if(void 0===e)r=\"utf8\",n=this.length,e=0;else if(void 0===n&&\"string\"==typeof e)r=e,n=this.length,e=0;else{if(!isFinite(e))throw new Error(\"Buffer.write(string, encoding, offset[, length]) is no longer supported\");e=0|e,isFinite(n)?(n=0|n,void 0===r&&(r=\"utf8\")):(r=n,n=void 0)}var o=this.length-e;if((void 0===n||n>o)&&(n=o),t.length>0&&(n<0||e<0)||e>this.length)throw new RangeError(\"Attempt to write outside buffer bounds\");r||(r=\"utf8\");for(var i=!1;;)switch(r){case\"hex\":return k(this,t,e,n);case\"utf8\":case\"utf-8\":return x(this,t,e,n);case\"ascii\":return M(this,t,e,n);case\"latin1\":case\"binary\":return T(this,t,e,n);case\"base64\":return R(this,t,e,n);case\"ucs2\":case\"ucs-2\":case\"utf16le\":case\"utf-16le\":return P(this,t,e,n);default:if(i)throw new TypeError(\"Unknown encoding: \"+r);r=(\"\"+r).toLowerCase(),i=!0}},a.prototype.toJSON=function(){return{type:\"Buffer\",data:Array.prototype.slice.call(this._arr||this,0)}};var tt=4096;a.prototype.slice=function(t,e){var n=this.length;t=~~t,e=void 0===e?n:~~e,t<0?(t+=n,t<0&&(t=0)):t>n&&(t=n),e<0?(e+=n,e<0&&(e=0)):e>n&&(e=n),e<t&&(e=t);var r;if(a.TYPED_ARRAY_SUPPORT)r=this.subarray(t,e),r.__proto__=a.prototype;else{var o=e-t;r=new a(o,(void 0));for(var i=0;i<o;++i)r[i]=this[i+t]}return r},a.prototype.readUIntLE=function(t,e,n){t=0|t,e=0|e,n||Y(t,e,this.length);for(var r=this[t],o=1,i=0;++i<e&&(o*=256);)r+=this[t+i]*o;return r},a.prototype.readUIntBE=function(t,e,n){t=0|t,e=0|e,n||Y(t,e,this.length);for(var r=this[t+--e],o=1;e>0&&(o*=256);)r+=this[t+--e]*o;return r},a.prototype.readUInt8=function(t,e){return e||Y(t,1,this.length),this[t]},a.prototype.readUInt16LE=function(t,e){return e||Y(t,2,this.length),this[t]|this[t+1]<<8},a.prototype.readUInt16BE=function(t,e){return e||Y(t,2,this.length),this[t]<<8|this[t+1]},a.prototype.readUInt32LE=function(t,e){return e||Y(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},a.prototype.readUInt32BE=function(t,e){return e||Y(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},a.prototype.readIntLE=function(t,e,n){t=0|t,e=0|e,n||Y(t,e,this.length);for(var r=this[t],o=1,i=0;++i<e&&(o*=256);)r+=this[t+i]*o;return o*=128,r>=o&&(r-=Math.pow(2,8*e)),r},a.prototype.readIntBE=function(t,e,n){t=0|t,e=0|e,n||Y(t,e,this.length);for(var r=e,o=1,i=this[t+--r];r>0&&(o*=256);)i+=this[t+--r]*o;return o*=128,i>=o&&(i-=Math.pow(2,8*e)),i},a.prototype.readInt8=function(t,e){return e||Y(t,1,this.length),128&this[t]?(255-this[t]+1)*-1:this[t]},a.prototype.readInt16LE=function(t,e){e||Y(t,2,this.length);var n=this[t]|this[t+1]<<8;return 32768&n?4294901760|n:n},a.prototype.readInt16BE=function(t,e){e||Y(t,2,this.length);var n=this[t+1]|this[t]<<8;return 32768&n?4294901760|n:n},a.prototype.readInt32LE=function(t,e){return e||Y(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},a.prototype.readInt32BE=function(t,e){return e||Y(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},a.prototype.readFloatLE=function(t,e){return e||Y(t,4,this.length),$.read(this,t,!0,23,4)},a.prototype.readFloatBE=function(t,e){return e||Y(t,4,this.length),$.read(this,t,!1,23,4)},a.prototype.readDoubleLE=function(t,e){return e||Y(t,8,this.length),$.read(this,t,!0,52,8)},a.prototype.readDoubleBE=function(t,e){return e||Y(t,8,this.length),$.read(this,t,!1,52,8)},a.prototype.writeUIntLE=function(t,e,n,r){if(t=+t,e=0|e,n=0|n,!r){var o=Math.pow(2,8*n)-1;F(this,t,e,n,o,0)}var i=1,a=0;for(this[e]=255&t;++a<n&&(i*=256);)this[e+a]=t/i&255;return e+n},a.prototype.writeUIntBE=function(t,e,n,r){if(t=+t,e=0|e,n=0|n,!r){var o=Math.pow(2,8*n)-1;F(this,t,e,n,o,0)}var i=n-1,a=1;for(this[e+i]=255&t;--i>=0&&(a*=256);)this[e+i]=t/a&255;return e+n},a.prototype.writeUInt8=function(t,e,n){return t=+t,e=0|e,n||F(this,t,e,1,255,0),a.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),this[e]=255&t,e+1},a.prototype.writeUInt16LE=function(t,e,n){return t=+t,e=0|e,n||F(this,t,e,2,65535,0),a.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8):z(this,t,e,!0),e+2},a.prototype.writeUInt16BE=function(t,e,n){return t=+t,e=0|e,n||F(this,t,e,2,65535,0),a.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=255&t):z(this,t,e,!1),e+2},a.prototype.writeUInt32LE=function(t,e,n){return t=+t,e=0|e,n||F(this,t,e,4,4294967295,0),a.TYPED_ARRAY_SUPPORT?(this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t):I(this,t,e,!0),e+4},a.prototype.writeUInt32BE=function(t,e,n){return t=+t,e=0|e,n||F(this,t,e,4,4294967295,0),a.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):I(this,t,e,!1),e+4},a.prototype.writeIntLE=function(t,e,n,r){if(t=+t,e=0|e,!r){var o=Math.pow(2,8*n-1);F(this,t,e,n,o-1,-o)}var i=0,a=1,s=0;for(this[e]=255&t;++i<n&&(a*=256);)t<0&&0===s&&0!==this[e+i-1]&&(s=1),this[e+i]=(t/a>>0)-s&255;return e+n},a.prototype.writeIntBE=function(t,e,n,r){if(t=+t,e=0|e,!r){var o=Math.pow(2,8*n-1);F(this,t,e,n,o-1,-o)}var i=n-1,a=1,s=0;for(this[e+i]=255&t;--i>=0&&(a*=256);)t<0&&0===s&&0!==this[e+i+1]&&(s=1),this[e+i]=(t/a>>0)-s&255;return e+n},a.prototype.writeInt8=function(t,e,n){return t=+t,e=0|e,n||F(this,t,e,1,127,-128),a.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),t<0&&(t=255+t+1),this[e]=255&t,e+1},a.prototype.writeInt16LE=function(t,e,n){return t=+t,e=0|e,n||F(this,t,e,2,32767,-32768),a.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8):z(this,t,e,!0),e+2},a.prototype.writeInt16BE=function(t,e,n){return t=+t,e=0|e,n||F(this,t,e,2,32767,-32768),a.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=255&t):z(this,t,e,!1),e+2},a.prototype.writeInt32LE=function(t,e,n){return t=+t,e=0|e,n||F(this,t,e,4,2147483647,-2147483648),a.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24):I(this,t,e,!0),e+4},a.prototype.writeInt32BE=function(t,e,n){return t=+t,e=0|e,n||F(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),a.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):I(this,t,e,!1),e+4},a.prototype.writeFloatLE=function(t,e,n){return K(this,t,e,!0,n)},a.prototype.writeFloatBE=function(t,e,n){return K(this,t,e,!1,n)},a.prototype.writeDoubleLE=function(t,e,n){return G(this,t,e,!0,n)},a.prototype.writeDoubleBE=function(t,e,n){return G(this,t,e,!1,n)},a.prototype.copy=function(t,e,n,r){if(n||(n=0),r||0===r||(r=this.length),e>=t.length&&(e=t.length),e||(e=0),r>0&&r<n&&(r=n),r===n)return 0;if(0===t.length||0===this.length)return 0;if(e<0)throw new RangeError(\"targetStart out of bounds\");if(n<0||n>=this.length)throw new RangeError(\"sourceStart out of bounds\");if(r<0)throw new RangeError(\"sourceEnd out of bounds\");r>this.length&&(r=this.length),t.length-e<r-n&&(r=t.length-e+n);var o,i=r-n;if(this===t&&n<e&&e<r)for(o=i-1;o>=0;--o)t[o+e]=this[o+n];else if(i<1e3||!a.TYPED_ARRAY_SUPPORT)for(o=0;o<i;++o)t[o+e]=this[o+n];else Uint8Array.prototype.set.call(t,this.subarray(n,n+i),e);return i},a.prototype.fill=function(t,e,n,r){if(\"string\"==typeof t){if(\"string\"==typeof e?(r=e,e=0,n=this.length):\"string\"==typeof n&&(r=n,n=this.length),1===t.length){var o=t.charCodeAt(0);o<256&&(t=o)}if(void 0!==r&&\"string\"!=typeof r)throw new TypeError(\"encoding must be a string\");if(\"string\"==typeof r&&!a.isEncoding(r))throw new TypeError(\"Unknown encoding: \"+r)}else\"number\"==typeof t&&(t=255&t);if(e<0||this.length<e||this.length<n)throw new RangeError(\"Out of range index\");if(n<=e)return this;e>>>=0,n=void 0===n?this.length:n>>>0,t||(t=0);var i;if(\"number\"==typeof t)for(i=e;i<n;++i)this[i]=t;else{var s=a.isBuffer(t)?t:W(new a(t,r).toString()),c=s.length;for(i=0;i<n-e;++i)this[i+e]=s[i%c]}return this};var et=/[^+\\/0-9A-Za-z-_]/g}).call(this,\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:\"undefined\"!=typeof window?window:{})},{\"base64-js\":1,ieee754:4,isarray:5}],3:[function(e,n,r){(function(e){/*!\n * @license deepcopy.js Copyright(c) 2013 sasa+1\n * https://github.com/sasaplus1/deepcopy.js\n * Released under the MIT license.\n */\n!function(e,o){\"object\"==typeof r&&\"object\"==typeof n?n.exports=o():\"function\"==typeof t&&t.amd?t([],o):\"object\"==typeof r?r.deepcopy=o():e.deepcopy=o()}(this,function(){return function(t){function e(r){if(n[r])return n[r].exports;var o=n[r]={exports:{},id:r,loaded:!1};return t[r].call(o.exports,o,o.exports,e),o.loaded=!0,o.exports}var n={};return e.m=t,e.c=n,e.p=\"\",e(0)}([function(t,e,n){\"use strict\";t.exports=n(3)},function(t,n){\"use strict\";function r(t,e){if(\"[object Array]\"!==o.call(t))throw new TypeError(\"array must be an Array\");var n=void 0,r=void 0,i=void 0;for(n=0,r=t.length;r>n;++n)if(i=t[n],i===e||i!==i&&e!==e)return n;return-1}n.__esModule=!0;var o=Object.prototype.toString,i=\"undefined\"!=typeof e?function(t){return e.isBuffer(t)}:function(){return!1},a=\"function\"==typeof Object.keys?function(t){return Object.keys(t)}:function(t){var e=typeof t;if(null===t||\"function\"!==e&&\"object\"!==e)throw new TypeError(\"obj must be an Object\");var n=[],r=void 0;for(r in t)Object.prototype.hasOwnProperty.call(t,r)&&n.push(r);return n},s=\"function\"==typeof Symbol?function(t){return Object.getOwnPropertySymbols(t)}:function(){return[]};n.getKeys=a,n.getSymbols=s,n.indexOf=r,n.isBuffer=i},function(t,n,r){\"use strict\";function o(t,e){var n=a(t);return null!==n?n:i(t,e)}function i(t,n){if(\"function\"!=typeof n)throw new TypeError(\"customizer is must be a Function\");if(\"function\"==typeof t){var r=String(t);return/^\\s*function\\s*\\S*\\([^\\)]*\\)\\s*{\\s*\\[native code\\]\\s*}/.test(r)?t:new Function(\"return \"+String(r))()}var o=c.call(t);if(\"[object Array]\"===o)return[];if(\"[object Object]\"===o&&t.constructor===Object)return{};if(\"[object Date]\"===o)return new Date(t.getTime());if(\"[object RegExp]\"===o){var i=String(t),a=i.lastIndexOf(\"/\");return new RegExp(i.slice(1,a),i.slice(a+1))}if((0,s.isBuffer)(t)){var l=new e(t.length);return t.copy(l),l}var u=n(t);return void 0!==u?u:null}function a(t){var e=typeof t;return null!==t&&\"object\"!==e&&\"function\"!==e?t:null}n.__esModule=!0,n.copyValue=n.copyCollection=n.copy=void 0;var s=r(1),c=Object.prototype.toString;n.copy=o,n.copyCollection=i,n.copyValue=a},function(t,e,n){\"use strict\";function r(t){}function o(t){var e=arguments.length<=1||void 0===arguments[1]?r:arguments[1];if(null===t)return null;var n=(0,a.copyValue)(t);if(null!==n)return n;var o=(0,a.copyCollection)(t,e),s=null!==o?o:t,c=[t],l=[s];return i(t,e,s,c,l)}function i(t,e,n,r,o){if(null===t)return null;var c=(0,a.copyValue)(t);if(null!==c)return c;var l=(0,s.getKeys)(t).concat((0,s.getSymbols)(t)),u=void 0,f=void 0,p=void 0,d=void 0,h=void 0,m=void 0,g=void 0,b=void 0;for(u=0,f=l.length;f>u;++u)p=l[u],d=t[p],h=(0,s.indexOf)(r,d),m=void 0,g=void 0,b=void 0,-1===h?(m=(0,a.copy)(d,e),g=null!==m?m:d,null!==d&&/^(?:function|object)$/.test(typeof d)&&(r.push(d),o.push(g))):b=o[h],n[p]=b||i(d,e,g,r,o);return n}e.__esModule=!0;var a=n(2),s=n(1);e[\"default\"]=o,t.exports=e[\"default\"]}])})}).call(this,e(\"buffer\").Buffer)},{buffer:2}],4:[function(t,e,n){n.read=function(t,e,n,r,o){var i,a,s=8*o-r-1,c=(1<<s)-1,l=c>>1,u=-7,f=n?o-1:0,p=n?-1:1,d=t[e+f];for(f+=p,i=d&(1<<-u)-1,d>>=-u,u+=s;u>0;i=256*i+t[e+f],f+=p,u-=8);for(a=i&(1<<-u)-1,i>>=-u,u+=r;u>0;a=256*a+t[e+f],f+=p,u-=8);if(0===i)i=1-l;else{if(i===c)return a?NaN:(d?-1:1)*(1/0);a+=Math.pow(2,r),i-=l}return(d?-1:1)*a*Math.pow(2,i-r)},n.write=function(t,e,n,r,o,i){var a,s,c,l=8*i-o-1,u=(1<<l)-1,f=u>>1,p=23===o?Math.pow(2,-24)-Math.pow(2,-77):0,d=r?0:i-1,h=r?1:-1,m=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,a=u):(a=Math.floor(Math.log(e)/Math.LN2),e*(c=Math.pow(2,-a))<1&&(a--,c*=2),e+=a+f>=1?p/c:p*Math.pow(2,1-f),e*c>=2&&(a++,c/=2),a+f>=u?(s=0,a=u):a+f>=1?(s=(e*c-1)*Math.pow(2,o),a+=f):(s=e*Math.pow(2,f-1)*Math.pow(2,o),a=0));o>=8;t[n+d]=255&s,d+=h,s/=256,o-=8);for(a=a<<o|s,l+=o;l>0;t[n+d]=255&a,d+=h,a/=256,l-=8);t[n+d-h]|=128*m}},{}],5:[function(t,e,n){var r={}.toString;e.exports=Array.isArray||function(t){return\"[object Array]\"==r.call(t)}},{}],6:[function(t,e,n){function r(t){return/^[a-z_$][0-9a-z_$]*$/gi.test(t)&&!i.test(t)}function o(t){if(a)return t.toString();var e=t.source.replace(/\\//g,function(t,e,n){return 0===e||\"\\\\\"!==n[e-1]?\"\\\\/\":\"/\"}),n=(t.global&&\"g\"||\"\")+(t.ignoreCase&&\"i\"||\"\")+(t.multiline&&\"m\"||\"\");return\"/\"+e+\"/\"+n}/* toSource by Marcello Bastea-Forte - zlib license */\ne.exports=function(t,e,n,i){function a(t,e,n,i,s){function c(t){return n.slice(1)+t.join(\",\"+(n&&\"\\n\")+l)+(n?\" \":\"\")}var l=i+n;switch(t=e?e(t):t,typeof t){case\"string\":return JSON.stringify(t);case\"boolean\":case\"number\":case\"undefined\":return\"\"+t;case\"function\":return t.toString()}if(null===t)return\"null\";if(t instanceof RegExp)return o(t);if(t instanceof Date)return\"new Date(\"+t.getTime()+\")\";var u=s.indexOf(t)+1;if(u>0)return\"{$circularReference:\"+u+\"}\";if(s.push(t),Array.isArray(t))return\"[\"+c(t.map(function(t){return a(t,e,n,l,s.slice())}))+\"]\";var f=Object.keys(t);return f.length?\"{\"+c(f.map(function(o){return(r(o)?o:JSON.stringify(o))+\":\"+a(t[o],e,n,l,s.slice())}))+\"}\":\"{}\"}var s=[];return a(t,e,void 0===n?\"  \":n||\"\",i||\"\",s)};var i=/^(abstract|boolean|break|byte|case|catch|char|class|const|continue|debugger|default|delete|do|double|else|enum|export|extends|false|final|finally|float|for|function|goto|if|implements|import|in|instanceof|int|interface|long|native|new|null|package|private|protected|public|return|short|static|super|switch|synchronized|this|throw|throws|transient|true|try|typeof|undefined|var|void|volatile|while|with)$/,a=\"\\\\/\"===new RegExp(\"/\").source},{}],7:[function(t,e,n){e.exports={name:\"pebble-clay\",version:\"1.0.4\",description:\"Pebble Config Framework\",scripts:{\"test-travis\":\"./node_modules/.bin/gulp && ./node_modules/.bin/karma start ./test/karma.conf.js --single-run --browsers chromeTravisCI && ./node_modules/.bin/eslint ./\",\"test-debug\":\"(export DEBUG=true && ./node_modules/.bin/gulp && ./node_modules/.bin/karma start ./test/karma.conf.js --no-single-run)\",test:\"./node_modules/.bin/gulp && ./node_modules/.bin/karma start ./test/karma.conf.js --single-run\",lint:\"./node_modules/.bin/eslint ./\",build:\"gulp\",dev:\"gulp dev\",\"pebble-clean\":\"rm -rf tmp src/js/index.js && pebble clean\",\"pebble-publish\":\"npm run pebble-clean && npm run build && pebble build && pebble package publish && npm run pebble-clean\",\"pebble-build\":\"npm run build && pebble build\"},repository:{type:\"git\",url:\"git+https://github.com/pebble/clay.git\"},keywords:[\"pebble\",\"config\",\"configuration\",\"pebble-package\"],author:\"Pebble Technology\",license:\"MIT\",bugs:{url:\"https://github.com/pebble/clay/issues\"},pebble:{projectType:\"package\",sdkVersion:\"3\",targetPlatforms:[\"aplite\",\"basalt\",\"chalk\",\"diorite\",\"emery\"],resources:{media:[]},capabilities:[\"configurable\"]},homepage:\"https://github.com/pebble/clay#readme\",devDependencies:{autoprefixer:\"^6.3.1\",bourbon:\"^4.2.6\",browserify:\"^13.0.0\",\"browserify-istanbul\":\"^0.2.1\",chai:\"^3.4.1\",deamdify:\"^0.2.0\",deepcopy:\"^0.6.1\",del:\"^2.0.2\",eslint:\"^1.5.1\",\"eslint-config-pebble\":\"^1.2.0\",\"eslint-plugin-standard\":\"^1.3.1\",gulp:\"^3.9.0\",\"gulp-autoprefixer\":\"^3.1.0\",\"gulp-htmlmin\":\"^1.3.0\",\"gulp-inline\":\"0.0.15\",\"gulp-insert\":\"^0.5.0\",\"gulp-sass\":\"^2.1.1\",\"gulp-sourcemaps\":\"^1.6.0\",\"gulp-uglify\":\"^1.5.2\",joi:\"^6.10.1\",karma:\"^0.13.19\",\"karma-browserify\":\"^5.0.1\",\"karma-chrome-launcher\":\"^0.2.2\",\"karma-coverage\":\"^0.5.3\",\"karma-mocha\":\"^0.2.1\",\"karma-mocha-reporter\":\"^1.1.5\",\"karma-source-map-support\":\"^1.1.0\",\"karma-threshold-reporter\":\"^0.1.15\",mocha:\"^2.3.4\",postcss:\"^5.0.14\",\"require-from-string\":\"^1.1.0\",sassify:\"^0.9.1\",sinon:\"^1.17.3\",stringify:\"^3.2.0\",through:\"^2.3.8\",tosource:\"^1.0.0\",\"vinyl-buffer\":\"^1.0.0\",\"vinyl-source-stream\":\"^1.1.0\",watchify:\"^3.7.0\"},dependencies:{}}},{}],8:[function(t,e,n){\"use strict\";e.exports={name:\"button\",template:t(\"../../templates/components/button.tpl\"),style:t(\"../../styles/clay/components/button.scss\"),manipulator:\"button\",defaults:{primary:!1,attributes:{},description:\"\"}}},{\"../../styles/clay/components/button.scss\":21,\"../../templates/components/button.tpl\":30}],9:[function(t,e,n){\"use strict\";e.exports={name:\"checkboxgroup\",template:t(\"../../templates/components/checkboxgroup.tpl\"),style:t(\"../../styles/clay/components/checkboxgroup.scss\"),manipulator:\"checkboxgroup\",defaults:{label:\"\",options:[],description:\"\"}}},{\"../../styles/clay/components/checkboxgroup.scss\":22,\"../../templates/components/checkboxgroup.tpl\":31}],10:[function(t,e,n){\"use strict\";e.exports={name:\"color\",template:t(\"../../templates/components/color.tpl\"),style:t(\"../../styles/clay/components/color.scss\"),manipulator:\"color\",defaults:{label:\"\",description:\"\"},initialize:function(t,e){function n(t){if(\"number\"==typeof t)t=t.toString(16);else if(!t)return\"transparent\";return t=r(t),\"#\"+(f?p[t]:t)}function r(t){for(t=t.toLowerCase();t.length<6;)t=\"0\"+t;return t}function o(t){switch(typeof t){case\"number\":return r(t.toString(16));case\"string\":return t.replace(/^#|^0x/,\"\");default:return t}}function i(t){return t.reduce(function(t,e){return t.concat(e)},[])}function a(t){t=t.replace(/^#|^0x/,\"\");var e=parseInt(t.slice(0,2),16)/255,n=parseInt(t.slice(2,4),16)/255,r=parseInt(t.slice(4),16)/255;e=e>.04045?Math.pow((e+.055)/1.055,2.4):e/12.92,n=n>.04045?Math.pow((n+.055)/1.055,2.4):n/12.92,r=r>.04045?Math.pow((r+.055)/1.055,2.4):r/12.92;var o=(.4124*e+.3576*n+.1805*r)/.95047,i=(.2126*e+.7152*n+.0722*r)/1,a=(.0193*e+.1192*n+.9505*r)/1.08883;return o=o>.008856?Math.pow(o,1/3):7.787*o+16/116,i=i>.008856?Math.pow(i,1/3):7.787*i+16/116,a=a>.008856?Math.pow(a,1/3):7.787*a+16/116,[116*i-16,500*(o-i),200*(i-a)]}function s(t,e){var n=t[0]-e[0],r=t[1]-e[1],o=t[2]-e[2];return Math.sqrt(Math.pow(n,2)+Math.pow(r,2)+Math.pow(o,2))}function c(){return!e.meta.activeWatchInfo||2===e.meta.activeWatchInfo.firmware.major||[\"aplite\",\"diorite\"].indexOf(e.meta.activeWatchInfo.platform)>-1&&!u.config.allowGray?d.BLACK_WHITE:[\"aplite\",\"diorite\"].indexOf(e.meta.activeWatchInfo.platform)>-1&&u.config.allowGray?d.GRAY:d.COLOR}var l=t.HTML,u=this;u.roundColorToLayout=function(t){var e=o(t);if(m.indexOf(e)===-1){var n=a(e),r=m.map(function(t){var e=a(o(t));return s(n,e)}),i=Math.min.apply(Math,r),c=r.indexOf(i);e=m[c]}return parseInt(e,16)};var f=u.config.sunlight!==!1,p={\"000000\":\"000000\",\"000055\":\"001e41\",\"0000aa\":\"004387\",\"0000ff\":\"0068ca\",\"005500\":\"2b4a2c\",\"005555\":\"27514f\",\"0055aa\":\"16638d\",\"0055ff\":\"007dce\",\"00aa00\":\"5e9860\",\"00aa55\":\"5c9b72\",\"00aaaa\":\"57a5a2\",\"00aaff\":\"4cb4db\",\"00ff00\":\"8ee391\",\"00ff55\":\"8ee69e\",\"00ffaa\":\"8aebc0\",\"00ffff\":\"84f5f1\",550000:\"4a161b\",550055:\"482748\",\"5500aa\":\"40488a\",\"5500ff\":\"2f6bcc\",555500:\"564e36\",555555:\"545454\",\"5555aa\":\"4f6790\",\"5555ff\":\"4180d0\",\"55aa00\":\"759a64\",\"55aa55\":\"759d76\",\"55aaaa\":\"71a6a4\",\"55aaff\":\"69b5dd\",\"55ff00\":\"9ee594\",\"55ff55\":\"9de7a0\",\"55ffaa\":\"9becc2\",\"55ffff\":\"95f6f2\",aa0000:\"99353f\",aa0055:\"983e5a\",aa00aa:\"955694\",aa00ff:\"8f74d2\",aa5500:\"9d5b4d\",aa5555:\"9d6064\",aa55aa:\"9a7099\",aa55ff:\"9587d5\",aaaa00:\"afa072\",aaaa55:\"aea382\",aaaaaa:\"ababab\",ffffff:\"ffffff\",aaaaff:\"a7bae2\",aaff00:\"c9e89d\",aaff55:\"c9eaa7\",aaffaa:\"c7f0c8\",aaffff:\"c3f9f7\",ff0000:\"e35462\",ff0055:\"e25874\",ff00aa:\"e16aa3\",ff00ff:\"de83dc\",ff5500:\"e66e6b\",ff5555:\"e6727c\",ff55aa:\"e37fa7\",ff55ff:\"e194df\",ffaa00:\"f1aa86\",ffaa55:\"f1ad93\",ffaaaa:\"efb5b8\",ffaaff:\"ecc3eb\",ffff00:\"ffeeab\",ffff55:\"fff1b5\",ffffaa:\"fff6d3\"},d={COLOR:[[!1,!1,\"55ff00\",\"aaff55\",!1,\"ffff55\",\"ffffaa\",!1,!1],[!1,\"aaffaa\",\"55ff55\",\"00ff00\",\"aaff00\",\"ffff00\",\"ffaa55\",\"ffaaaa\",!1],[\"55ffaa\",\"00ff55\",\"00aa00\",\"55aa00\",\"aaaa55\",\"aaaa00\",\"ffaa00\",\"ff5500\",\"ff5555\"],[\"aaffff\",\"00ffaa\",\"00aa55\",\"55aa55\",\"005500\",\"555500\",\"aa5500\",\"ff0000\",\"ff0055\"],[!1,\"55aaaa\",\"00aaaa\",\"005555\",\"ffffff\",\"000000\",\"aa5555\",\"aa0000\",!1],[\"55ffff\",\"00ffff\",\"00aaff\",\"0055aa\",\"aaaaaa\",\"555555\",\"550000\",\"aa0055\",\"ff55aa\"],[\"55aaff\",\"0055ff\",\"0000ff\",\"0000aa\",\"000055\",\"550055\",\"aa00aa\",\"ff00aa\",\"ffaaff\"],[!1,\"5555aa\",\"5555ff\",\"5500ff\",\"5500aa\",\"aa00ff\",\"ff00ff\",\"ff55ff\",!1],[!1,!1,!1,\"aaaaff\",\"aa55ff\",\"aa55aa\",!1,!1,!1]],GRAY:[[\"000000\",\"aaaaaa\",\"ffffff\"]],BLACK_WHITE:[[\"000000\",\"ffffff\"]]},h=u.config.layout||c();\"string\"==typeof h&&(h=d[h]),Array.isArray(h[0])||(h=[h]);var m=i(h).map(function(t){return o(t)}).filter(function(t){return t}),g=\"\",b=h.length,y=0;h.forEach(function(t){y=t.length>y?t.length:y});for(var v=100/y,A=100/b,w=u.$element,k=0;k<b;k++)for(var x=0;x<y;x++){var M=o(h[k][x]),T=M?\" selectable\":\"\",R=0===k&&0===x||0===k&&!h[k][x-1]||!h[k][x-1]&&!h[k-1][x]?\" rounded-tl\":\"\",P=0===k&&!h[k][x+1]||!h[k][x+1]&&!h[k-1][x]?\" rounded-tr \":\"\",O=k===h.length-1&&0===x||k===h.length-1&&!h[k][x-1]||!h[k][x-1]&&!h[k+1][x]?\" rounded-bl\":\"\",E=k===h.length-1&&!h[k][x+1]||!h[k][x+1]&&!h[k+1][x]?\" rounded-br\":\"\";g+='<i class=\"color-box '+T+R+P+O+E+'\" '+(M?'data-value=\"'+parseInt(M,16)+'\" ':\"\")+'style=\"width:'+v+\"%; height:\"+A+\"%; background:\"+n(M)+';\"></i>'}var j=0;3===y&&(j=5),2===y&&(j=8);var B=j*v/A+\"%\",S=j+\"%\";w.select(\".color-box-container\").add(l(g)).set(\"$paddingTop\",B).set(\"$paddingRight\",S).set(\"$paddingBottom\",B).set(\"$paddingLeft\",S),w.select(\".color-box-wrap\").set(\"$paddingBottom\",v/A*100+\"%\");var D=w.select(\".value\"),N=w.select(\".picker-wrap\"),Y=u.$manipulatorTarget.get(\"disabled\");w.select(\"label\").on(\"click\",function(){Y||N.set(\"show\")}),u.on(\"change\",function(){var t=u.get();D.set(\"$background-color\",n(t)),w.select(\".color-box\").set(\"-selected\"),w.select('.color-box[data-value=\"'+t+'\"]').set(\"+selected\")}),w.select(\".color-box.selectable\").on(\"click\",function(t){u.set(parseInt(t.target.dataset.value,10)),N.set(\"-show\")}),N.on(\"click\",function(){N.set(\"-show\")}),u.on(\"disabled\",function(){Y=!0}),u.on(\"enabled\",function(){Y=!1}),u._layout=h}}},{\"../../styles/clay/components/color.scss\":23,\"../../templates/components/color.tpl\":32}],11:[function(t,e,n){\"use strict\";e.exports={name:\"footer\",template:t(\"../../templates/components/footer.tpl\"),manipulator:\"html\"}},{\"../../templates/components/footer.tpl\":33}],12:[function(t,e,n){\"use strict\";e.exports={name:\"heading\",template:t(\"../../templates/components/heading.tpl\"),manipulator:\"html\",defaults:{size:4}}},{\"../../templates/components/heading.tpl\":34}],13:[function(t,e,n){\"use strict\";e.exports={color:t(\"./color\"),footer:t(\"./footer\"),heading:t(\"./heading\"),input:t(\"./input\"),select:t(\"./select\"),submit:t(\"./submit\"),text:t(\"./text\"),toggle:t(\"./toggle\"),radiogroup:t(\"./radiogroup\"),checkboxgroup:t(\"./checkboxgroup\"),button:t(\"./button\"),slider:t(\"./slider\")}},{\"./button\":8,\"./checkboxgroup\":9,\"./color\":10,\"./footer\":11,\"./heading\":12,\"./input\":14,\"./radiogroup\":15,\"./select\":16,\"./slider\":17,\"./submit\":18,\"./text\":19,\"./toggle\":20}],14:[function(t,e,n){\"use strict\";e.exports={name:\"input\",template:t(\"../../templates/components/input.tpl\"),style:t(\"../../styles/clay/components/input.scss\"),manipulator:\"val\",defaults:{label:\"\",description:\"\",attributes:{}}}},{\"../../styles/clay/components/input.scss\":24,\"../../templates/components/input.tpl\":35}],15:[function(t,e,n){\"use strict\";e.exports={name:\"radiogroup\",template:t(\"../../templates/components/radiogroup.tpl\"),style:t(\"../../styles/clay/components/radiogroup.scss\"),manipulator:\"radiogroup\",defaults:{label:\"\",options:[],description:\"\",attributes:{}}}},{\"../../styles/clay/components/radiogroup.scss\":25,\"../../templates/components/radiogroup.tpl\":36}],16:[function(t,e,n){\"use strict\";e.exports={name:\"select\",template:t(\"../../templates/components/select.tpl\"),style:t(\"../../styles/clay/components/select.scss\"),manipulator:\"val\",defaults:{label:\"\",options:[],description:\"\",attributes:{}},initialize:function(){function t(){var t=e.$manipulatorTarget.get(\"selectedIndex\"),r=e.$manipulatorTarget.select(\"option\"),o=r[t]&&r[t].innerHTML;n.set(\"innerHTML\",o)}var e=this,n=e.$element.select(\".value\");t(),e.on(\"change\",t)}}},{\"../../styles/clay/components/select.scss\":26,\"../../templates/components/select.tpl\":37}],17:[function(t,e,n){\"use strict\";e.exports={name:\"slider\",template:t(\"../../templates/components/slider.tpl\"),style:t(\"../../styles/clay/components/slider.scss\"),manipulator:\"slider\",defaults:{label:\"\",description:\"\",min:0,max:100,step:1,attributes:{}},initialize:function(){function t(){var t=e.get().toFixed(e.precision);n.set(\"value\",t),r.set(\"innerHTML\",t)}var e=this,n=e.$element.select(\".value\"),r=e.$element.select(\".value-pad\"),o=e.$manipulatorTarget,i=o.get(\"step\");i=i.toString(10).split(\".\")[1],e.precision=i?i.length:0,e.on(\"change\",t),o.on(\"|input\",t),t(),n.on(\"|input\",function(){r.set(\"innerHTML\",this.get(\"value\"))}),n.on(\"|change\",function(){e.set(this.get(\"value\")),t()})}}},{\"../../styles/clay/components/slider.scss\":27,\"../../templates/components/slider.tpl\":38}],18:[function(t,e,n){\"use strict\";e.exports={name:\"submit\",template:t(\"../../templates/components/submit.tpl\"),style:t(\"../../styles/clay/components/submit.scss\"),manipulator:\"button\",defaults:{attributes:{}}}},{\"../../styles/clay/components/submit.scss\":28,\"../../templates/components/submit.tpl\":39}],19:[function(t,e,n){\"use strict\";e.exports={name:\"text\",template:t(\"../../templates/components/text.tpl\"),manipulator:\"html\"}},{\"../../templates/components/text.tpl\":40}],20:[function(t,e,n){\"use strict\";e.exports={name:\"toggle\",template:t(\"../../templates/components/toggle.tpl\"),style:t(\"../../styles/clay/components/toggle.scss\"),manipulator:\"checked\",defaults:{label:\"\",description:\"\",attributes:{}}}},{\"../../styles/clay/components/toggle.scss\":29,\"../../templates/components/toggle.tpl\":41}],21:[function(t,e,n){e.exports=\".component-button { text-align: center; }\\n\\n.section .component-button { padding-bottom: 0; }\\n\\n.component-button .description { padding-left: 0; padding-right: 0; }\\n\"},{}],22:[function(t,e,n){e.exports=\".component-checkbox { display: block; }\\n\\n.section .component-checkbox { padding-right: 0.375rem; }\\n\\n.component-checkbox > .label { display: block; padding-bottom: 0.35rem; }\\n\\n.component-checkbox .checkbox-group { padding-bottom: 0.35rem; }\\n\\n.component-checkbox .checkbox-group label { padding: 0.35rem 0.375rem; }\\n\\n.component-checkbox .checkbox-group .label { font-size: 0.9em; }\\n\\n.component-checkbox .checkbox-group input { opacity: 0; position: absolute; }\\n\\n.component-checkbox .checkbox-group i { display: block; position: relative; border-radius: 0.25rem; width: 1.4rem; height: 1.4rem; border: 0.11765rem solid #767676; -webkit-flex-shrink: 0; flex-shrink: 0; }\\n\\n.component-checkbox .checkbox-group input:checked + i { border-color: #ff4700; background: #ff4700; }\\n\\n.component-checkbox .checkbox-group input:checked + i:after { content: ''; box-sizing: border-box; -webkit-transform: rotate(45deg); transform: rotate(45deg); position: absolute; left: 0.35rem; top: -0.05rem; display: block; width: 0.5rem; height: 1rem; border: 0 solid #ffffff; border-right-width: 0.11765rem; border-bottom-width: 0.11765rem; }\\n\\n.component-checkbox .description { padding-left: 0; padding-right: 0; }\\n\"},{}],23:[function(t,e,n){e.exports=\".section .component-color { padding: 0; }\\n\\n.component-color .value { width: 2.2652rem; height: 1.4rem; border-radius: 0.7rem; box-shadow: 0 0.1rem 0.1rem #2f2f2f; display: block; background: #000; }\\n\\n.component-color .picker-wrap { left: 0; top: 0; right: 0; bottom: 0; position: fixed; padding: 0.7rem 0.375rem; background: rgba(0, 0, 0, 0.65); opacity: 0; -webkit-transition: opacity 100ms ease-in 175ms; transition: opacity 100ms ease-in 175ms; pointer-events: none; z-index: 100; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -webkit-flex-direction: column; flex-direction: column; -webkit-box-pack: center; -webkit-justify-content: center; justify-content: center; -webkit-box-align: center; -webkit-align-items: center; align-items: center; }\\n\\n.component-color .picker-wrap .picker { padding: 0.7rem 0.75rem; background: #484848; box-shadow: 0 0.17647rem 0.88235rem rgba(0, 0, 0, 0.4); border-radius: 0.25rem; width: 100%; max-width: 26rem; overflow: auto; }\\n\\n.component-color .picker-wrap.show { -webkit-transition-delay: 0ms; transition-delay: 0ms; pointer-events: auto; opacity: 1; }\\n\\n.component-color .color-box-wrap { box-sizing: border-box; position: relative; height: 0; width: 100%; padding: 0 0 100% 0; }\\n\\n.component-color .color-box-wrap .color-box-container { position: absolute; height: 99.97%; width: 100%; left: 0; top: 0; }\\n\\n.component-color .color-box-wrap .color-box-container .color-box { float: left; cursor: pointer; -webkit-tap-highlight-color: transparent; }\\n\\n.component-color .color-box-wrap .color-box-container .color-box.rounded-tl { border-top-left-radius: 0.25rem; }\\n\\n.component-color .color-box-wrap .color-box-container .color-box.rounded-tr { border-top-right-radius: 0.25rem; }\\n\\n.component-color .color-box-wrap .color-box-container .color-box.rounded-bl { border-bottom-left-radius: 0.25rem; }\\n\\n.component-color .color-box-wrap .color-box-container .color-box.rounded-br { border-bottom-right-radius: 0.25rem; }\\n\\n.component-color .color-box-wrap .color-box-container .color-box.selected { -webkit-transform: scale(1.1); transform: scale(1.1); border-radius: 0.25rem; box-shadow: #111 0 0 0.24rem; position: relative; z-index: 100; }\\n\"},{}],24:[function(t,e,n){e.exports=\".section .component-input { padding: 0; }\\n\\n.component-input label { display: block; }\\n\\n.component-input .label { padding-bottom: 0.7rem; }\\n\\n.component-input .input { position: relative; min-width: 100%; margin-top: 0.7rem; margin-left: 0; }\\n\\n.component-input input { display: block; width: 100%; background: #333333; border-radius: 0.25rem; padding: 0.35rem 0.375rem; border: none; vertical-align: baseline; color: #ffffff; font-size: inherit; -webkit-appearance: none; appearance: none; min-height: 2.1rem; }\\n\\n.component-input input::-webkit-input-placeholder { color: #858585; }\\n\\n.component-input input::-moz-placeholder { color: #858585; }\\n\\n.component-input input:-moz-placeholder { color: #858585; }\\n\\n.component-input input:-ms-input-placeholder { color: #858585; }\\n\\n.component-input input:focus { border: none; box-shadow: none; }\\n\\n.component-input input:focus::-webkit-input-placeholder { color: #666666; }\\n\\n.component-input input:focus::-moz-placeholder { color: #666666; }\\n\\n.component-input input:focus:-moz-placeholder { color: #666666; }\\n\\n.component-input input:focus:-ms-input-placeholder { color: #666666; }\\n\"},{}],25:[function(t,e,n){e.exports=\".component-radio { display: block; }\\n\\n.section .component-radio { padding-right: 0.375rem; }\\n\\n.component-radio > .label { display: block; padding-bottom: 0.35rem; }\\n\\n.component-radio .radio-group { padding-bottom: 0.35rem; }\\n\\n.component-radio .radio-group label { padding: 0.35rem 0.375rem; }\\n\\n.component-radio .radio-group .label { font-size: 0.9em; }\\n\\n.component-radio .radio-group input { opacity: 0; position: absolute; }\\n\\n.component-radio .radio-group i { display: block; position: relative; border-radius: 1.4rem; width: 1.4rem; height: 1.4rem; border: 2px solid #767676; -webkit-flex-shrink: 0; flex-shrink: 0; }\\n\\n.component-radio .radio-group input:checked + i { border-color: #ff4700; }\\n\\n.component-radio .radio-group input:checked + i:after { content: ''; display: block; position: absolute; left: 15%; right: 15%; top: 15%; bottom: 15%; border-radius: 1.4rem; background: #ff4700; }\\n\\n.component-radio .description { padding-left: 0; padding-right: 0; }\\n\"},{}],26:[function(t,e,n){e.exports='.section .component-select { padding: 0; }\\n\\n.component-select label { position: relative; }\\n\\n.component-select .value { position: relative; padding-right: 1.1rem; display: block; }\\n\\n.component-select .value:after { content: \"\"; position: absolute; right: 0; top: 50%; margin-top: -0.1rem; height: 0; width: 0; border-left: 0.425rem solid transparent; border-right: 0.425rem solid transparent; border-top: 0.425rem solid #ff4700; }\\n\\n.component-select select { opacity: 0; position: absolute; display: block; left: 0; right: 0; top: 0; bottom: 0; width: 100%; border: none; margin: 0; padding: 0; }\\n'},{}],27:[function(t,e,n){e.exports=\".section .component-slider { padding: 0; }\\n\\n.component-slider label { display: block; }\\n\\n.component-slider .label-container { display: -webkit-box; display: -webkit-flex; display: flex; -webkit-box-align: center; -webkit-align-items: center; align-items: center; width: 100%; padding-bottom: 0.7rem; }\\n\\n.component-slider .label { -webkit-box-flex: 1; -webkit-flex: 1; flex: 1; min-width: 1rem; display: block; padding-right: 0.75rem; }\\n\\n.component-slider .value-wrap { display: block; position: relative; }\\n\\n.component-slider .value, .component-slider .value-pad { display: block; background: #333333; border-radius: 0.25rem; padding: 0.35rem 0.375rem; border: none; vertical-align: baseline; color: #ffffff; text-align: right; margin: 0; min-width: 1rem; }\\n\\n.component-slider .value-pad { visibility: hidden; }\\n\\n.component-slider .value-pad:before { content: ' '; display: inline-block; }\\n\\n.component-slider .value { max-width: 100%; position: absolute; left: 0; top: 0; }\\n\\n.component-slider .input-wrap { padding: 0 0.75rem 0.7rem; }\\n\\n.component-slider .input { display: block; position: relative; min-width: 100%; height: 1.4rem; overflow: hidden; margin-left: 0; }\\n\\n.component-slider .input:before { content: ''; display: block; position: absolute; height: 0.17647rem; background: #666666; width: 100%; top: 0.61176rem; }\\n\\n.component-slider .input .slider { display: block; width: 100%; -webkit-appearance: none; appearance: none; position: relative; height: 1.4rem; margin: 0; background-color: transparent; }\\n\\n.component-slider .input .slider:focus { outline: none; }\\n\\n.component-slider .input .slider::-webkit-slider-runnable-track { border: none; height: 1.4rem; width: 100%; background-color: transparent; }\\n\\n.component-slider .input .slider::-webkit-slider-thumb { -webkit-appearance: none; appearance: none; position: relative; height: 1.4rem; width: 1.4rem; background-color: #ff4700; border-radius: 50%; }\\n\\n.component-slider .input .slider::-webkit-slider-thumb:before { content: \\\"\\\"; position: absolute; left: -1000px; top: 0.61176rem; height: 0.17647rem; width: 1001px; background: #ff4700; }\\n\"},{}],28:[function(t,e,n){e.exports=\".component-submit { text-align: center; }\\n\"},{}],29:[function(t,e,n){e.exports=\".section .component-toggle { padding: 0; }\\n\\n.component-toggle input { display: none; }\\n\\n.component-toggle .graphic { display: inline-block; position: relative; }\\n\\n.component-toggle .graphic .slide { display: block; border-radius: 1.05rem; height: 1.05rem; width: 2.2652rem; background: #2f2f2f; -webkit-transition: background-color 150ms linear; transition: background-color 150ms linear; }\\n\\n.component-toggle .graphic .marker { background: #ececec; width: 1.4rem; height: 1.4rem; border-radius: 1.4rem; position: absolute; left: 0; display: block; top: -0.175rem; -webkit-transition: -webkit-transform 150ms linear; transition: -webkit-transform 150ms linear; transition: transform 150ms linear; transition: transform 150ms linear, -webkit-transform 150ms linear; box-shadow: 0 0.1rem 0.1rem #2f2f2f; }\\n\\n.component-toggle input:checked + .graphic .slide { background: #993d19; }\\n\\n.component-toggle input:checked + .graphic .marker { background: #ff4700; -webkit-transform: translateX(0.8652rem); transform: translateX(0.8652rem); }\\n\"},{}],30:[function(t,e,n){e.exports='<div class=\"component component-button\">\\n  <button\\n    type=\"button\"\\n    data-manipulator-target\\n    class=\"{{primary ? \\'primary\\' : \\'\\'}}\"\\n    {{each key: attributes}}{{key}}=\"{{this}}\"{{/each}}\\n  ></button>\\n  {{if description}}\\n    <div class=\"description\">{{{description}}}</div>\\n  {{/if}}\\n</div>\\n'},{}],31:[function(t,e,n){e.exports='<div class=\"component component-checkbox\">\\n  <span class=\"label\">{{{label}}}</span>\\n  <div class=\"checkbox-group\">\\n    {{each options}}\\n      <label class=\"tap-highlight\">\\n        <span class=\"label\">{{{this}}}</span>\\n        <input type=\"checkbox\" value=\"1\" name=\"clay-{{clayId}}\" />\\n        <i></i>\\n      </label>\\n    {{/each}}\\n  </div>\\n  {{if description}}\\n    <div class=\"description\">{{{description}}}</div>\\n  {{/if}}\\n</div>\\n'},{}],32:[function(t,e,n){e.exports='<div class=\"component component-color\">\\n  <label class=\"tap-highlight\">\\n    <input\\n      data-manipulator-target\\n      type=\"hidden\"\\n    />\\n    <span class=\"label\">{{{label}}}</span>\\n    <span class=\"value\"></span>\\n  </label>\\n  {{if description}}\\n    <div class=\"description\">{{{description}}}</div>\\n  {{/if}}\\n  <div class=\"picker-wrap\">\\n    <div class=\"picker\">\\n      <div class=\"color-box-wrap\">\\n        <div class=\"color-box-container\"></div>\\n      </div>\\n    </div>\\n  </div>\\n</div>\\n'},{}],33:[function(t,e,n){e.exports='<footer data-manipulator-target class=\"component component-footer\"></footer>\\n'},{}],34:[function(t,e,n){e.exports='<div class=\"component component-heading\">\\n  <h{{size}} data-manipulator-target></h{{size}}>\\n</div>\\n'},{}],35:[function(t,e,n){e.exports='<div class=\"component component-input\">\\n  <label class=\"tap-highlight\">\\n    <span class=\"label\">{{{label}}}</span>\\n    <span class=\"input\">\\n      <input\\n      data-manipulator-target\\n        {{each key: attributes}}{{key}}=\"{{this}}\"{{/each}}\\n    />\\n    </span>\\n  </label>\\n\\n  {{if description}}\\n    <div class=\"description\">{{{description}}}</div>\\n  {{/if}}\\n</div>\\n'},{}],36:[function(t,e,n){e.exports='<div class=\"component component-radio\">\\n  <span class=\"label\">{{{label}}}</span>\\n  <div class=\"radio-group\">\\n    {{each options}}\\n      <label class=\"tap-highlight\">\\n        <span class=\"label\">{{{this.label}}}</span>\\n        <input\\n          type=\"radio\"\\n          value=\"{{this.value}}\"\\n          name=\"clay-{{clayId}}\"\\n          {{each key: attributes}}{{key}}=\"{{this}}\"{{/each}}\\n        />\\n        <i></i>\\n      </label>\\n    {{/each}}\\n  </div>\\n  {{if description}}\\n    <div class=\"description\">{{{description}}}</div>\\n  {{/if}}\\n</div>\\n'},{}],37:[function(t,e,n){e.exports='<div class=\"component component-select\">\\n  <label class=\"tap-highlight\">\\n    <span class=\"label\">{{{label}}}</span>\\n    <span class=\"value\"></span>\\n    <select data-manipulator-target {{each key: attributes}}{{key}}=\"{{this}}\"{{/each}}>\\n      {{each options}}\\n        {{if Array.isArray(this.value)}}\\n          <optgroup label=\"{{this.label}}\">\\n            {{each this.value}}\\n              <option value=\"{{this.value}}\" class=\"item-select-option\">{{this.label}}</option>\\n            {{/each}}\\n          </optgroup>\\n        {{else}}\\n          <option value=\"{{this.value}}\" class=\"item-select-option\">{{this.label}}</option>\\n        {{/if}}\\n      {{/each}}\\n    </select>\\n  </label>\\n  {{if description}}\\n    <div class=\"description\">{{{description}}}</div>\\n  {{/if}}\\n</div>\\n'},{}],38:[function(t,e,n){e.exports='<div class=\"component component-slider\">\\n  <label class=\"tap-highlight\">\\n    <span class=\"label-container\">\\n      <span class=\"label\">{{{label}}}</span>\\n      <span class=\"value-wrap\">\\n        <span class=\"value-pad\"></span>\\n        <input type=\"text\" class=\"value\" />\\n      </span>\\n    </span>\\n    <span class=\"input\">\\n      <input\\n        data-manipulator-target\\n        class=\"slider\"\\n        type=\"range\"\\n        min=\"{{min}}\"\\n        max=\"{{max}}\"\\n        step=\"{{step}}\"\\n        {{each key: attributes}}{{key}}=\"{{this}}\"{{/each}}\\n      />\\n    </span>\\n</label>\\n  {{if description}}\\n    <div class=\"description\">{{{description}}}</div>\\n  {{/if}}\\n</div>\\n'},{}],39:[function(t,e,n){e.exports='<div class=\"component component-submit\">\\n  <button\\n    data-manipulator-target\\n    type=\"submit\"\\n    {{each key: attributes}}{{key}}=\"{{this}}\"{{/each}}\\n  ></button>\\n</div>\\n'},{}],40:[function(t,e,n){e.exports='<div class=\"component component-text\">\\n  <p data-manipulator-target></p>\\n</div>\\n'},{}],41:[function(t,e,n){e.exports='<div class=\"component component-toggle\">\\n  <label class=\"tap-highlight\">\\n    <span class=\"label\">{{{label}}}</span>\\n    <span class=\"input\">\\n      <input\\n        data-manipulator-target\\n        type=\"checkbox\"\\n        {{each key: attributes}}{{key}}=\"{{this}}\"{{/each}}\\n      />\\n      <span class=\"graphic\">\\n        <span class=\"slide\"></span>\\n        <span class=\"marker\"></span>\\n      </span>\\n    </span>\\n  </label>\\n  {{if description}}\\n    <div class=\"description\">{{{description}}}</div>\\n  {{/if}}\\n</div>\\n'},{}],42:[function(t,e,n){e.exports='<!DOCTYPE html><html lang=\"en\"><head><meta charset=\"utf-8\"><style>@font-face{font-family:PFDinDisplayProRegularWebfont;src:url(data:application/font-woff;charset=utf-8;base64,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) format(\"woff\");font-weight:400;font-style:normal}a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,p,pre,q,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;outline:0;font-size:100%;font:inherit;vertical-align:baseline}button,input,textarea{outline:0}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote:after,blockquote:before,q:after,q:before{content:\\'\\';content:none}html{box-sizing:border-box}*,:after,:before{box-sizing:inherit}body,html{font-weight:400;font-family:PFDinDisplayPro-Regular,PFDinDisplayProRegularWebfont,sans-serif;-webkit-font-smoothing:antialiased;font-size:17px;line-height:1.4;height:100%;color:#fff}body.platform-ios,html.platform-ios{font-size:16px}body{background-color:#333;padding:0 .75rem .7rem}em{font-style:italic}strong{font-weight:400;font-family:PFDinDisplayPro-Medium,PFDinDisplayProRegularWebfont,sans-serif;color:#ff4700}.platform-android strong{font-family:PFDinDisplayProRegularWebfont,sans-serif;font-weight:700;letter-spacing:.025em}a{color:#858585}a:hover{color:inherit}h1,h2,h3,h4{text-transform:uppercase;font-weight:400;font-family:PFDinDisplayPro-Medium,PFDinDisplayProRegularWebfont,sans-serif;text-transform:uppercase;position:relative;top:.05rem;line-height:.9}.platform-android h1,.platform-android h2,.platform-android h3,.platform-android h4{font-family:PFDinDisplayProRegularWebfont,sans-serif;font-weight:700;letter-spacing:.025em}h1{font-size:2rem;line-height:2.8rem}h2{font-size:1.8rem;line-height:2.8rem}h3{font-size:1.5rem;line-height:2.8rem}h4{font-size:1.2rem;line-height:1.4rem}h5{font-size:1rem;line-height:1.4rem}h6{font-size:.8rem;line-height:1.4rem}input{font-family:inherit;font-size:inherit;line-height:inherit}label{display:-webkit-box;display:-webkit-flex;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;-webkit-box-align:center;-webkit-align-items:center;align-items:center;padding:.7rem .75rem}label .input{white-space:nowrap;display:-webkit-box;display:-webkit-flex;display:flex;max-width:50%;margin-left:.75rem}label.invalid .input:after{content:\"!\";display:inline-block;color:#fff;background:#ff4700;border-radius:.55rem;width:1.1rem;text-align:center;height:1.1rem;font-size:.825rem;vertical-align:middle;line-height:1.1rem;box-shadow:0 .1rem .1rem #2f2f2f;font-weight:400;font-family:PFDinDisplayPro-Medium,PFDinDisplayProRegularWebfont,sans-serif;-webkit-box-flex:0;-webkit-flex:0 0 1.1rem;flex:0 0 1.1rem;margin-left:.3rem}.platform-android label.invalid .input:after{font-family:PFDinDisplayProRegularWebfont,sans-serif;font-weight:700;letter-spacing:.025em}.hide{display:none!important}.tap-highlight{-webkit-tap-highlight-color:rgba(255,255,255,.1);border-radius:.25rem}.tap-highlight:active{background-color:rgba(255,255,255,.1)}.component{padding-top:.7rem}.component.disabled{pointer-events:none}.component.disabled>*{opacity:.25}.section{background:#484848;border-radius:.25rem;box-shadow:#2f2f2f 0 .15rem .25rem}.section>.component{padding-bottom:.7rem;padding-right:.75rem;padding-left:.75rem;position:relative;margin-top:1rem}.section>.component:not(.hide)~.component{margin-top:0}.section>.component:first-child:after{display:none}.section>.component:after{content:\"\";background:#666;display:block;position:absolute;top:0;left:.375rem;right:.375rem;height:1px;pointer-events:none}.section>.component:not(.hide):after{display:none}.section>.component:not(.hide)~.component:not(.hide):after{display:block}.section>.component-heading:first-child{background:#414141;border-radius:.25rem .25rem 0 0}.section>.component-heading:first-child:after,.section>.component-heading:first-child~.component:not(.hide):after{display:none}.section>.component-heading:first-child~.component:not(.hide)~.component:not(.hide):after{display:block}.description{padding:0 .75rem .7rem;font-size:.9rem;line-height:1.4rem;color:#a4a4a4;text-align:left}.inputs{display:block;width:100%;border-collapse:collapse}.button,button{font-weight:400;font-family:PFDinDisplayPro-Medium,PFDinDisplayProRegularWebfont,sans-serif;font-size:1rem;line-height:1.4rem;text-transform:uppercase;background-color:#767676;border-radius:.25rem;border:none;display:inline-block;color:#fff;min-width:12rem;text-align:center;margin:0 auto .7rem;padding:.6rem;-webkit-tap-highlight-color:#858585}.platform-android .button,.platform-android button{font-family:PFDinDisplayProRegularWebfont,sans-serif;font-weight:700;letter-spacing:.025em}.button:active,button:active{background-color:#858585}.platform-ios .button,.platform-ios button{padding:.5rem}.button.primary,.button[type=submit],button.primary,button[type=submit]{background-color:#ff4700;-webkit-tap-highlight-color:red}.button.primary:active,.button[type=submit]:active,button.primary:active,button[type=submit]:active{background-color:red}a.button{text-decoration:none;color:#fff}</style><meta name=\"viewport\"content=\"width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no\"><script>window.returnTo=\"$$RETURN_TO$$\",window.clayConfig=$$CONFIG$$,window.claySettings=$$SETTINGS$$,window.customFn=$$CUSTOM_FN$$,window.clayComponents=$$COMPONENTS$$,window.clayMeta=$$META$$</script></head><body><form id=\"main-form\"class=\"inputs\"></form><script>!function t(e,n,r){function i(a,u){if(!n[a]){if(!e[a]){var s=\"function\"==typeof require&&require;if(!u&&s)return s(a,!0);if(o)return o(a,!0);var c=new Error(\"Cannot find module \\'\"+a+\"\\'\");throw c.code=\"MODULE_NOT_FOUND\",c}var f=n[a]={exports:{}};e[a][0].call(f.exports,function(t){var n=e[a][1][t];return i(n?n:t)},f,f.exports,t,e,n,r)}return n[a].exports}for(var o=\"function\"==typeof require&&require,a=0;a<r.length;a++)i(r[a]);return i}({1:[function(t,e,n){\"use strict\";var r=t(\"./vendor/minified\"),i=t(\"./lib/clay-config\"),o=r.$,a=r._,u=a.extend([],window.clayConfig||[]),s=a.extend({},window.claySettings||{}),c=window.returnTo||\"pebblejs://close#\",f=window.customFn||function(){},l=window.clayComponents||{},h=window.clayMeta||{},m=window.navigator.userAgent.match(/android/i)?\"android\":\"ios\";document.documentElement.classList.add(\"platform-\"+m),a.eachObj(l,function(t,e){i.registerComponent(e)});var p=o(\"#main-form\"),d=new i(s,u,p,h);p.on(\"submit\",function(){location.href=c+encodeURIComponent(JSON.stringify(d.serialize()))}),f.call(d,r),d.build()},{\"./lib/clay-config\":2,\"./vendor/minified\":8}],2:[function(t,e,n){\"use strict\";function r(t,e,n,c){function f(){m=[],p={},d={},g=!1}function l(t,e){if(Array.isArray(t))t.forEach(function(t){l(t,e)});else if(u.includesCapability(c.activeWatchInfo,t.capabilities))if(\"section\"===t.type){var n=i(\\'<div class=\"section\">\\');e.add(n),l(t.items,n)}else{var r=o.copyObj(t);r.clayId=m.length;var s=new a(r).initialize(v);r.id&&(p[r.id]=s),r.messageKey&&(d[r.messageKey]=s),m.push(s);var f=\"undefined\"!=typeof y[r.messageKey]?y[r.messageKey]:r.defaultValue;s.set(\"undefined\"!=typeof f?f:\"\"),e.add(s.$element)}}function h(t){if(!g)throw new Error(\"ClayConfig not built. build() must be run before you can run \"+t+\"()\");return!0}var m,p,d,g,v=this,y=o.copyObj(t);v.meta=c,v.$rootContainer=n,v.EVENTS={BEFORE_BUILD:\"BEFORE_BUILD\",AFTER_BUILD:\"AFTER_BUILD\",BEFORE_DESTROY:\"BEFORE_DESTROY\",AFTER_DESTROY:\"AFTER_DESTROY\"},u.updateProperties(v.EVENTS,{writable:!1}),v.getAllItems=function(){return h(\"getAllItems\"),m},v.getItemByMessageKey=function(t){return h(\"getItemByMessageKey\"),d[t]},v.getItemById=function(t){return h(\"getItemById\"),p[t]},v.getItemsByType=function(t){return h(\"getItemsByType\"),m.filter(function(e){return e.config.type===t})},v.getItemsByGroup=function(t){return h(\"getItemsByGroup\"),m.filter(function(e){return e.config.group===t})},v.serialize=function(){return h(\"serialize\"),y={},o.eachObj(d,function(t,e){y[t]={value:e.get()},e.precision&&(y[t].precision=e.precision)}),y},v.registerComponent=r.registerComponent,v.destroy=function(){var t=n[0];for(v.trigger(v.EVENTS.BEFORE_DESTROY);t.firstChild;)t.removeChild(t.firstChild);return f(),v.trigger(v.EVENTS.AFTER_DESTROY),v},v.build=function(){return g&&v.destroy(),v.trigger(v.EVENTS.BEFORE_BUILD),l(v.config,n),g=!0,v.trigger(v.EVENTS.AFTER_BUILD),v},f(),s.call(v,n),u.updateProperties(v,{writable:!1,configurable:!1}),v.config=e}var i=t(\"../vendor/minified\").HTML,o=t(\"../vendor/minified\")._,a=t(\"./clay-item\"),u=t(\"../lib/utils\"),s=t(\"./clay-events\"),c=t(\"./component-registry\"),f=t(\"./manipulators\");r.registerComponent=function(t){var e=o.copyObj(t);if(c[e.name])return console.warn(\"Component: \"+e.name+\" is already registered. If you wish to override the existing functionality, you must provide a new name\"),!1;if(\"string\"==typeof e.manipulator&&(e.manipulator=f[t.manipulator],!e.manipulator))throw new Error(\"The manipulator: \"+t.manipulator+\" does not exist in the built-in manipulators.\");if(!e.manipulator)throw new Error(\"The manipulator must be defined\");if(\"function\"!=typeof e.manipulator.set||\"function\"!=typeof e.manipulator.get)throw new Error(\"The manipulator must have both a `get` and `set` method\");if(e.style){var n=document.createElement(\"style\");n.type=\"text/css\",n.appendChild(document.createTextNode(e.style)),document.head.appendChild(n)}return c[e.name]=e,!0},e.exports=r},{\"../lib/utils\":7,\"../vendor/minified\":8,\"./clay-events\":3,\"./clay-item\":4,\"./component-registry\":5,\"./manipulators\":6}],3:[function(t,e,n){\"use strict\";function r(t){function e(t){return t.split(\" \").map(function(t){return\"|\"+t.replace(/^\\\\|/,\"\")}).join(\" \")}function n(t,e){var n=o.find(u,function(e){return e.handler===t?e:null});return n||(n={handler:t,proxy:e},u.push(n)),n.proxy}function r(t){return o.find(u,function(e){return e.handler===t?e.proxy:null})}var a=this,u=[];a.on=function(r,i){var o=e(r),a=this,u=n(i,function(){i.apply(a,arguments)});return t.on(o,u),a},a.off=function(t){var e=r(t);return e&&i.off(e),a},a.trigger=function(e,n){return t.trigger(e,n),a}}var i=t(\"../vendor/minified\").$,o=t(\"../vendor/minified\")._;e.exports=r},{\"../vendor/minified\":8}],4:[function(t,e,n){\"use strict\";function r(t){var e=this,n=i[t.type];if(!n)throw new Error(\"The component: \"+t.type+\" is not registered. Make sure to register it with ClayConfig.registerComponent()\");var r={i18n:{foo:\"bar\"}},f=s.extend({},n.defaults||{},t,r),l=s.formatHtml(n.template.trim(),f);e.id=t.id||null,e.messageKey=t.messageKey||null,e.config=t,e.$element=c(l,f),e.$manipulatorTarget=e.$element.select(\"[data-manipulator-target]\"),e.$manipulatorTarget.length||(e.$manipulatorTarget=e.$element),e.initialize=function(t){return\"function\"==typeof n.initialize&&n.initialize.call(e,o,t),e},u.call(e,e.$manipulatorTarget),s.eachObj(n.manipulator,function(t,n){e[t]=n.bind(e)}),a.updateProperties(e,{writable:!1,configurable:!1})}var i=t(\"./component-registry\"),o=t(\"../vendor/minified\"),a=t(\"../lib/utils\"),u=t(\"./clay-events\"),s=o._,c=o.HTML;e.exports=r},{\"../lib/utils\":7,\"../vendor/minified\":8,\"./clay-events\":3,\"./component-registry\":5}],5:[function(t,e,n){\"use strict\";e.exports={}},{}],6:[function(t,e,n){\"use strict\";function r(){return this.$manipulatorTarget.get(\"disabled\")?this:(this.$element.set(\"+disabled\"),this.$manipulatorTarget.set(\"disabled\",!0),this.trigger(\"disabled\"))}function i(){return this.$manipulatorTarget.get(\"disabled\")?(this.$element.set(\"-disabled\"),this.$manipulatorTarget.set(\"disabled\",!1),this.trigger(\"enabled\")):this}function o(){return this.$element[0].classList.contains(\"hide\")?this:(this.$element.set(\"+hide\"),this.trigger(\"hide\"))}function a(){return this.$element[0].classList.contains(\"hide\")?(this.$element.set(\"-hide\"),this.trigger(\"show\")):this}var u=t(\"../vendor/minified\")._;e.exports={html:{get:function(){return this.$manipulatorTarget.get(\"innerHTML\")},set:function(t){return this.get()===t.toString(10)?this:(this.$manipulatorTarget.set(\"innerHTML\",t),this.trigger(\"change\"))},hide:o,show:a},button:{get:function(){return this.$manipulatorTarget.get(\"innerHTML\")},set:function(t){return this.get()===t.toString(10)?this:(this.$manipulatorTarget.set(\"innerHTML\",t),this.trigger(\"change\"))},disable:r,enable:i,hide:o,show:a},val:{get:function(){return this.$manipulatorTarget.get(\"value\")},set:function(t){return this.get()===t.toString(10)?this:(this.$manipulatorTarget.set(\"value\",t),this.trigger(\"change\"))},disable:r,enable:i,hide:o,show:a},slider:{get:function(){return parseFloat(this.$manipulatorTarget.get(\"value\"))},set:function(t){var e=this.get();return this.$manipulatorTarget.set(\"value\",t),this.get()===e?this:this.trigger(\"change\")},disable:r,enable:i,hide:o,show:a},checked:{get:function(){return this.$manipulatorTarget.get(\"checked\")},set:function(t){return!this.get()==!t?this:(this.$manipulatorTarget.set(\"checked\",!!t),this.trigger(\"change\"))},disable:r,enable:i,hide:o,show:a},radiogroup:{get:function(){return this.$element.select(\"input:checked\").get(\"value\")},set:function(t){return this.get()===t.toString(10)?this:(this.$element.select(\\'input[value=\"\\'+t.replace(\\'\"\\',\\'\\\\\\\\\"\\')+\\'\"]\\').set(\"checked\",!0),this.trigger(\"change\"))},disable:r,enable:i,hide:o,show:a},checkboxgroup:{get:function(){var t=[];return this.$element.select(\"input\").each(function(e){t.push(!!e.checked)}),t},set:function(t){var e=this;for(t=Array.isArray(t)?t:[];t.length<this.get().length;)t.push(!1);return u.equals(this.get(),t)?this:(e.$element.select(\"input\").set(\"checked\",!1).each(function(e,n){e.checked=!!t[n]}),e.trigger(\"change\"))},disable:r,enable:i,hide:o,show:a},color:{get:function(){return parseInt(this.$manipulatorTarget.get(\"value\"),10)||0},set:function(t){return t=this.roundColorToLayout(t||0),this.get()===t?this:(this.$manipulatorTarget.set(\"value\",t),this.trigger(\"change\"))},disable:r,enable:i,hide:o,show:a}}},{\"../vendor/minified\":8}],7:[function(t,e,n){\"use strict\";e.exports.updateProperties=function(t,e){Object.getOwnPropertyNames(t).forEach(function(n){Object.defineProperty(t,n,e)})},e.exports.capabilityMap={PLATFORM_APLITE:{platforms:[\"aplite\"],minFwMajor:0,minFwMinor:0},PLATFORM_BASALT:{platforms:[\"basalt\"],minFwMajor:0,minFwMinor:0},PLATFORM_CHALK:{platforms:[\"chalk\"],minFwMajor:0,minFwMinor:0},PLATFORM_DIORITE:{platforms:[\"diorite\"],minFwMajor:0,minFwMinor:0},PLATFORM_EMERY:{platforms:[\"emery\"],minFwMajor:0,minFwMinor:0},BW:{platforms:[\"aplite\",\"diorite\"],minFwMajor:0,minFwMinor:0},COLOR:{platforms:[\"basalt\",\"chalk\",\"emery\"],minFwMajor:0,minFwMinor:0},MICROPHONE:{platforms:[\"basalt\",\"chalk\",\"diorite\",\"emery\"],minFwMajor:0,minFwMinor:0},SMARTSTRAP:{platforms:[\"basalt\",\"chalk\",\"diorite\",\"emery\"],minFwMajor:3,minFwMinor:4},SMARTSTRAP_POWER:{platforms:[\"basalt\",\"chalk\",\"emery\"],minFwMajor:3,minFwMinor:4},HEALTH:{platforms:[\"basalt\",\"chalk\",\"diorite\",\"emery\"],minFwMajor:3,minFwMinor:10},RECT:{platforms:[\"aplite\",\"basalt\",\"diorite\",\"emery\"],minFwMajor:0,minFwMinor:0},ROUND:{platforms:[\"chalk\"],minFwMajor:0,minFwMinor:0},DISPLAY_144x168:{platforms:[\"aplite\",\"basalt\",\"diorite\"],minFwMajor:0,minFwMinor:0},DISPLAY_180x180_ROUND:{platforms:[\"chalk\"],minFwMajor:0,minFwMinor:0},DISPLAY_200x228:{platforms:[\"emery\"],minFwMajor:0,minFwMinor:0}},e.exports.includesCapability=function(t,n){var r=/^NOT_/,i=[];if(!n||!n.length)return!0;for(var o=n.length-1;o>=0;o--){var a=n[o],u=e.exports.capabilityMap[a.replace(r,\"\")];!u||u.platforms.indexOf(t.platform)===-1||u.minFwMajor>t.firmware.major||u.minFwMajor===t.firmware.major&&u.minFwMinor>t.firmware.minor?i.push(!!a.match(r)):i.push(!a.match(r))}return i.indexOf(!1)===-1}},{}],8:[function(t,e,n){e.exports=function(){function t(t){return t.substr(0,3)}function e(t){return t!=lt?\"\"+t:\"\"}function n(t,e){return typeof t==e}function r(t){return n(t,\"string\")}function i(t){return!!t&&n(t,\"object\")}function o(t){return t&&t.nodeType}function a(t){return n(t,\"number\")}function u(t){return i(t)&&!!t.getDay}function s(t){return t===!0||t===!1}function c(t){var e=typeof t;return\"object\"==e?!(!t||!t.getDay):\"string\"==e||\"number\"==e||s(t)}function f(t){return t}function l(t,n,r){return e(t).replace(n,r!=lt?r:\"\")}function h(t){return l(t,/^\\\\s+|\\\\s+$/g)}function m(t,e,n){for(var r in t)t.hasOwnProperty(r)&&e.call(n||t,r,t[r]);return t}function p(t,e,n){if(t)for(var r=0;r<t.length;r++)e.call(n||t,t[r],r);return t}function d(t,e,n){var r=[],i=B(e)?e:function(t){return e!=t};return p(t,function(e,o){i.call(n||t,e,o)&&r.push(e)}),r}function g(t,e,n,r){var i=[];return t(e,function(t,o){P(t=n.call(r||e,t,o))?p(t,function(t){i.push(t)}):t!=lt&&i.push(t)}),i}function v(t){var e=0;return m(t,function(t){e++}),e}function y(t){var e=[];return m(t,function(t){e.push(t)}),e}function b(t,e,n){var r=[];return p(t,function(i,o){r.push(e.call(n||t,i,o))}),r}function w(t,e){var n={};return p(t,function(t,r){n[t]=e}),n}function $(t,e){var n=e||{};for(var r in t)n[r]=t[r];return n}function T(t,e){for(var n=e,r=0;r<t.length;r++)n=$(t[r],n);return n}function M(t){return B(t)?t:function(e,n){if(t===e)return n}}function E(t,e,n){return e==lt?n:e<0?Math.max(t.length+e,0):Math.min(t.length,e)}function F(t,e,n,r){for(var i,o=M(e),a=E(t,r,t.length),u=E(t,n,0);u<a;u++)if((i=o.call(t,t[u],u))!=lt)return i}function x(t,e,n){var r=[];if(t)for(var i=E(t,n,t.length),o=E(t,e,0);o<i;o++)r.push(t[o]);return r}function O(t){return b(t,f)}function j(t,e){var n,r=B(t)?t():t,i=B(e)?e():e;return r==i||r!=lt&&i!=lt&&(c(r)||c(i)?u(r)&&u(i)&&+r==+i:P(r)?r.length==i.length&&!F(r,function(t,e){if(!j(t,i[e]))return!0}):!P(i)&&(n=y(r)).length==v(i)&&!F(n,function(t){if(!j(r[t],i[t]))return!0}))}function A(t,e,n){if(B(t))return t.apply(n&&e,b(n||e,f))}function R(t,e,n){return b(t,function(t){return A(t,e,n)})}function L(t){return\"\\\\\\\\u\"+(\"0000\"+t.charCodeAt(0).toString(16)).slice(-4)}function S(t){return l(t,/[\\\\x00-\\\\x1f\\'\"\\\\u2028\\\\u2029]/g,L)}function _(t,e){return t.split(e)}function C(t,e){if(dt[t])return dt[t];var n=\"with(_.isObject(obj)?obj:{}){\"+b(_(t,/{{|}}}?/g),function(t,e){var n,r=h(t),i=l(r,/^{/),o=r==i?\"esc(\":\"\";return e%2?(n=/^each\\\\b(\\\\s+([\\\\w_]+(\\\\s*,\\\\s*[\\\\w_]+)?)\\\\s*:)?(.*)/.exec(i))?\"each(\"+(h(n[4])?n[4]:\"this\")+\", function(\"+n[2]+\"){\":(n=/^if\\\\b(.*)/.exec(i))?\"if(\"+n[1]+\"){\":(n=/^else\\\\b\\\\s*(if\\\\b(.*))?/.exec(i))?\"}else \"+(n[1]?\"if(\"+n[2]+\")\":\"\")+\"{\":(n=/^\\\\/(if)?/.exec(i))?n[1]?\"}\\\\n\":\"});\\\\n\":(n=/^(var\\\\s.*)/.exec(i))?n[1]+\";\":(n=/^#(.*)/.exec(i))?n[1]:(n=/(.*)::\\\\s*(.*)/.exec(i))?\"print(\"+o+\\'_.formatValue(\"\\'+S(n[2])+\\'\",\\'+(h(n[1])?n[1]:\"this\")+(o&&\")\")+\"));\\\\n\":\"print(\"+o+(h(i)?i:\"this\")+(o&&\")\")+\");\\\\n\":t?\\'print(\"\\'+S(t)+\\'\");\\\\n\\':void 0}).join(\"\")+\"}\",r=new Function(\"obj\",\"each\",\"esc\",\"print\",\"_\",n),i=function(t,n){var i=[];return r.call(n||t,t,function(t,e){P(t)?p(t,function(t,n){e.call(t,t,n)}):m(t,function(t,n){e.call(n,t,n)})},e||f,function(){A(i.push,i,arguments)},rt),i.join(\"\")};return gt.push(i)>pt&&delete dt[gt.shift()],dt[t]=i}function I(t){return l(t,/[<>\\'\"&]/g,function(t){return\"&#\"+t.charCodeAt(0)+\";\"})}function N(t,e){return C(t,I)(e)}function D(t){return function(e,n,r){return t(this,e,n,r)}}function B(t){return\"function\"==typeof t&&!t.item}function P(t){return t&&t.length!=lt&&!r(t)&&!o(t)&&!B(t)&&t!==ot}function H(t){return parseFloat(l(t,/^[^\\\\d-]+/))}function k(t){return t[at]=t[at]||++ct}function q(t,e){var n,r=[],i={};return Q(t,function(t){Q(e(t),function(t){i[n=k(t)]||(r.push(t),i[n]=!0)})}),r}function U(t,e){var n={$position:\"absolute\",$visibility:\"hidden\",$display:\"block\",$height:lt},r=t.get(n),i=t.set(n).get(\"clientHeight\");return t.set(r),i*e+\"px\"}function Y(t,n,i,o,a){return B(n)?this.on(lt,t,n,i,o):r(o)?this.on(t,n,i,lt,o):this.each(function(r,u){Q(t?G(t,r):r,function(t){Q(e(n).split(/\\\\s/),function(e){function n(e,n,r){var f=!a,l=a?r:t;if(a)for(var h=Z(a,t);l&&l!=t&&!(f=h(l));)l=l.parentNode;return!f||s!=e||i.apply(X(l),o||[n,u])&&\"?\"==c||\"|\"==c}function r(t){n(s,t,t.target)||(t.preventDefault(),t.stopPropagation())}var s=l(e,/[?|]/g),c=l(e,/[^?|]/g),h=(\"blur\"==s||\"focus\"==s)&&!!a,m=ct++;t.addEventListener(s,r,h),t.M||(t.M={}),t.M[m]=n,i.M=g(Q,[i.M,function(){t.removeEventListener(s,r,h),delete t.M[m]}],f)})})})}function K(t){R(t.M),t.M=lt}function V(t){ft?ft.push(t):setTimeout(t,0)}function z(t,e,n){return G(t,e,n)[0]}function W(t,e,n){var r=X(document.createElement(t));return P(e)||e!=lt&&!i(e)?r.add(e):r.set(e).add(n)}function J(t){return g(Q,t,function(t){var e;return P(t)?J(t):o(t)?(e=t.cloneNode(!0),e.removeAttribute&&e.removeAttribute(\"id\"),e):t})}function X(t,e,n){return B(t)?V(t):new nt(G(t,e,n))}function G(t,e,n){function i(t){return P(t)?g(Q,t,i):t}function a(t){return d(g(Q,t,i),function(t){for(var r=t;r=r.parentNode;)if(r==e[0]||n)return r==e[0]})}return e?1!=(e=G(e)).length?q(e,function(e){return G(t,e,n)}):r(t)?1!=o(e[0])?[]:n?a(e[0].querySelectorAll(t)):e[0].querySelectorAll(t):a(t):r(t)?document.querySelectorAll(t):g(Q,t,i)}function Z(t,e){function n(t,e){var n=RegExp(\"(^|\\\\\\\\s+)\"+t+\"(?=$|\\\\\\\\s)\",\"i\");return function(r){return!t||n.test(r[e])}}var i={},u=i;if(B(t))return t;if(a(t))return function(e,n){return n==t};if(!t||\"*\"==t||r(t)&&(u=/^([\\\\w-]*)\\\\.?([\\\\w-]*)$/.exec(t))){var s=n(u[1],\"tagName\"),c=n(u[2],\"className\");return function(t){return 1==o(t)&&s(t)&&c(t)}}return e?function(n){return X(t,e).find(n)!=lt}:(X(t).each(function(t){i[k(t)]=!0}),function(t){return i[k(t)]})}function Q(t,e){return P(t)?p(t,e):t!=lt&&e(t,0),t}function tt(){this.state=null,this.values=[],this.parent=null}function et(){var t=[],e=arguments,n=e.length,r=0,o=0,a=new tt;a.errHandled=function(){o++,a.parent&&a.parent.errHandled()};var u=a.fire=function(e,n){return null==a.state&&null!=e&&(a.state=!!e,a.values=P(n)?n:[n],setTimeout(function(){p(t,function(t){t()})},0)),a};p(e,function c(t,e){try{t.then?t.then(function(t){var o;(i(t)||B(t))&&B(o=t.then)?c(t,e):(a.values[e]=O(arguments),++r==n&&u(!0,n<2?a.values[e]:a.values))},function(t){a.values[e]=O(arguments),u(!1,n<2?a.values[e]:[a.values[e][0],a.values,e])}):t(function(){u(!0,O(arguments))},function(){u(!1,O(arguments))})}catch(o){u(!1,[o,a.values,e])}}),a.stop=function(){return p(e,function(t){t.stop&&t.stop()}),a.stop0&&A(a.stop0)};var s=a.then=function(e,n){var r=et(),u=function(){try{var t=a.state?e:n;B(t)?!function s(t){try{var e,n=0;if((i(t)||B(t))&&B(e=t.then)){if(t===r)throw new TypeError;e.call(t,function(t){n++||s(t)},function(t){n++||r.fire(!1,[t])}),r.stop0=t.stop}else r.fire(!0,[t])}catch(a){if(!n++&&(r.fire(!1,[a]),!o))throw a}}(A(t,it,a.values)):r.fire(a.state,a.values)}catch(u){if(r.fire(!1,[u]),!o)throw u}};return B(n)&&a.errHandled(),r.stop0=a.stop,r.parent=a,null!=a.state?setTimeout(u,0):t.push(u),r};return a.always=function(t){return s(t,t)},a.error=function(t){return s(0,t)},a}function nt(t,e){var n=this,r=0;if(t)for(var i=0,o=t.length;i<o;i++){var a=t[i];if(e&&P(a))for(var u=0,s=a.length;u<s;u++)n[r++]=a[u];else n[r++]=a}else n[r++]=e;n.length=r,n._=!0}function rt(){return new nt(arguments,(!0))}var it,ot=window,at=\"Nia\",ut={},st={},ct=1,ft=/^[ic]/.test(document.readyState)?lt:[],lt=null,ht=_(\"January,February,March,April,May,June,July,August,September,October,November,December\",/,/g),mt=(b(ht,t),_(\"Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday\",/,/g)),pt=(b(mt,t),_(\"am,pm\",/,/g),_(\"am,am,am,am,am,am,am,am,am,am,am,am,pm,pm,pm,pm,pm,pm,pm,pm,pm,pm,pm,pm\",/,/g),99),dt={},gt=[];return $({each:D(p),equals:D(j),find:D(F),dummySort:0,select:function(t,e){return X(t,this,e)},get:function(t,e){var n=this,i=n[0];if(i){if(r(t)){var o,a=/^(\\\\W*)(.*)/.exec(l(t,/^%/,\"@data-\")),u=a[1];return o=st[u]?st[u](this,a[2]):\"$\"==t?n.get(\"className\"):\"$$\"==t?n.get(\"@style\"):\"$$slide\"==t?n.get(\"$height\"):\"$$fade\"==t||\"$$show\"==t?\"hidden\"==n.get(\"$visibility\")||\"none\"==n.get(\"$display\")?0:\"$$fade\"==t?isNaN(n.get(\"$opacity\",!0))?1:n.get(\"$opacity\",!0):1:\"$\"==u?ot.getComputedStyle(i,lt).getPropertyValue(l(a[2],/[A-Z]/g,function(t){return\"-\"+t.toLowerCase()})):\"@\"==u?i.getAttribute(a[2]):i[a[2]],e?H(o):o}var s={};return(P(t)?Q:m)(t,function(t){s[t]=n.get(t,e)}),s}},set:function(t,e){var n=this;if(e!==it){var i=/^(\\\\W*)(.*)/.exec(l(l(t,/^\\\\$float$/,\"cssFloat\"),/^%/,\"@data-\")),o=i[1];ut[o]?ut[o](this,i[2],e):\"$$fade\"==t?this.set({$visibility:e?\"visible\":\"hidden\",$opacity:e}):\"$$slide\"==t?n.set({$visibility:e?\"visible\":\"hidden\",$overflow:\"hidden\",$height:/px/.test(e)?e:function(t,n,r){return U(X(r),e)}}):\"$$show\"==t?e?n.set({$visibility:e?\"visible\":\"hidden\",$display:\"\"}).set({$display:function(t){return\"none\"==t?\"block\":t}}):n.set({$display:\"none\"}):\"$$\"==t?n.set(\"@style\",e):Q(this,function(n,r){var a=B(e)?e(X(n).get(t),r,n):e;\"$\"==o?i[2]?n.style[i[2]]=a:Q(a&&a.split(/\\\\s+/),function(t){var e=l(t,/^[+-]/);/^\\\\+/.test(t)?n.classList.add(e):/^-/.test(t)?n.classList.remove(e):n.classList.toggle(e)}):\"$$scrollX\"==t?n.scroll(a,X(n).get(\"$$scrollY\")):\"$$scrollY\"==t?n.scroll(X(n).get(\"$$scrollX\"),a):\"@\"==o?a==lt?n.removeAttribute(i[2]):n.setAttribute(i[2],a):n[i[2]]=a})}else r(t)||B(t)?n.set(\"$\",t):m(t,function(t,e){n.set(t,e)});return n},add:function(t,e){return this.each(function(n,r){function i(t){if(P(t))Q(t,i);else if(B(t))i(t(n,r));else if(t!=lt){var u=o(t)?t:document.createTextNode(t);a?a.parentNode.insertBefore(u,a.nextSibling):e?e(u,n,n.parentNode):n.appendChild(u),a=u}}var a;i(r&&!B(t)?J(t):t)})},on:Y,trigger:function(t,e){return this.each(function(n,r){for(var i=!0,o=n;o&&i;)m(o.M,function(r,o){i=i&&o(t,e,n)}),o=o.parentNode})},ht:function(t,e){var n=arguments.length>2?T(x(arguments,1)):e;return this.set(\"innerHTML\",B(t)?t(n):/{{/.test(t)?N(t,n):/^#\\\\S+$/.test(t)?N(z(t).text,n):t)}},nt.prototype),$({request:function(t,n,r,i){var o,a=i||{},u=0,s=et(),c=r&&r.constructor==a.constructor;try{s.xhr=o=new XMLHttpRequest,s.stop0=function(){o.abort()},c&&(r=g(m,r,function(t,e){return g(Q,e,function(e){return encodeURIComponent(t)+(e!=lt?\"=\"+encodeURIComponent(e):\"\")})}).join(\"&\")),r==lt||/post/i.test(t)||(n+=\"?\"+r,r=lt),o.open(t,n,!0,a.user,a.pass),c&&/post/i.test(t)&&o.setRequestHeader(\"Content-Type\",\"application/x-www-form-urlencoded\"),m(a.headers,function(t,e){o.setRequestHeader(t,e)}),m(a.xhr,function(t,e){o[t]=e}),o.onreadystatechange=function(){4!=o.readyState||u++||(o.status>=200&&o.status<300?s.fire(!0,[o.responseText,o]):s.fire(!1,[o.status,o.responseText,o]))},o.send(r)}catch(f){u||s.fire(!1,[0,lt,e(f)])}return s},ready:V,off:K,wait:function(t,e){var n=et(),r=setTimeout(function(){n.fire(!0,e)},t);return n.stop0=function(){n.fire(!1),clearTimeout(r)},n}},X),$({each:p,toObject:w,find:F,equals:j,copyObj:$,extend:function(t){return T(x(arguments,1),t)},eachObj:m,isObject:i,format:function(t,e,n){return C(t,n)(e)},template:C,formatHtml:N,promise:et},rt),document.addEventListener(\"DOMContentLoaded\",function(){R(ft),ft=lt},!1),{HTML:function(){var t=W(\"div\");return rt(A(t.ht,t,arguments)[0].childNodes)},_:rt,$:X,$$:z,M:nt,getter:st,setter:ut}}()},{}]},{},[1])</script></body></html>';\n},{}],\"pebble-clay\":[function(t,e,n){\"use strict\";function r(t,e,n){function r(){i.meta={activeWatchInfo:Pebble.getActiveWatchInfo&&Pebble.getActiveWatchInfo(),accountToken:Pebble.getAccountToken(),watchToken:Pebble.getWatchToken(),userData:s(n.userData||{})}}function o(t,e,n){Array.isArray(t)?t.forEach(function(t){o(t,e,n)}):\"section\"===t.type?o(t.items,e,n):e(t)&&n(t)}var i=this;if(!Array.isArray(t))throw new Error(\"config must be an Array\");if(e&&\"function\"!=typeof e)throw new Error('customFn must be a function or \"null\"');n=n||{},i.config=s(t),i.customFn=e||function(){},i.components={},i.meta={activeWatchInfo:null,accountToken:\"\",watchToken:\"\",userData:{}},i.version=c,n.autoHandleEvents!==!1&&\"undefined\"!=typeof Pebble?(Pebble.addEventListener(\"showConfiguration\",function(){r(),Pebble.openURL(i.generateUrl())}),Pebble.addEventListener(\"webviewclosed\",function(t){t&&t.response&&Pebble.sendAppMessage(i.getSettings(t.response),function(){console.log(\"Sent config data to Pebble\")},function(t){console.log(\"Failed to send config data!\"),console.log(JSON.stringify(t))})})):\"undefined\"!=typeof Pebble&&Pebble.addEventListener(\"ready\",function(){r()}),o(i.config,function(t){return a[t.type]},function(t){i.registerComponent(a[t.type])}),o(i.config,function(t){return t.appKey},function(){throw new Error(\"appKeys are no longer supported. Please follow the migration guide to upgrade your project\")})}var o=t(\"./tmp/config-page.html\"),i=t(\"tosource\"),a=t(\"./src/scripts/components\"),s=t(\"deepcopy/build/deepcopy.min\"),c=t(\"./package.json\").version,l=t(\"message_keys\");r.prototype.registerComponent=function(t){this.components[t.name]=t},r.prototype.generateUrl=function(){var t={},e=!Pebble||\"pypkjs\"===Pebble.platform,n=e?\"$$$RETURN_TO$$$\":\"pebblejs://close#\";try{t=JSON.parse(localStorage.getItem(\"clay-settings\"))||{}}catch(a){console.error(a.toString())}var s=o.replace(\"$$RETURN_TO$$\",n).replace(\"$$CUSTOM_FN$$\",i(this.customFn)).replace(\"$$CONFIG$$\",i(this.config)).replace(\"$$SETTINGS$$\",i(t)).replace(\"$$COMPONENTS$$\",i(this.components)).replace(\"$$META$$\",i(this.meta));return e?r.encodeDataUri(s,\"http://clay.pebble.com.s3-website-us-west-2.amazonaws.com/#\"):r.encodeDataUri(s)},r.prototype.getSettings=function(t,e){var n={};t=t.match(/^\\{/)?t:decodeURIComponent(t);try{n=JSON.parse(t)}catch(o){throw new Error(\"The provided response was not valid JSON\")}var i={};return Object.keys(n).forEach(function(t){\"object\"==typeof n[t]&&n[t]?i[t]=n[t].value:i[t]=n[t]}),localStorage.setItem(\"clay-settings\",JSON.stringify(i)),e===!1?n:r.prepareSettingsForAppMessage(n)},r.prototype.setSettings=function(t,e){var n={};try{n=JSON.parse(localStorage.getItem(\"clay-settings\"))||{}}catch(r){console.error(r.toString())}if(\"object\"==typeof t){var o=t;Object.keys(o).forEach(function(t){n[t]=o[t]})}else n[t]=e;localStorage.setItem(\"clay-settings\",JSON.stringify(n))},r.encodeDataUri=function(t,e){return e=\"undefined\"!=typeof e?e:\"data:text/html;charset=utf-8,\",e+encodeURIComponent(t)},r.prepareForAppMessage=function(t){function e(t,e){return Math.floor(t*Math.pow(10,e||0))}var n;return Array.isArray(t)?(n=[],t.forEach(function(t,e){n[e]=r.prepareForAppMessage(t)})):n=\"object\"==typeof t&&t?\"number\"==typeof t.value?e(t.value,t.precision):Array.isArray(t.value)?t.value.map(function(n){return\"number\"==typeof n?e(n,t.precision):n}):r.prepareForAppMessage(t.value):\"boolean\"==typeof t?t?1:0:t,n},r.prepareSettingsForAppMessage=function(t){var e={};Object.keys(t).forEach(function(n){var r=t[n],o=n.match(/(.+?)(?:\\[(\\d*)\\])?$/);if(!o[2])return void(e[n]=r);var i=parseInt(o[2],10);n=o[1],\"undefined\"==typeof e[n]&&(e[n]=[]),e[n][i]=r});var n={};return Object.keys(e).forEach(function(t){var o=l[t],i=r.prepareForAppMessage(e[t]);i=Array.isArray(i)?i:[i],i.forEach(function(t,e){n[o+e]=t})}),Object.keys(n).forEach(function(t){if(Array.isArray(n[t]))throw new Error('Clay does not support 2 dimensional arrays for item values. Make sure you are not attempting to use array syntax (eg: \"myMessageKey[2]\") in the messageKey for components that return an array, such as a checkboxgroup')}),n},e.exports=r},{\"./package.json\":7,\"./src/scripts/components\":13,\"./tmp/config-page.html\":42,\"deepcopy/build/deepcopy.min\":3,message_keys:void 0,tosource:6}]},{},[\"pebble-clay\"])(\"pebble-clay\")});\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/pebble-clay/dist/js/index.js\n// module id = 3\n// module chunks = 0","module.exports = function(module) {\n    switch(module) {\n        case \"message_keys\": return require(\"message_keys\");\n    }\n    throw new Error('Module not found: ' + module);\n};\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// /home/louis/.pebble-sdk/SDKs/4.3/sdk-core/pebble/common/include/_message_key_wrapper.js\n// module id = 4\n// module chunks = 0","module.exports = {\"JSReady\":10008,\"accuracy\":10002,\"altitude\":10003,\"altitude_accuracy\":10004,\"latitude\":10000,\"longitude\":10001,\"speed\":10005,\"status\":10007,\"timestamp\":10006}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./build/js/message_keys.json\n// module id = 5\n// module chunks = 0","module.exports = [\n  {\n    \"type\": \"heading\",\n    \"defaultValue\": \"Bike Companion Configuration\"\n  },\n  {\n    \"type\": \"text\",\n    \"defaultValue\": \"This is not used for now, no action will be executed with these info.\"\n  },\n  {\n  \"type\": \"section\",\n    \"items\":\n    [\n      {\n        \"type\": \"heading\",\n        \"defaultValue\": \"Your synology account\"\n      },\n      {\n        \"type\": \"input\",\n        \"messageKey\": \"username\",\n        \"label\": \"Your DSM Username\",\n        \"attributes\":\n        {\n           \"maxlength\":40\n        }\n      },\n      {\n        \"type\": \"input\",\n        \"messageKey\": \"password\",\n        \"label\": \"Your DSM Password\",\n        \"attributes\":\n        {\n          \"type\": \"password\",\n          \"maxlength\":40\n        }\n      },\n      {\n        \"type\": \"input\",\n        \"messageKey\": \"server\",\n        \"label\": \"Your DSM Server\",\n        \"attributes\":\n        {\n          \"type\": \"url\",\n          \"maxlength\":255\n        }\n      }\n    ]\n  },\n  {\n    \"type\": \"submit\",\n    \"defaultValue\": \"Save Settings\"\n  }\n];\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/pkjs/config.js\n// module id = 6\n// module chunks = 0"],"sourceRoot":""}
3 3
\ No newline at end of file
4 4
Binary files a/build/src/c/bike_companion.c.9.o and b/build/src/c/bike_companion.c.9.o differ
... ...
@@ -10,17 +10,17 @@ const uint32_t outbox_size = 64;
10 10
 static uint32_t size ;
11 11
 static char * msg;
12 12
 
13
-static char s_status[2];
13
+static char s_status[3];
14 14
 
15
-//restricting long and lat to 12 char : 0-1 for the sign, 1-3 for integer, 1 for the point, 7-10 for decimal
16
-static char s_longitude[12];
17
-static char s_latitude[12];
15
+//restricting long and lat to 13 char : 0-1 for the sign, 1-3 for integer, 1 for the point, 7-10 for decimal, 1 for \0
16
+static char s_longitude[13];
17
+static char s_latitude[13];
18 18
 
19
-static char s_accuracy[4];
20
-static char s_altitude[5];
21
-static char s_altitude_accuracy[3];
22
-static char s_timestamp[13];
23
-static char s_speed[5];
19
+static char s_accuracy[5];
20
+static char s_altitude[6];
21
+static char s_altitude_accuracy[4];
22
+static char s_timestamp[14];
23
+static char s_speed[6];
24 24
 
25 25
 static char s_msg[50];
26 26
 
... ...
@@ -121,6 +121,7 @@ static void inbox_received_callback(DictionaryIterator *iter, void *context) {
121 121
   Tuple *latitude_tuple = dict_find(iter, MESSAGE_KEY_latitude);
122 122
 
123 123
   if(latitude_tuple) {
124
+    memset(s_latitude,'\0',sizeof(s_latitude));
124 125
     strncpy(s_latitude, latitude_tuple->value->cstring, 12);
125 126
 
126 127
     // Display in the TextLayer
... ...
@@ -134,6 +135,7 @@ static void inbox_received_callback(DictionaryIterator *iter, void *context) {
134 135
   Tuple *longitude_tuple = dict_find(iter, MESSAGE_KEY_longitude);
135 136
 
136 137
   if(longitude_tuple) {
138
+    memset(s_longitude,'\0',sizeof(s_longitude));
137 139
     strncpy(s_longitude, longitude_tuple->value->cstring, 12);
138 140
 
139 141
     // Display in the TextLayer
... ...
@@ -147,6 +149,7 @@ static void inbox_received_callback(DictionaryIterator *iter, void *context) {
147 149
   Tuple *accuracy_tuple = dict_find(iter, MESSAGE_KEY_accuracy);
148 150
 
149 151
   if(accuracy_tuple) {
152
+    memset(s_accuracy,'\0',sizeof(s_accuracy));
150 153
     strncpy(s_accuracy, accuracy_tuple->value->cstring, 4);
151 154
 
152 155
     // Display in the TextLayer
... ...
@@ -160,11 +163,12 @@ static void inbox_received_callback(DictionaryIterator *iter, void *context) {
160 163
   Tuple *altitude_tuple = dict_find(iter, MESSAGE_KEY_altitude);
161 164
 
162 165
   if(altitude_tuple) {
166
+    memset(s_altitude,'\0',sizeof(s_altitude));
163 167
     strncpy(s_altitude, altitude_tuple->value->cstring, 5);
164 168
 
165 169
     // Display in the TextLayer
166 170
     //text_layer_set_text(s_text_layer, lf_altitude);
167
-    APP_LOG(APP_LOG_LEVEL_DEBUG, "altitude message received : %s",s_altitude);
171
+    APP_LOG(APP_LOG_LEVEL_DEBUG, "altitude message received : %s",altitude_tuple->value->cstring);
168 172
   }else{
169 173
     //APP_LOG(APP_LOG_LEVEL_DEBUG, "not altitude message... ");
170 174
   }
... ...
@@ -173,6 +177,7 @@ static void inbox_received_callback(DictionaryIterator *iter, void *context) {
173 177
   Tuple *altitude_accuracy_tuple = dict_find(iter, MESSAGE_KEY_altitude_accuracy);
174 178
 
175 179
   if(altitude_accuracy_tuple) {
180
+    memset(s_altitude_accuracy,'\0',sizeof(s_altitude_accuracy));
176 181
     strncpy(s_altitude_accuracy, altitude_accuracy_tuple->value->cstring, 3);
177 182
 
178 183
     // Display in the TextLayer
... ...
@@ -186,6 +191,7 @@ static void inbox_received_callback(DictionaryIterator *iter, void *context) {
186 191
   Tuple *timestamp_tuple = dict_find(iter, MESSAGE_KEY_timestamp);
187 192
 
188 193
   if(timestamp_tuple) {
194
+    memset(s_timestamp,'\0',sizeof(s_timestamp));
189 195
     strncpy(s_timestamp, timestamp_tuple->value->cstring, 13);
190 196
 
191 197
     // Display in the TextLayer
... ...
@@ -200,6 +206,7 @@ static void inbox_received_callback(DictionaryIterator *iter, void *context) {
200 206
   Tuple *speed_tuple = dict_find(iter, MESSAGE_KEY_speed);
201 207
 
202 208
   if(speed_tuple) {
209
+    memset(s_speed,'\0',sizeof(s_speed));
203 210
     strncpy(s_speed, speed_tuple->value->cstring, 5);
204 211
 
205 212
     // Display in the TextLayer
... ...
@@ -214,20 +221,21 @@ static void inbox_received_callback(DictionaryIterator *iter, void *context) {
214 221
   Tuple *status_tuple = dict_find(iter, MESSAGE_KEY_status);
215 222
 
216 223
   if(status_tuple) {
224
+    memset(s_status,'\0',sizeof(s_status));
217 225
     strncpy(s_status, status_tuple->value->cstring, 2);
218 226
     APP_LOG(APP_LOG_LEVEL_DEBUG, "status message received : %s",s_status);
219 227
 
220 228
     // DEBUG concatenate all data received
221
-    memset(s_msg,0,sizeof(s_msg));
229
+    memset(s_msg,'\0',sizeof(s_msg));
222 230
     strncpy(s_msg, s_status, 2);/*
223 231
     strcat(s_msg, "Lat. ");
224 232
     strcat(s_msg, s_latitude);
225 233
     strcat(s_msg, "\n Long. ");
226 234
     strcat(s_msg, s_longitude);
227 235
     strcat(s_msg, "\n Acc. ");
228
-    strcat(s_msg, s_accuracy);
236
+    strcat(s_msg, s_accuracy);*/
229 237
     strcat(s_msg, "\n Alt. ");
230
-    strcat(s_msg, s_altitude);*/
238
+    strcat(s_msg, s_altitude);
231 239
     strcat(s_msg, "\n Speed. ");
232 240
     strcat(s_msg, s_speed);
233 241
     /*strcat(s_msg, "\n Time. ");
... ...
@@ -260,7 +268,7 @@ static void outbox_failed_callback(DictionaryIterator *iter, AppMessageResult re
260 268
 static void prv_init(void) {
261 269
 
262 270
   // Open AppMessage
263
-  app_message_open(app_message_inbox_size_maximum(), outbox_size);
271
+  app_message_open(inbox_size, outbox_size);
264 272
 
265 273
   // Register to be notified about inbox received events
266 274
   app_message_register_inbox_received(inbox_received_callback);
... ...
@@ -4,44 +4,41 @@ var clay = new Clay(clayConfig);
4 4
 
5 5
 var messageKeys = require('message_keys');
6 6
 
7
-//var sid;
8
-var status;
9
-//var retry;
10
-//retry = 1;
7
+var message;
11 8
 
12 9
 var locationInterval;
13 10
 var locationOptions = {
14
-    'enableHighAccuracy': true, // default = false (quick and dirty mode), can be true (more accurate but need more power and time)
15
-    'timeout': 2000, //2s timeout
16
-    'maximumAge': 1000 // 1s cache
11
+  'enableHighAccuracy': true, // default = false (quick and dirty mode), can be true (more accurate but need more power and time)
12
+  'timeout': 2000, //2s timeout
13
+  'maximumAge': 1000 // 1s cache
17 14
 };
18 15
 
19 16
 // Store location in Pebble app local storage
20 17
 //
21 18
 function storeLocation(position) {
22
-    var latitude = position.coords.latitude;
23
-    var longitude = position.coords.longitude;
24
-    var timestamp = position.timestamp;
25
-    localStorage.setItem("latitude", latitude);
26
-    localStorage.setItem("longitude", longitude);
27
-    localStorage.setItem("timestamp", timestamp);
28
-    // console.log("Stored location " + position.coords.latitude + ',' + position.coords.longitude);
19
+  var latitude = position.coords.latitude;
20
+  var longitude = position.coords.longitude;
21
+  var timestamp = position.timestamp;
22
+  localStorage.setItem("latitude", latitude);
23
+  localStorage.setItem("longitude", longitude);
24
+  localStorage.setItem("timestamp", timestamp);
25
+  // console.log("Stored location " + position.coords.latitude + ',' + position.coords.longitude);
29 26
 }
30 27
 
31 28
 // Get location from Pebble app local storage
32 29
 //
33 30
 function getLocation() {
34
-    if ( localStorage.getItem("latitude") || localStorage.getItem("longitude") || localStorage.getItem("timestamp")) {
35
-        var la = localStorage.getItem("latitude");
36
-        var lo = localStorage.getItem("longitude");
37
-        var ti = localStorage.getItem("timestamp");
38
-        var co = { "latitude": la, "longitude": lo };
39
-        var pos = { "coords": co, "timestamp": ti };
40
-        // console.log("Stored location " + pos.co.la + ',' + pos.co.lo);
41
-        return pos;
42
-    }else{
43
-        return null;
44
-    }
31
+  if (localStorage.getItem("latitude") || localStorage.getItem("longitude") || localStorage.getItem("timestamp")) {
32
+    var la = localStorage.getItem("latitude");
33
+    var lo = localStorage.getItem("longitude");
34
+    var ti = localStorage.getItem("timestamp");
35
+    var co = { "latitude": la, "longitude": lo };
36
+    var pos = { "coords": co, "timestamp": ti };
37
+    // console.log("Stored location " + pos.co.la + ',' + pos.co.lo);
38
+    return pos;
39
+  } else {
40
+    return null;
41
+  }
45 42
 }
46 43
 
47 44
 
... ...
@@ -49,132 +46,168 @@ function getLocation() {
49 46
 // IMPORTANT : this is a calculation from 2D projection, altitude is not involved
50 47
 //
51 48
 function distance_on_geoid(lat1, lon1, lat2, lon2) {
52
-    // Convert degrees to radians
53
-    lat1 = lat1 * Math.PI / 180.0;
54
-    lon1 = lon1 * Math.PI / 180.0;
55
-    lat2 = lat2 * Math.PI / 180.0;
56
-    lon2 = lon2 * Math.PI / 180.0;
57
-    // radius of earth in metres
58
-    r = 6378100;
59
-    // P
60
-    rho1 = r * Math.cos(lat1);
61
-    z1 = r * Math.sin(lat1);
62
-    x1 = rho1 * Math.cos(lon1);
63
-    y1 = rho1 * Math.sin(lon1);
64
-    // Q
65
-    rho2 = r * Math.cos(lat2);
66
-    z2 = r * Math.sin(lat2);
67
-    x2 = rho2 * Math.cos(lon2);
68
-    y2 = rho2 * Math.sin(lon2);
69
-    // Dot product
70
-    dot = (x1 * x2 + y1 * y2 + z1 * z2);
71
-    cos_theta = dot / (r * r);
72
-    theta = Math.acos(cos_theta);
73
-    // Distance in Metres
74
-    return r * theta;
49
+  // Convert degrees to radians
50
+  lat1 = lat1 * Math.PI / 180.0;
51
+  lon1 = lon1 * Math.PI / 180.0;
52
+  lat2 = lat2 * Math.PI / 180.0;
53
+  lon2 = lon2 * Math.PI / 180.0;
54
+  // radius of earth in metres
55
+  r = 6378100;
56
+  // P
57
+  rho1 = r * Math.cos(lat1);
58
+  z1 = r * Math.sin(lat1);
59
+  x1 = rho1 * Math.cos(lon1);
60
+  y1 = rho1 * Math.sin(lon1);
61
+  // Q
62
+  rho2 = r * Math.cos(lat2);
63
+  z2 = r * Math.sin(lat2);
64
+  x2 = rho2 * Math.cos(lon2);
65
+  y2 = rho2 * Math.sin(lon2);
66
+  // Dot product
67
+  dot = (x1 * x2 + y1 * y2 + z1 * z2);
68
+  cos_theta = dot / (r * r);
69
+  theta = Math.acos(cos_theta);
70
+  // Distance in Metres
71
+  return r * theta;
75 72
 }
76 73
 
77 74
 // Calculate speed from 2 geoloc point arrays (with lat,long,timestamp)
78 75
 //
79 76
 function speed_from_distance_and_time(p1, p2) {
80
-    dist = distance_on_geoid(p1.coords.latitude, p1.coords.longitude, p2.coords.latitude, p2.coords.longitude);
81
-    // timestamp is in milliseconds
82
-    time_s = (p2.timestamp - p1.timestamp) / 1000.0;
83
-    speed_mps = dist / time_s;
84
-    speed_kph = (speed_mps * 3600.0) / 1000.0;
85
-    return speed_kph;
77
+  dist = distance_on_geoid(p1.coords.latitude, p1.coords.longitude, p2.coords.latitude, p2.coords.longitude);
78
+  // timestamp is in milliseconds
79
+  time_s = (p2.timestamp - p1.timestamp) / 1000.0;
80
+  speed_mps = dist / time_s;
81
+  speed_kph = (speed_mps * 3600.0) / 1000.0;
82
+  return speed_kph;
86 83
 }
87 84
 
88 85
 // split float number into an array of int (null returned instead of 0 for decimal)
89 86
 //
90 87
 function splitFloatNumber(num) {
91
-    const intStr = num.toString().split('.')[0];
92
-    const decimalStr = num.toString().split('.')[1];
93
-    return [Number(intStr), Number(decimalStr)];
88
+  const intStr = num.toString().split('.')[0];
89
+  const decimalStr = num.toString().split('.')[1];
90
+  return [Number(intStr), Number(decimalStr)];
91
+}
92
+
93
+// Build GPX headers
94
+//
95
+function GPXHeadersBuilder(timestamp, name, type) {
96
+  var headers = '<?xml version="1.0" encoding="UTF-8"?><gpx creator="Pebble with barometer" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd" version="1.1" xmlns="http://www.topografix.com/GPX/1/1"><metadata><time>' + timestamp + '</time></metadata><trk><name>' + name + '</name><type>' + type + '</type><trkseg>';
97
+  var ret = localStorage.setItem("GPX", headers);
98
+  return true;
99
+}
100
+
101
+// Build GPX footer
102
+//
103
+function GPXtrkptBuilder(lat, lon, ele, timestamp) {
104
+  var GPX = localStorage.getItem("GPX");
105
+  var trkpt = '<trkpt lat="' + lat + '" lon="' + lon + '"><ele>' + ele + '</ele><time>' + timestamp + '</time></trkpt>';
106
+  var ret = localStorage.setItem("GPX", GPX + trkpt);
107
+  return true;
108
+}
109
+
110
+// Build GPX footer
111
+//
112
+function GPXfooterBuilder() {
113
+  var GPX = localStorage.getItem("GPX");
114
+  var footer = '</trkseg></trk></gpx>';
115
+  var ret = localStorage.setItem("GPX", GPX + footer);
116
+  return true;
94 117
 }
95 118
 
119
+// Adding leading characters to string for nice displays
120
+//
96 121
 function padStart(string, max_length, padding) {
97
-    if (string.length > max_length) {
98
-        return string;
99
-    } else {
100
-        var new_str = string;
101
-        for (index = string.length; index < max_length; index++) {
102
-            new_str = "0" + new_str;
103
-        }
104
-        return new_str;
122
+  if (string.length > max_length) {
123
+    return string;
124
+  } else {
125
+    var new_str = string;
126
+    for (index = string.length; index < max_length; index++) {
127
+      new_str = "0" + new_str;
105 128
     }
129
+    return new_str;
130
+  }
106 131
 }
107 132
 
108 133
 // called in case of successful geoloc gathering and sends the coordinate to watch
109 134
 //
110 135
 function locationSuccess(new_pos) {
111
-    var prev_pos = getLocation();
112
-    storeLocation(new_pos);
113
-    if (prev_pos === null){
114
-        return null;
115
-    }else{
116
-
117
-        var speed = speed_from_distance_and_time(prev_pos, new_pos);
118
-
119
-        // Prepare display on watch
120
-        // now it's only raw data
121
-        //init strings
122
-        var latitudeString = "";
123
-        var longitudeString = "";
124
-        var accuracyString = "";
125
-        var altitudeString = "";
126
-        var altitudeAccuracyString = "";
127
-        var timestampString = "";
128
-        var speedString = "";
129
-        //formating for precision and max size
130
-        latitudeString = new_pos.coords.latitude.toString().substring(0, 12);
131
-        longitudeString = new_pos.coords.longitude.toString().substring(0, 12);
132
-        accuracyString = new_pos.coords.accuracy.toString().substring(0, 4);
133
-        altitudeString = splitFloatNumber(new_pos.coords.altitude)[0].toString().substring(0, 5);
134
-        altitudeAccuracyString = splitFloatNumber(new_pos.coords.altitudeAccuracy)[0].toString().substring(0, 3);
135
-        timestampString = splitFloatNumber(new_pos.timestamp)[0].toString().substring(0, 13);
136
-        speedString = speed.toString().substring(0, 5);
137
-        // logging
138
-        console.log('Your current position at ' + timestampString + ' is:');
139
-        console.log('Coordinates: ' + latitudeString+ ', ' + longitudeString+' ; with a ' + accuracyString + 'm accuracy');
140
-        console.log('Altitude: ' + altitudeString + 'm ; with a ' + altitudeAccuracyString + 'm accuracy');
141
-        console.log('Speed: ' + speedString + ' km/h.');
142
-
143
-        // Build message
144
-        var message = "OK";
145
-        var dict = {
146
-            /*'latitude': padStart(latitudeString, 12, '0'),
147
-            'longitude': padStart(longitudeString, 12, '0'),
148
-            'accuracy': padStart(accuracyString, 4, '0'),
149
-            'altitude': padStart(altitudeString, 5, '0'),
150
-            'altitude_accuracy': padStart(altitudeAccuracyString, 3, '0'),
151
-            'timestamp': padStart(timestampString, 13, '0'),*/
152
-            'speed': padStart(speedString, 5, '0'),
153
-            'status': message
154
-        };
155
-        //console.log('Message to send: ' + JSON.stringify(dict));
156
-
157
-        // Send the message
158
-        Pebble.sendAppMessage(dict, function () {
159
-            console.log('Message sent successfully: ' + JSON.stringify(dict));
160
-        }, function (e) {
161
-            console.log('Message (' + JSON.stringify(dict) + ') failed: ' + JSON.stringify(e));
162
-        });
136
+  var prev_pos = getLocation();
137
+  storeLocation(new_pos);
138
+  if (prev_pos === null) {
139
+    GPXHeadersBuilder(timestampISO = new Date(new_pos.timestamp).toISOString(), "test", "18");
140
+    return null;
141
+  } else {
142
+    var speed = speed_from_distance_and_time(prev_pos, new_pos);
143
+
144
+    // Prepare display on watch
145
+    // now it's only raw data
146
+    //init strings
147
+    var latitudeString = "";
148
+    var longitudeString = "";
149
+    var accuracyString = "";
150
+    var altitudeString = "";
151
+    //var altitudeAccuracyString = "";
152
+    //var timestampString = "";
153
+    var speedString = "";
154
+
155
+    //formating for precision and max size
156
+    latitudeString = new_pos.coords.latitude.toString().substring(0, 12);
157
+    longitudeString = new_pos.coords.longitude.toString().substring(0, 12);
158
+    accuracyString = new_pos.coords.accuracy.toString().substring(0, 4);
159
+    altitudeString = splitFloatNumber(new_pos.coords.altitude)[0].toString().substring(0, 5);
160
+    timestampISO = new Date(new_pos.timestamp).toISOString();
161
+    speedString = speed.toString().substring(0, 5);
162
+
163
+    if (speedString == "NaN") {
164
+      speedString = "---";
163 165
     }
166
+    // logging
167
+    /*console.log('Your current position at ' + timestampString + ' is:');
168
+    console.log('Coordinates: ' + latitudeString+ ', ' + longitudeString+' ; with a ' + accuracyString + 'm accuracy');
169
+    console.log('Altitude: ' + altitudeString + 'm ; with a ' + altitudeAccuracyString + 'm accuracy');
170
+    console.log('Speed: ' + speedString + ' km/h.');
171
+    */
172
+    GPXtrkptBuilder(latitudeString, longitudeString, altitudeString, timestampISO);
173
+
174
+    console.log('GPX: ' + localStorage.getItem("GPX"));
175
+
176
+    // Build message
177
+    message = "OK";
178
+    var dict = {
179
+      //'latitude': padStart(latitudeString, 12, '0'),
180
+      //'longitude': padStart(longitudeString, 12, '0'),
181
+      'accuracy': accuracyString,
182
+      'altitude': altitudeString,
183
+      //'altitude_accuracy': padStart(altitudeAccuracyString, 3, '0'),
184
+      //'timestamp': padStart(timestampString, 13, '0'),
185
+      'speed': speedString,
186
+      'status': message
187
+    };
188
+    //console.log('Message to send: ' + JSON.stringify(dict));
189
+
190
+    // Send the message
191
+    Pebble.sendAppMessage(dict, function () {
192
+      console.log('Message sent successfully: ' + JSON.stringify(dict));
193
+    }, function (e) {
194
+      console.log('Message (' + JSON.stringify(dict) + ') failed: ' + JSON.stringify(e));
195
+    });
196
+  }
164 197
 }
165 198
 
166 199
 function locationError(err) {
167
-    console.warn('location error (' + err.code + '): ' + err.message);
168
-    /* // No app when no location
169
-    Pebble.sendAppMessage({
170
-        'WEATHER_CITY_KEY': 'Loc Unavailable',
171
-        'WEATHER_TEMPERATURE_KEY': 'N/A'
172
-    });*/
200
+  console.warn('location error (' + err.code + '): ' + err.message);
201
+  /* // No app when no location
202
+       Pebble.sendAppMessage({
203
+           'WEATHER_CITY_KEY': 'Loc Unavailable',
204
+           'WEATHER_TEMPERATURE_KEY': 'N/A'
205
+       });*/
173 206
 }
174 207
 
175 208
 function get_coordinate() {
176
-    console.log('---- get_coordinate');
177
-    navigator.geolocation.getCurrentPosition(locationSuccess, locationError, locationOptions);
209
+  console.log('---- get_coordinate');
210
+  navigator.geolocation.getCurrentPosition(locationSuccess, locationError, locationOptions);
178 211
 
179 212
 }
180 213
 
... ...
@@ -274,46 +307,46 @@ function switch_home(bool) {
274 307
 
275 308
 }*/
276 309
 
277
-function init(){
278
-    // local storage init
279
-    localStorage.clear();
280
-    // clear any other var to do
281
-    clearInterval(locationInterval);
310
+function init() {
311
+  // local storage init
312
+  localStorage.clear();
313
+  // clear any other var to do
314
+  clearInterval(locationInterval);
282 315
 
283
-    console.log('--- Starting regular getCurrentPosition loop using setInterval at 1 sec');
284
-    locationInterval = setInterval(function() {
285
-      navigator.geolocation.getCurrentPosition(locationSuccess, locationError, locationOptions);
286
-    }, 1000);
316
+  console.log('--- Starting regular getCurrentPosition loop using setInterval at 1 sec');
317
+  locationInterval = setInterval(function () {
318
+    navigator.geolocation.getCurrentPosition(locationSuccess, locationError, locationOptions);
319
+  }, 1000);
287 320
 
288 321
 
289 322
 }
290 323
 
291 324
 // Get JS readiness events
292 325
 Pebble.addEventListener('ready', function (e) {
293
-    console.log('PebbleKit JS is ready');
294
-    // Update Watch on this
295
-    Pebble.sendAppMessage({ 'JSReady': 1 });
326
+  console.log('PebbleKit JS is ready');
327
+  // Update Watch on this
328
+  Pebble.sendAppMessage({ 'JSReady': 1 });
296 329
 
297
-    init();
330
+  init();
298 331
 });
299 332
 
300 333
 // Get AppMessage events
301 334
 Pebble.addEventListener('appmessage', function (e) {
302
-    // Get the dictionary from the message
303
-    var dict = e.payload;
304
-    console.log(dict[0].toString());
305
-    switch (dict[0]) {
306
-        case 'get':
307
-            get_coordinate();
308
-            break;/*
335
+  // Get the dictionary from the message
336
+  var dict = e.payload;
337
+  console.log(dict[0].toString());
338
+  switch (dict[0]) {
339
+    case 'get':
340
+      get_coordinate();
341
+      break;/*
309 342
     case 'home_on':
310 343
       switch_home(true);
311 344
       break;
312 345
     case 'home_off':
313 346
       switch_home(false);
314 347
       break;*/
315
-        default:
316
-            console.log('Sorry. I don\'t understand your request :' + dict[0]);
317
-    }
348
+    default:
349
+      console.log('Sorry. I don\'t understand your request :' + dict[0]);
350
+  }
318 351
 
319 352
 });