Compare commits

...

7 Commits

Author SHA1 Message Date
9aaa040112 Merge branch 'master' into dev 2020-07-03 13:32:13 +02:00
4ac6b4b792 remoces unnecessary folders, adds necessary certificates 2020-07-03 13:30:33 +02:00
Raphael Maenle
60a337ecbc watch now removes fingerprint, if it no longer works and pulls a new one 2020-05-28 18:27:21 +02:00
Raphael Maenle
1662c81d18 writes device fingerprint onto screen when device unregistered 2020-05-24 13:07:57 +02:00
Raphael Maenle
86c0c8a23f pulls device Fingerprint from Server, if watch does not have one
- adds debug switch, where 'downloads' instead of 'wgt-private' is used
  so that files prevail after a reinstall
- watch saves a device fingerprint on the device itself
- some minor code simplification

-> future version of server should generate a UID and save to database
2020-05-23 23:50:21 +02:00
Raphael Maenle
7ba4de53b4 moves json readout to seperate function with callback
- adds function to get device fingerprint
- adds readJsonFromFile function with file name in 'wgt-private' and
callback function
2020-05-23 22:19:31 +02:00
Raphael Maenle
6866c8e9e1 chanes file read process form xhttp request to tizen api
- tizen 4.0 api usable, some calls depricated since 5.0
 - update to 'openFile' only possible when killing 4.0
2020-05-23 12:43:59 +02:00
14 changed files with 248 additions and 918 deletions

4
.gitignore vendored Normal file
View File

@ -0,0 +1,4 @@
.settings/
.sign/
.metadata/

View File

@ -1,22 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="con" path="org.eclipse.wst.jsdt.launching.baseBrowserLibrary"/>
<classpathentry kind="con" path="org.eclipse.wst.jsdt.launching.WebProject">
<attributes>
<attribute name="hide" value="true"/>
</attributes>
</classpathentry>
<classpathentry kind="con" path="org.eclipse.wst.jsdt.launching.JRE_CONTAINER"/>
<classpathentry excluding="**/bower_components/*|**/node_modules/*|**/*.min.js" kind="src" path="">
<attributes>
<attribute name="provider" value="org.eclipse.wst.jsdt.web.core.internal.project.ModuleSourcePathProvider"/>
</attributes>
</classpathentry>
<classpathentry kind="con" path="org.tizen.web.project.initializer.WebLibraryInitializer"/>
<classpathentry kind="con" path="org.eclipselabs.jsdt.jquery.core.CoflictLibrary_2.0"/>
<classpathentry kind="con" path="org.tizen.web.project.initializer.TizenLibraryInitializer"/>
<classpathentry kind="con" path="org.tizen.web.project.initializer.HTML5LibraryInitializer"/>
<classpathentry kind="con" path="org.tizen.web.project.initializer.W3CLibraryInitializer"/>
<classpathentry kind="con" path="org.tizen.web.project.initializer.ext.RESTSupport"/>
<classpathentry kind="output" path=""/>
</classpath>

View File

@ -1,2 +0,0 @@
css-profile/<project>=org.eclipse.wst.css.core.cssprofile.css3
eclipse.preferences.version=1

View File

@ -1 +0,0 @@
org.eclipse.wst.jsdt.launching.baseBrowserLibrary

View File

@ -1 +0,0 @@
Window

View File

@ -1,73 +0,0 @@
.git/COMMIT_EDITMSG__DEL__zcfTfR42Hp+H75bMNYkDQLV9RYb7Fr10Bnmdza0/wbk=
.git/HEAD__DEL__9vK5RfbEEbAro9qces6I3PcbavZbouDYmqgpAAQrWhA=
.git/config__DEL__/Rbd4AUUTUPjlJZYYUUBZKcEeNgeUuzmriIZUFh7T/s=
.git/description__DEL__hatsFj1DoX6pz3eIMIvKFGbxsKjRzJLibpv2PaQGKu4=
.git/hooks/applypatch-msg.sample__DEL__AiNJeguLAzqlijpSG4YphpOGz3qw4vEBlj0yiqYhk/c=
.git/hooks/commit-msg.sample__DEL__H3TV6SkpebVz69WXQdRsuT/zkazdCD00C5Q3B1PZJDc=
.git/hooks/fsmonitor-watchman.sample__DEL__9IPZjlVDNG3iWkVWsl310pYOz/Dq6SVe2F+3DV0Ex3k=
.git/hooks/post-update.sample__DEL__gXZa8trvMjBh3LxeYfwWSBy3SzusmtihdLGGUjWG9sU=
.git/hooks/pre-applypatch.sample__DEL__4VxbRp6j4KaVvqbyyCvPjmKCEHSTnd2Ft34AB/8WVHU=
.git/hooks/pre-commit.sample__DEL__EscjI1Ex8cVXbGUqwqCgB/JhqTwN3ERbHc7mzZjjB4g=
.git/hooks/pre-push.sample__DEL__SxEZ4eE6ISVxl29K7neEfNvUCXhUbWJzpVfiOJgaQNE=
.git/hooks/pre-rebase.sample__DEL__T+vOhneQBSM4B29OZsxH77FIedGAl9HWHIJhhZ6qp7M=
.git/hooks/pre-receive.sample__DEL__pMPSuce7P9jRRBwxvU7nGlldZrRPz0ndsxAlIyAWmYk=
.git/hooks/prepare-commit-msg.sample__DEL__6d3KpBif3dJe2X/Ix4nsp7bKFjkLI5KuMnbwyOGqRhk=
.git/hooks/update.sample__DEL__dRwDcyACTsLuJ1fz/64LEK0slGNnaE5wWdTcl+rH5DE=
.git/index__DEL__pyS8kEZfsVBGpOv9SvlFqo6UBj2HpGQgNcHX4Rs3Utg=
.git/info/exclude__DEL__ZnH+g7egfIky7okWTR8nk7IxgFjri5jcXAbuClo7DsE=
.git/logs/HEAD__DEL__wpmVLUxvBL3eAdGAtZjwyYpbwNfeY94DatVmpCucCrs=
.git/logs/refs/heads/master__DEL__wpmVLUxvBL3eAdGAtZjwyYpbwNfeY94DatVmpCucCrs=
.git/logs/refs/remotes/origin/master__DEL__btdsa2RxeDDqQsRq2xXhygBmAPEBTar3K9p6FIPo2Ng=
.git/objects/02/741fe0d44ace36d88f500de55fe02f60e39681__DEL__cVGnHJSbIxxTbHZ4cc0XEetbMGr4Ig04SwFvCJL0tcg=
.git/objects/05/bd71b6ec2c1982d1e8a5653073281994564ae8__DEL__PXNsl0l7EuMPFASARrf2c4vkfoU8MqkL51Cf4LHE3Ik=
.git/objects/07/89c5456f19123401bbbea06ccc14cd42067219__DEL__wl7lmcXANjTQcOsw471SlI61qAqEpWF6oTpIbNZsGwQ=
.git/objects/13/fb568ca97112e3039b47ab7b9f36de9834ee89__DEL__rqiQE/qsgBRiZw6iG+cFJxVCHRIhuay+VEK+82gvaFQ=
.git/objects/1a/30a49ab1682a8c70f37f960b7d1871c5942eb9__DEL__cTC88UJJXLJyBu7pmRkB07i2eLJk4EVv/DBrMDlG2Jk=
.git/objects/1c/1a4d080ef81238e544eab07ae38d6e727dba85__DEL__NCXGus1XG1CzGfD8cnKh9R6Yoh5qQibiIvC1KioagDU=
.git/objects/23/86351522759e2a0b051a0cb0e4b35a56dff088__DEL__9KKkz5G0UwI91vXfoRqDff+Kg+vZkM5aU2GGZ77/nug=
.git/objects/25/e212adedb872da5b017d291d48f55c61a38b29__DEL__QDKqylvpL5aKPcDz/9zSuGXDiGaa0HESAG0hK13UMpk=
.git/objects/28/7c88e226a4ec4c071904c15bf4f645ac3cd2dc__DEL__wwu4NPLQylGD4xQh9o083s2OtoFpL3dRLSMUfxyXunQ=
.git/objects/2d/64341eef53052d2dacc5f5a4ad01c75b8dd652__DEL__dk7aYwpCa5ILFLFs53nmgi7a/fhAWv4OpIqistb4Qm4=
.git/objects/3b/d5d0a4803967bc0bf72a7dd66d7e292ed2e586__DEL__NWl0p1AAhqGIhpiPNnefVL7uzkqYFG1ZET6Oni7l45M=
.git/objects/4a/b357c7634f49e522aeaaedefa83c4ff08443a9__DEL__a0Cz4lWC+0xWCzZUYUQL5O/bt35C7pRZ1XW3fOKXBBo=
.git/objects/4e/35166f13f37f8c3aed30d3019174573a026f4a__DEL__QvXy5hjAaFV6M3+qW1WfnrX4ZyFuiBAqpnCqfAheYXE=
.git/objects/53/f31f54130c9a3441480f9e416f805437fb71c9__DEL__TI9vZZsmF1Ydh6O/gd51GoLyXZZyto7wjobmKY2woQo=
.git/objects/5d/dc6bd5f24cf4e67a53e20384dfc868809d10b3__DEL__zIPachBagXO0J8zFADVIaaSzJRpTr24o5b0VEKPnHS0=
.git/objects/66/de0dcf1f16eb3dfe1aedf78790b4e002c08516__DEL__FZmqOATlAZ5v6hGivuWkZ9NLyIA0B464HQ9hvqMUJBQ=
.git/objects/6f/2bf25b4a2c42093a219e1f448e60df4691edd9__DEL__GIQkHw2nvNnV/t1FJI6M9nGukDfi3PkzR+YQVBdkoew=
.git/objects/78/fdbb1d64048da4271091ddb1768f8670919069__DEL__3hbwK3TLaW1TVvT461gSaigsje2W/Ol74Ps+ElGSyIQ=
.git/objects/7c/a3e1f9fd26cc61f712e13322b05c7e24ce1813__DEL__HvEW3s9pr5lX/U/e4ZOjuGQ5UKstesDe/4eJic1wvlo=
.git/objects/84/f503801400f81a402f3fb3f2830ec00ab4c630__DEL__evQo0GymDPIEFqd5BUKUqhrrNQXb9nr3wqTmCHV+J48=
.git/objects/86/49fa565d87dd3c332e8e318c779b8e53ffea0b__DEL__C3Xw+yuUDSdezXAhqzBXlRS1SPXOSn2AyLwueNf7ug4=
.git/objects/8a/1d8c688268b802bd5ad18a64b883016b132076__DEL__fB08qAMNyvrNiut/zN7hw0epaAbaQDnXxDBRQx7HGlE=
.git/objects/8e/5d802326c308c497e217c4d5b600f2f11ac3c4__DEL__I9nY+iedh8TO2HV91DIps+SueQgcc0WCoPaYqIhzUq0=
.git/objects/90/a27f9cea6e8f02e05a8bbab5d14650e3e932af__DEL__lpDm120MOA6vW/mrh0cy1pu67SJ6dPu/cY8rN8I7xW8=
.git/objects/99/96115961d2aa418fb03ff90d529f642f4f7261__DEL__3VGlqOkDSaru/bmv6eS/4byvPdKJeBDS6Bo/lnU2bgY=
.git/objects/9d/ab2d1408775ca4094f6806e481cf85e8709ec4__DEL__8dWV9Unqdt7vmdOSzL5TGY9RETmJ1B9ZpX7jLIO3qBs=
.git/objects/9f/29e0dab7efd2ce2bda4adb262584b22321e534__DEL__KJdBI+69yuhRSrTwXepr5NJxdIXgmy1V+2rtaOmYYok=
.git/objects/9f/8c12f57065dff219dd33568a55e81ffee69f4e__DEL__lf8xF9EWtMhpmIGzqX+k8LnCZI0pmzyvQrchmCzvxGg=
.git/objects/a5/5db3f213c6fd9f1611473c99181cb6bd8ce9f2__DEL__Hljb7WQV6HW2SlXWnf79Z0JHFEEXiF854oWTNGeoqG0=
.git/objects/b6/2f236dddb5e68cc7e60e76c9f773b0eb90ce31__DEL__mEncbCDO5beLVf4GshoEy6LOyko6GMkMcEErkep3JDM=
.git/objects/c4/87c068cae1a73c7bf7239555c1329610507ec9__DEL__PBdNy+ElDdG/ulzGKnoHefxPQEVB5zq5pMe/pZHZRAc=
.git/objects/c8/c746454b625dbe8b6259a6bd2d4f0cd03f0d24__DEL__KKHH2pD0qfizOadYZbJkZrm29T/oVjobBOqJM+rRwYg=
.git/objects/d1/cc196d5d84ce44efa808521b9ad8fdc51ecead__DEL__12mjogpHHWqxDDPm4hsC7303iOQBAb4eoC4CjMKYPYg=
.git/objects/d4/7f9cd915695b4798f907982d77646a99bf4264__DEL__N8tjv5j1qEgx6o08Q8GEEq+c5oVBme8ZkQ1esJ7fjTM=
.git/objects/d6/45695673349e3947e8e5ae42332d0ac3164cd7__DEL__bK1/lEV5blLPpFrn/ZNVdLDE2RnlA4SnQhDpURW+znc=
.git/objects/d6/732ea134c5ff05e87ee89dbad7c5f97bb7724b__DEL__hTPwSlNSKTaSuUMuvBi0AzOTFOEpKwcbrCd4aQ/6cHk=
.git/objects/d6/e10997a5611ce965e0c34551b973478dc7172e__DEL__vm4JtKqoDEF/pwWpYnqKnfacIDpptH1kPV47pgSIcH0=
.git/objects/e6/9de29bb2d1d6434b8b29ae775ad8c2e48c5391__DEL__FkxfqAZ/rPGkPwnOPQ416/U6f1cj7L8VqGZ8/FPCb2w=
.git/objects/e6/e64a7a10f9c3f4c2218db906b18d6c96f153e1__DEL__ORQK4eEcZ9zLwMxPa08xowgH4TMPKDOsAJxkYscIos8=
.git/objects/f0/fc0dd5e890f0a3929c22ac364c71e6623f4e8e__DEL__zgSOtLXhZmKmL98vDoytepbOXYqk43npI3T5HsIbgjc=
.git/refs/heads/master__DEL__+tXu3ZGHKDRFy0S40mBgm+tGdOosszeJESBI/NtHvnM=
.git/refs/remotes/origin/master__DEL__+tXu3ZGHKDRFy0S40mBgm+tGdOosszeJESBI/NtHvnM=
LICENSE.APLv2__DEL__z8d0m5b2O9McPEK1xHG/dWgUBT6EfBDz6wA0F7xSPTA=
NOTICE__DEL__ijjaB8GEO5OJP/jK6n7Hr3vZFI9gy8ocoDhviViKNnU=
README.md__DEL__47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU=
config.xml__DEL__coG2QfwI4dJYdeBpyPbkCmdN8sAQ8/P74NTeGIx6kWk=
css/style.css__DEL__YCx4tiqoai276nR9sDZsPUcn0/z3Xi4XYMDXIcnGRhU=
icon.jpg__DEL__2ZXXmZkVOzH42v5SF/c73PYgxmcHHRii2/gn73UUhlo=
icon.png__DEL__kd617JYkX8IEUQERd72gL14zj6pgNVcKiSRAFQz6HX8=
index.html__DEL__CdntWzqB8DQYZKIF68hQqqZVLQPbLRf1hXjozO+agxA=
js/app.js__DEL__qAH6L1c0b9HsljfVO01W4pPPJppPjS4q9bbHtrfap1o=
version.txt__DEL__jFS/q38a6b0acUjq5B57Co9K03JuDKxw+COi1F255gw=
author-signature.xml__DEL__zbeHy8sdYpGk8PQBOxft9I40IMiu1StArvdue2tmgvM=

View File

@ -1,351 +0,0 @@
<Signature xmlns="http://www.w3.org/2000/09/xmldsig#" Id="AuthorSignature">
<SignedInfo>
<CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"></CanonicalizationMethod>
<SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256"></SignatureMethod>
<Reference URI=".git%2FCOMMIT_EDITMSG">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>zcfTfR42Hp+H75bMNYkDQLV9RYb7Fr10Bnmdza0/wbk=</DigestValue>
</Reference>
<Reference URI=".git%2FHEAD">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>9vK5RfbEEbAro9qces6I3PcbavZbouDYmqgpAAQrWhA=</DigestValue>
</Reference>
<Reference URI=".git%2Fconfig">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>/Rbd4AUUTUPjlJZYYUUBZKcEeNgeUuzmriIZUFh7T/s=</DigestValue>
</Reference>
<Reference URI=".git%2Fdescription">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>hatsFj1DoX6pz3eIMIvKFGbxsKjRzJLibpv2PaQGKu4=</DigestValue>
</Reference>
<Reference URI=".git%2Fhooks%2Fapplypatch-msg.sample">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>AiNJeguLAzqlijpSG4YphpOGz3qw4vEBlj0yiqYhk/c=</DigestValue>
</Reference>
<Reference URI=".git%2Fhooks%2Fcommit-msg.sample">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>H3TV6SkpebVz69WXQdRsuT/zkazdCD00C5Q3B1PZJDc=</DigestValue>
</Reference>
<Reference URI=".git%2Fhooks%2Ffsmonitor-watchman.sample">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>9IPZjlVDNG3iWkVWsl310pYOz/Dq6SVe2F+3DV0Ex3k=</DigestValue>
</Reference>
<Reference URI=".git%2Fhooks%2Fpost-update.sample">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>gXZa8trvMjBh3LxeYfwWSBy3SzusmtihdLGGUjWG9sU=</DigestValue>
</Reference>
<Reference URI=".git%2Fhooks%2Fpre-applypatch.sample">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>4VxbRp6j4KaVvqbyyCvPjmKCEHSTnd2Ft34AB/8WVHU=</DigestValue>
</Reference>
<Reference URI=".git%2Fhooks%2Fpre-commit.sample">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>EscjI1Ex8cVXbGUqwqCgB/JhqTwN3ERbHc7mzZjjB4g=</DigestValue>
</Reference>
<Reference URI=".git%2Fhooks%2Fpre-push.sample">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>SxEZ4eE6ISVxl29K7neEfNvUCXhUbWJzpVfiOJgaQNE=</DigestValue>
</Reference>
<Reference URI=".git%2Fhooks%2Fpre-rebase.sample">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>T+vOhneQBSM4B29OZsxH77FIedGAl9HWHIJhhZ6qp7M=</DigestValue>
</Reference>
<Reference URI=".git%2Fhooks%2Fpre-receive.sample">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>pMPSuce7P9jRRBwxvU7nGlldZrRPz0ndsxAlIyAWmYk=</DigestValue>
</Reference>
<Reference URI=".git%2Fhooks%2Fprepare-commit-msg.sample">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>6d3KpBif3dJe2X/Ix4nsp7bKFjkLI5KuMnbwyOGqRhk=</DigestValue>
</Reference>
<Reference URI=".git%2Fhooks%2Fupdate.sample">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>dRwDcyACTsLuJ1fz/64LEK0slGNnaE5wWdTcl+rH5DE=</DigestValue>
</Reference>
<Reference URI=".git%2Findex">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>pyS8kEZfsVBGpOv9SvlFqo6UBj2HpGQgNcHX4Rs3Utg=</DigestValue>
</Reference>
<Reference URI=".git%2Finfo%2Fexclude">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>ZnH+g7egfIky7okWTR8nk7IxgFjri5jcXAbuClo7DsE=</DigestValue>
</Reference>
<Reference URI=".git%2Flogs%2FHEAD">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>wpmVLUxvBL3eAdGAtZjwyYpbwNfeY94DatVmpCucCrs=</DigestValue>
</Reference>
<Reference URI=".git%2Flogs%2Frefs%2Fheads%2Fmaster">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>wpmVLUxvBL3eAdGAtZjwyYpbwNfeY94DatVmpCucCrs=</DigestValue>
</Reference>
<Reference URI=".git%2Flogs%2Frefs%2Fremotes%2Forigin%2Fmaster">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>btdsa2RxeDDqQsRq2xXhygBmAPEBTar3K9p6FIPo2Ng=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F02%2F741fe0d44ace36d88f500de55fe02f60e39681">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>cVGnHJSbIxxTbHZ4cc0XEetbMGr4Ig04SwFvCJL0tcg=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F05%2Fbd71b6ec2c1982d1e8a5653073281994564ae8">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>PXNsl0l7EuMPFASARrf2c4vkfoU8MqkL51Cf4LHE3Ik=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F07%2F89c5456f19123401bbbea06ccc14cd42067219">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>wl7lmcXANjTQcOsw471SlI61qAqEpWF6oTpIbNZsGwQ=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F13%2Ffb568ca97112e3039b47ab7b9f36de9834ee89">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>rqiQE/qsgBRiZw6iG+cFJxVCHRIhuay+VEK+82gvaFQ=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F1a%2F30a49ab1682a8c70f37f960b7d1871c5942eb9">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>cTC88UJJXLJyBu7pmRkB07i2eLJk4EVv/DBrMDlG2Jk=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F1c%2F1a4d080ef81238e544eab07ae38d6e727dba85">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>NCXGus1XG1CzGfD8cnKh9R6Yoh5qQibiIvC1KioagDU=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F23%2F86351522759e2a0b051a0cb0e4b35a56dff088">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>9KKkz5G0UwI91vXfoRqDff+Kg+vZkM5aU2GGZ77/nug=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F25%2Fe212adedb872da5b017d291d48f55c61a38b29">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>QDKqylvpL5aKPcDz/9zSuGXDiGaa0HESAG0hK13UMpk=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F28%2F7c88e226a4ec4c071904c15bf4f645ac3cd2dc">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>wwu4NPLQylGD4xQh9o083s2OtoFpL3dRLSMUfxyXunQ=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F2d%2F64341eef53052d2dacc5f5a4ad01c75b8dd652">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>dk7aYwpCa5ILFLFs53nmgi7a/fhAWv4OpIqistb4Qm4=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F3b%2Fd5d0a4803967bc0bf72a7dd66d7e292ed2e586">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>NWl0p1AAhqGIhpiPNnefVL7uzkqYFG1ZET6Oni7l45M=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F4a%2Fb357c7634f49e522aeaaedefa83c4ff08443a9">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>a0Cz4lWC+0xWCzZUYUQL5O/bt35C7pRZ1XW3fOKXBBo=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F4e%2F35166f13f37f8c3aed30d3019174573a026f4a">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>QvXy5hjAaFV6M3+qW1WfnrX4ZyFuiBAqpnCqfAheYXE=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F53%2Ff31f54130c9a3441480f9e416f805437fb71c9">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>TI9vZZsmF1Ydh6O/gd51GoLyXZZyto7wjobmKY2woQo=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F5d%2Fdc6bd5f24cf4e67a53e20384dfc868809d10b3">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>zIPachBagXO0J8zFADVIaaSzJRpTr24o5b0VEKPnHS0=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F66%2Fde0dcf1f16eb3dfe1aedf78790b4e002c08516">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>FZmqOATlAZ5v6hGivuWkZ9NLyIA0B464HQ9hvqMUJBQ=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F6f%2F2bf25b4a2c42093a219e1f448e60df4691edd9">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>GIQkHw2nvNnV/t1FJI6M9nGukDfi3PkzR+YQVBdkoew=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F78%2Ffdbb1d64048da4271091ddb1768f8670919069">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>3hbwK3TLaW1TVvT461gSaigsje2W/Ol74Ps+ElGSyIQ=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F7c%2Fa3e1f9fd26cc61f712e13322b05c7e24ce1813">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>HvEW3s9pr5lX/U/e4ZOjuGQ5UKstesDe/4eJic1wvlo=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F84%2Ff503801400f81a402f3fb3f2830ec00ab4c630">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>evQo0GymDPIEFqd5BUKUqhrrNQXb9nr3wqTmCHV+J48=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F86%2F49fa565d87dd3c332e8e318c779b8e53ffea0b">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>C3Xw+yuUDSdezXAhqzBXlRS1SPXOSn2AyLwueNf7ug4=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F8a%2F1d8c688268b802bd5ad18a64b883016b132076">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>fB08qAMNyvrNiut/zN7hw0epaAbaQDnXxDBRQx7HGlE=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F8e%2F5d802326c308c497e217c4d5b600f2f11ac3c4">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>I9nY+iedh8TO2HV91DIps+SueQgcc0WCoPaYqIhzUq0=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F90%2Fa27f9cea6e8f02e05a8bbab5d14650e3e932af">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>lpDm120MOA6vW/mrh0cy1pu67SJ6dPu/cY8rN8I7xW8=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F99%2F96115961d2aa418fb03ff90d529f642f4f7261">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>3VGlqOkDSaru/bmv6eS/4byvPdKJeBDS6Bo/lnU2bgY=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F9d%2Fab2d1408775ca4094f6806e481cf85e8709ec4">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>8dWV9Unqdt7vmdOSzL5TGY9RETmJ1B9ZpX7jLIO3qBs=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F9f%2F29e0dab7efd2ce2bda4adb262584b22321e534">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>KJdBI+69yuhRSrTwXepr5NJxdIXgmy1V+2rtaOmYYok=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F9f%2F8c12f57065dff219dd33568a55e81ffee69f4e">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>lf8xF9EWtMhpmIGzqX+k8LnCZI0pmzyvQrchmCzvxGg=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2Fa5%2F5db3f213c6fd9f1611473c99181cb6bd8ce9f2">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>Hljb7WQV6HW2SlXWnf79Z0JHFEEXiF854oWTNGeoqG0=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2Fb6%2F2f236dddb5e68cc7e60e76c9f773b0eb90ce31">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>mEncbCDO5beLVf4GshoEy6LOyko6GMkMcEErkep3JDM=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2Fc4%2F87c068cae1a73c7bf7239555c1329610507ec9">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>PBdNy+ElDdG/ulzGKnoHefxPQEVB5zq5pMe/pZHZRAc=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2Fc8%2Fc746454b625dbe8b6259a6bd2d4f0cd03f0d24">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>KKHH2pD0qfizOadYZbJkZrm29T/oVjobBOqJM+rRwYg=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2Fd1%2Fcc196d5d84ce44efa808521b9ad8fdc51ecead">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>12mjogpHHWqxDDPm4hsC7303iOQBAb4eoC4CjMKYPYg=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2Fd4%2F7f9cd915695b4798f907982d77646a99bf4264">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>N8tjv5j1qEgx6o08Q8GEEq+c5oVBme8ZkQ1esJ7fjTM=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2Fd6%2F45695673349e3947e8e5ae42332d0ac3164cd7">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>bK1/lEV5blLPpFrn/ZNVdLDE2RnlA4SnQhDpURW+znc=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2Fd6%2F732ea134c5ff05e87ee89dbad7c5f97bb7724b">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>hTPwSlNSKTaSuUMuvBi0AzOTFOEpKwcbrCd4aQ/6cHk=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2Fd6%2Fe10997a5611ce965e0c34551b973478dc7172e">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>vm4JtKqoDEF/pwWpYnqKnfacIDpptH1kPV47pgSIcH0=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2Fe6%2F9de29bb2d1d6434b8b29ae775ad8c2e48c5391">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>FkxfqAZ/rPGkPwnOPQ416/U6f1cj7L8VqGZ8/FPCb2w=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2Fe6%2Fe64a7a10f9c3f4c2218db906b18d6c96f153e1">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>ORQK4eEcZ9zLwMxPa08xowgH4TMPKDOsAJxkYscIos8=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2Ff0%2Ffc0dd5e890f0a3929c22ac364c71e6623f4e8e">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>zgSOtLXhZmKmL98vDoytepbOXYqk43npI3T5HsIbgjc=</DigestValue>
</Reference>
<Reference URI=".git%2Frefs%2Fheads%2Fmaster">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>+tXu3ZGHKDRFy0S40mBgm+tGdOosszeJESBI/NtHvnM=</DigestValue>
</Reference>
<Reference URI=".git%2Frefs%2Fremotes%2Forigin%2Fmaster">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>+tXu3ZGHKDRFy0S40mBgm+tGdOosszeJESBI/NtHvnM=</DigestValue>
</Reference>
<Reference URI="LICENSE.APLv2">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>z8d0m5b2O9McPEK1xHG/dWgUBT6EfBDz6wA0F7xSPTA=</DigestValue>
</Reference>
<Reference URI="NOTICE">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>ijjaB8GEO5OJP/jK6n7Hr3vZFI9gy8ocoDhviViKNnU=</DigestValue>
</Reference>
<Reference URI="README.md">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU=</DigestValue>
</Reference>
<Reference URI="config.xml">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>coG2QfwI4dJYdeBpyPbkCmdN8sAQ8/P74NTeGIx6kWk=</DigestValue>
</Reference>
<Reference URI="css%2Fstyle.css">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>YCx4tiqoai276nR9sDZsPUcn0/z3Xi4XYMDXIcnGRhU=</DigestValue>
</Reference>
<Reference URI="icon.jpg">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>2ZXXmZkVOzH42v5SF/c73PYgxmcHHRii2/gn73UUhlo=</DigestValue>
</Reference>
<Reference URI="icon.png">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>kd617JYkX8IEUQERd72gL14zj6pgNVcKiSRAFQz6HX8=</DigestValue>
</Reference>
<Reference URI="index.html">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>CdntWzqB8DQYZKIF68hQqqZVLQPbLRf1hXjozO+agxA=</DigestValue>
</Reference>
<Reference URI="js%2Fapp.js">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>qAH6L1c0b9HsljfVO01W4pPPJppPjS4q9bbHtrfap1o=</DigestValue>
</Reference>
<Reference URI="version.txt">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>jFS/q38a6b0acUjq5B57Co9K03JuDKxw+COi1F255gw=</DigestValue>
</Reference>
<Reference URI="#prop">
<Transforms>
<Transform Algorithm="http://www.w3.org/2006/12/xml-c14n11"></Transform>
</Transforms>
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>lpo8tUDs054eLlBQXiDPVDVKfw30ZZdtkRs1jd7H5K8=</DigestValue>
</Reference>
</SignedInfo>
<SignatureValue>
KPLcxFZnTnI9wPU0XTquZmWpAuw8dIxUy/I3dzb7VUv57jlD1kHeD0Iw9e/AUpXVZ1VuD1yFqsKp
kmGOa7ThV8ZBEBSdiaQYNsa4GK0B4rQMqx/P4nfy0J7tk6rre/Sb0km4vrhNbMSn0m7OeybXALVc
TEPHqJIRkhTwKCos0KrpdplhR9XN43W4HT1uXNgSjEs1Cf+n4CFZcScKQ+zS0vTQCScrQBJw7uIl
tgkFE9D+aozlu7N0G8ietdrW2x4mH4KjuVpeamVE2rVyD0//tgJ8h+JTd+NKSNPUW/zAt0eqsB4Q
Lp6RK6ttOg6DjilVWacK5SwKA0kMqjzYGfbN6Q==
</SignatureValue>
<KeyInfo>
<X509Data>
<X509Certificate>
MIIDljCCAn6gAwIBAgIBATANBgkqhkiG9w0BAQsFADCBsDELMAkGA1UEBhMCS1IxFDASBgNVBAgM
C1NvdXRoIEtvcmVhMQ4wDAYDVQQHDAVTdXdvbjEmMCQGA1UECgwdU2Ftc3VuZyBFbGVjdHJvbmlj
cyBDby4sIEx0ZC4xDzANBgNVBAsMBk1vYmlsZTEgMB4GA1UEAwwXU2Ftc3VuZyBBdXRob3IgQ0Eg
Q2xhc3MxIDAeBgkqhkiG9w0BCQEWEXRpemVuQHNhbXN1bmcuY29tMB4XDTIwMDExOTIyMjI1NVoX
DTIxMDExODIyMjI1NVowUDEJMAcGA1UEBhMAMQkwBwYDVQQIEwAxCTAHBgNVBAcTADEJMAcGA1UE
ChMAMQkwBwYDVQQLEwAxFzAVBgNVBAMTDlJhcGhhZWwgTWFlbmxlMIIBIjANBgkqhkiG9w0BAQEF
AAOCAQ8AMIIBCgKCAQEAoghbSffP9a1hhOdXMkS7Ubc0tYWoahtpUcbhZ+EOQ1lDn7tBZ4SZIGF4
D9u7yqpIcBLg0eqvWz/GZ0Y3YmaFR0chspI+UIzY7nyF/jH8RV7TvvQKwjaKk75UeSHiW9vSi2fP
arj0h7fmkKdA/qksmBXWllYXNR9TpOXubGXvUFZBb2feFpWDWKOf0mnmxOQkNIR5txePwtBlpzFF
YWg7AGy2f4QernmyEurz6Rlpegzb+/jRCxx4XktpUOo/mYzQvhBu4REhbv80xWd+zm7YKSetFpD4
4rxuhdAYB0I35/36LGTQvofqbwkj4/u+aWXRIgNa+qMLS0KWdjHSFMSn1QIDAQABoxowGDAJBgNV
HRMEAjAAMAsGA1UdDwQEAwIHgDANBgkqhkiG9w0BAQsFAAOCAQEAbFJIOpO3y+ZKdfrnGIxHrHFZ
QPki0k9nfnwf+yc++uMsTy3C9rsgyQda6FBKDDBXWnFgpVfqd+0cOhaxShMfzo5aw1CvOjj0RnjI
8ysdkmRPNeILrR+29LmHyKbaoqFgYeMpQRJuI0MhEpjz/pRh4IfNkISO39953eeOHD+nQ/bAYiG/
qjUfhUf7rd+DN7mUCIwRsNp692eX5uymBrDKUohbAtnny56NDoCIqvZTyoxIvJ8fpenxaU9jit5J
nBZfD7oIe47IrV2Y3joMGGS8jZX7F0gmOpb+LPpnf4MLAwGktAmY3SNzbIuZ3e72hLtJbxRx0QNT
ncSks0bDF2VBPQ==
</X509Certificate>
<X509Certificate>
MIIDmzCCAoOgAwIBAgICYygwDQYJKoZIhvcNAQELBQAwXjEaMBgGA1UECgwRVGl6ZW4gQXNzb2Np
YXRpb24xGjAYBgNVBAsMEVRpemVuIEFzc29jaWF0aW9uMSQwIgYDVQQDDBtUaXplbiBEZXZlbG9w
ZXJzIFJvb3QgQ2xhc3MwHhcNMTMxMjMwMTUwNTU4WhcNMjgxMjI2MTUwNTU4WjCBsDELMAkGA1UE
BhMCS1IxFDASBgNVBAgMC1NvdXRoIEtvcmVhMQ4wDAYDVQQHDAVTdXdvbjEmMCQGA1UECgwdU2Ft
c3VuZyBFbGVjdHJvbmljcyBDby4sIEx0ZC4xDzANBgNVBAsMBk1vYmlsZTEgMB4GA1UEAwwXU2Ft
c3VuZyBBdXRob3IgQ0EgQ2xhc3MxIDAeBgkqhkiG9w0BCQEWEXRpemVuQHNhbXN1bmcuY29tMIIB
IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAs+tRBgnKJs8j7BFg8/UftqbqTCYBV3Jrg1vK
YvEuoTfntYz2uT2SO67raiCsZBAYvJnP54ExkdV++UgB7BDGniWz7bA1pYKak5kNK5jtLQt2DmZX
3qgaLjMyoAz+293CxrBQO4h8NaTQGsO/WLpeQq2Y1ZEnHsq+EUn90H6Vm0HNW+KUayGPYdey+QSW
iiv+L++TSuHrw0b16GYn83emiTnKTCmwpSOZ712Gy9kccl46/K4C8skEDVZjTk9s7r/MN9ZNZsqR
brT/3AYcrF4ao8ipwlHK91WJBXXaiQICvp/dNfCSDWpTWy7z4XmgP16pSLnfgZlwEwWfiaavHRNM
mwIDAQABoxAwDjAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQB/ZlNMTzlIHqC3mFSq
ptuQDZG96XnYqiWsbYkqGgNhcq6c/B3TQsg7Z8cxXY/eqJQDN5gbrIpiUugMRdSOpAEcxF3lwd5k
oOzVLn+3I7x1k6Q4pZdi1fJx+1XjCtrQgPqtvwM77urNqIA1MSG6HUPxYAKkRKjWPsg346E8S/c1
Hq4UVBYEFcDC467uvWtYjxjEVQTmNUaUcQLU9P6VEL4QW+t7V54IN6IJDr9HoOGSgApxIBDDU46b
MUwl+yK0GPvhrviwfVPkfmys1hn5N+gWectQVpBB1gbfy2KlLCCvW/Kl1VmtYz1kWwTyG8bwcjE0
GLkwKNN5lPod+FmMhuW9
</X509Certificate>
</X509Data>
</KeyInfo>
<Object Id="prop"><SignatureProperties xmlns:dsp="http://www.w3.org/2009/xmldsig-properties"><SignatureProperty Id="profile" Target="#AuthorSignature"><dsp:Profile URI="http://www.w3.org/ns/widgets-digsig#profile"></dsp:Profile></SignatureProperty><SignatureProperty Id="role" Target="#AuthorSignature"><dsp:Role URI="http://www.w3.org/ns/widgets-digsig#role-author"></dsp:Role></SignatureProperty><SignatureProperty Id="identifier" Target="#AuthorSignature"><dsp:Identifier></dsp:Identifier></SignatureProperty></SignatureProperties></Object>
</Signature>

View File

@ -1,356 +0,0 @@
<Signature xmlns="http://www.w3.org/2000/09/xmldsig#" Id="DistributorSignature">
<SignedInfo>
<CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"></CanonicalizationMethod>
<SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256"></SignatureMethod>
<Reference URI=".git%2FCOMMIT_EDITMSG">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>zcfTfR42Hp+H75bMNYkDQLV9RYb7Fr10Bnmdza0/wbk=</DigestValue>
</Reference>
<Reference URI=".git%2FHEAD">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>9vK5RfbEEbAro9qces6I3PcbavZbouDYmqgpAAQrWhA=</DigestValue>
</Reference>
<Reference URI=".git%2Fconfig">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>/Rbd4AUUTUPjlJZYYUUBZKcEeNgeUuzmriIZUFh7T/s=</DigestValue>
</Reference>
<Reference URI=".git%2Fdescription">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>hatsFj1DoX6pz3eIMIvKFGbxsKjRzJLibpv2PaQGKu4=</DigestValue>
</Reference>
<Reference URI=".git%2Fhooks%2Fapplypatch-msg.sample">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>AiNJeguLAzqlijpSG4YphpOGz3qw4vEBlj0yiqYhk/c=</DigestValue>
</Reference>
<Reference URI=".git%2Fhooks%2Fcommit-msg.sample">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>H3TV6SkpebVz69WXQdRsuT/zkazdCD00C5Q3B1PZJDc=</DigestValue>
</Reference>
<Reference URI=".git%2Fhooks%2Ffsmonitor-watchman.sample">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>9IPZjlVDNG3iWkVWsl310pYOz/Dq6SVe2F+3DV0Ex3k=</DigestValue>
</Reference>
<Reference URI=".git%2Fhooks%2Fpost-update.sample">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>gXZa8trvMjBh3LxeYfwWSBy3SzusmtihdLGGUjWG9sU=</DigestValue>
</Reference>
<Reference URI=".git%2Fhooks%2Fpre-applypatch.sample">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>4VxbRp6j4KaVvqbyyCvPjmKCEHSTnd2Ft34AB/8WVHU=</DigestValue>
</Reference>
<Reference URI=".git%2Fhooks%2Fpre-commit.sample">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>EscjI1Ex8cVXbGUqwqCgB/JhqTwN3ERbHc7mzZjjB4g=</DigestValue>
</Reference>
<Reference URI=".git%2Fhooks%2Fpre-push.sample">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>SxEZ4eE6ISVxl29K7neEfNvUCXhUbWJzpVfiOJgaQNE=</DigestValue>
</Reference>
<Reference URI=".git%2Fhooks%2Fpre-rebase.sample">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>T+vOhneQBSM4B29OZsxH77FIedGAl9HWHIJhhZ6qp7M=</DigestValue>
</Reference>
<Reference URI=".git%2Fhooks%2Fpre-receive.sample">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>pMPSuce7P9jRRBwxvU7nGlldZrRPz0ndsxAlIyAWmYk=</DigestValue>
</Reference>
<Reference URI=".git%2Fhooks%2Fprepare-commit-msg.sample">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>6d3KpBif3dJe2X/Ix4nsp7bKFjkLI5KuMnbwyOGqRhk=</DigestValue>
</Reference>
<Reference URI=".git%2Fhooks%2Fupdate.sample">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>dRwDcyACTsLuJ1fz/64LEK0slGNnaE5wWdTcl+rH5DE=</DigestValue>
</Reference>
<Reference URI=".git%2Findex">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>pyS8kEZfsVBGpOv9SvlFqo6UBj2HpGQgNcHX4Rs3Utg=</DigestValue>
</Reference>
<Reference URI=".git%2Finfo%2Fexclude">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>ZnH+g7egfIky7okWTR8nk7IxgFjri5jcXAbuClo7DsE=</DigestValue>
</Reference>
<Reference URI=".git%2Flogs%2FHEAD">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>wpmVLUxvBL3eAdGAtZjwyYpbwNfeY94DatVmpCucCrs=</DigestValue>
</Reference>
<Reference URI=".git%2Flogs%2Frefs%2Fheads%2Fmaster">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>wpmVLUxvBL3eAdGAtZjwyYpbwNfeY94DatVmpCucCrs=</DigestValue>
</Reference>
<Reference URI=".git%2Flogs%2Frefs%2Fremotes%2Forigin%2Fmaster">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>btdsa2RxeDDqQsRq2xXhygBmAPEBTar3K9p6FIPo2Ng=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F02%2F741fe0d44ace36d88f500de55fe02f60e39681">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>cVGnHJSbIxxTbHZ4cc0XEetbMGr4Ig04SwFvCJL0tcg=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F05%2Fbd71b6ec2c1982d1e8a5653073281994564ae8">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>PXNsl0l7EuMPFASARrf2c4vkfoU8MqkL51Cf4LHE3Ik=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F07%2F89c5456f19123401bbbea06ccc14cd42067219">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>wl7lmcXANjTQcOsw471SlI61qAqEpWF6oTpIbNZsGwQ=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F13%2Ffb568ca97112e3039b47ab7b9f36de9834ee89">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>rqiQE/qsgBRiZw6iG+cFJxVCHRIhuay+VEK+82gvaFQ=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F1a%2F30a49ab1682a8c70f37f960b7d1871c5942eb9">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>cTC88UJJXLJyBu7pmRkB07i2eLJk4EVv/DBrMDlG2Jk=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F1c%2F1a4d080ef81238e544eab07ae38d6e727dba85">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>NCXGus1XG1CzGfD8cnKh9R6Yoh5qQibiIvC1KioagDU=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F23%2F86351522759e2a0b051a0cb0e4b35a56dff088">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>9KKkz5G0UwI91vXfoRqDff+Kg+vZkM5aU2GGZ77/nug=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F25%2Fe212adedb872da5b017d291d48f55c61a38b29">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>QDKqylvpL5aKPcDz/9zSuGXDiGaa0HESAG0hK13UMpk=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F28%2F7c88e226a4ec4c071904c15bf4f645ac3cd2dc">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>wwu4NPLQylGD4xQh9o083s2OtoFpL3dRLSMUfxyXunQ=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F2d%2F64341eef53052d2dacc5f5a4ad01c75b8dd652">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>dk7aYwpCa5ILFLFs53nmgi7a/fhAWv4OpIqistb4Qm4=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F3b%2Fd5d0a4803967bc0bf72a7dd66d7e292ed2e586">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>NWl0p1AAhqGIhpiPNnefVL7uzkqYFG1ZET6Oni7l45M=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F4a%2Fb357c7634f49e522aeaaedefa83c4ff08443a9">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>a0Cz4lWC+0xWCzZUYUQL5O/bt35C7pRZ1XW3fOKXBBo=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F4e%2F35166f13f37f8c3aed30d3019174573a026f4a">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>QvXy5hjAaFV6M3+qW1WfnrX4ZyFuiBAqpnCqfAheYXE=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F53%2Ff31f54130c9a3441480f9e416f805437fb71c9">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>TI9vZZsmF1Ydh6O/gd51GoLyXZZyto7wjobmKY2woQo=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F5d%2Fdc6bd5f24cf4e67a53e20384dfc868809d10b3">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>zIPachBagXO0J8zFADVIaaSzJRpTr24o5b0VEKPnHS0=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F66%2Fde0dcf1f16eb3dfe1aedf78790b4e002c08516">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>FZmqOATlAZ5v6hGivuWkZ9NLyIA0B464HQ9hvqMUJBQ=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F6f%2F2bf25b4a2c42093a219e1f448e60df4691edd9">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>GIQkHw2nvNnV/t1FJI6M9nGukDfi3PkzR+YQVBdkoew=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F78%2Ffdbb1d64048da4271091ddb1768f8670919069">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>3hbwK3TLaW1TVvT461gSaigsje2W/Ol74Ps+ElGSyIQ=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F7c%2Fa3e1f9fd26cc61f712e13322b05c7e24ce1813">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>HvEW3s9pr5lX/U/e4ZOjuGQ5UKstesDe/4eJic1wvlo=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F84%2Ff503801400f81a402f3fb3f2830ec00ab4c630">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>evQo0GymDPIEFqd5BUKUqhrrNQXb9nr3wqTmCHV+J48=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F86%2F49fa565d87dd3c332e8e318c779b8e53ffea0b">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>C3Xw+yuUDSdezXAhqzBXlRS1SPXOSn2AyLwueNf7ug4=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F8a%2F1d8c688268b802bd5ad18a64b883016b132076">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>fB08qAMNyvrNiut/zN7hw0epaAbaQDnXxDBRQx7HGlE=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F8e%2F5d802326c308c497e217c4d5b600f2f11ac3c4">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>I9nY+iedh8TO2HV91DIps+SueQgcc0WCoPaYqIhzUq0=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F90%2Fa27f9cea6e8f02e05a8bbab5d14650e3e932af">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>lpDm120MOA6vW/mrh0cy1pu67SJ6dPu/cY8rN8I7xW8=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F99%2F96115961d2aa418fb03ff90d529f642f4f7261">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>3VGlqOkDSaru/bmv6eS/4byvPdKJeBDS6Bo/lnU2bgY=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F9d%2Fab2d1408775ca4094f6806e481cf85e8709ec4">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>8dWV9Unqdt7vmdOSzL5TGY9RETmJ1B9ZpX7jLIO3qBs=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F9f%2F29e0dab7efd2ce2bda4adb262584b22321e534">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>KJdBI+69yuhRSrTwXepr5NJxdIXgmy1V+2rtaOmYYok=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2F9f%2F8c12f57065dff219dd33568a55e81ffee69f4e">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>lf8xF9EWtMhpmIGzqX+k8LnCZI0pmzyvQrchmCzvxGg=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2Fa5%2F5db3f213c6fd9f1611473c99181cb6bd8ce9f2">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>Hljb7WQV6HW2SlXWnf79Z0JHFEEXiF854oWTNGeoqG0=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2Fb6%2F2f236dddb5e68cc7e60e76c9f773b0eb90ce31">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>mEncbCDO5beLVf4GshoEy6LOyko6GMkMcEErkep3JDM=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2Fc4%2F87c068cae1a73c7bf7239555c1329610507ec9">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>PBdNy+ElDdG/ulzGKnoHefxPQEVB5zq5pMe/pZHZRAc=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2Fc8%2Fc746454b625dbe8b6259a6bd2d4f0cd03f0d24">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>KKHH2pD0qfizOadYZbJkZrm29T/oVjobBOqJM+rRwYg=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2Fd1%2Fcc196d5d84ce44efa808521b9ad8fdc51ecead">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>12mjogpHHWqxDDPm4hsC7303iOQBAb4eoC4CjMKYPYg=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2Fd4%2F7f9cd915695b4798f907982d77646a99bf4264">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>N8tjv5j1qEgx6o08Q8GEEq+c5oVBme8ZkQ1esJ7fjTM=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2Fd6%2F45695673349e3947e8e5ae42332d0ac3164cd7">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>bK1/lEV5blLPpFrn/ZNVdLDE2RnlA4SnQhDpURW+znc=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2Fd6%2F732ea134c5ff05e87ee89dbad7c5f97bb7724b">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>hTPwSlNSKTaSuUMuvBi0AzOTFOEpKwcbrCd4aQ/6cHk=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2Fd6%2Fe10997a5611ce965e0c34551b973478dc7172e">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>vm4JtKqoDEF/pwWpYnqKnfacIDpptH1kPV47pgSIcH0=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2Fe6%2F9de29bb2d1d6434b8b29ae775ad8c2e48c5391">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>FkxfqAZ/rPGkPwnOPQ416/U6f1cj7L8VqGZ8/FPCb2w=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2Fe6%2Fe64a7a10f9c3f4c2218db906b18d6c96f153e1">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>ORQK4eEcZ9zLwMxPa08xowgH4TMPKDOsAJxkYscIos8=</DigestValue>
</Reference>
<Reference URI=".git%2Fobjects%2Ff0%2Ffc0dd5e890f0a3929c22ac364c71e6623f4e8e">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>zgSOtLXhZmKmL98vDoytepbOXYqk43npI3T5HsIbgjc=</DigestValue>
</Reference>
<Reference URI=".git%2Frefs%2Fheads%2Fmaster">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>+tXu3ZGHKDRFy0S40mBgm+tGdOosszeJESBI/NtHvnM=</DigestValue>
</Reference>
<Reference URI=".git%2Frefs%2Fremotes%2Forigin%2Fmaster">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>+tXu3ZGHKDRFy0S40mBgm+tGdOosszeJESBI/NtHvnM=</DigestValue>
</Reference>
<Reference URI="LICENSE.APLv2">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>z8d0m5b2O9McPEK1xHG/dWgUBT6EfBDz6wA0F7xSPTA=</DigestValue>
</Reference>
<Reference URI="NOTICE">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>ijjaB8GEO5OJP/jK6n7Hr3vZFI9gy8ocoDhviViKNnU=</DigestValue>
</Reference>
<Reference URI="README.md">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU=</DigestValue>
</Reference>
<Reference URI="author-signature.xml">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>zbeHy8sdYpGk8PQBOxft9I40IMiu1StArvdue2tmgvM=</DigestValue>
</Reference>
<Reference URI="config.xml">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>coG2QfwI4dJYdeBpyPbkCmdN8sAQ8/P74NTeGIx6kWk=</DigestValue>
</Reference>
<Reference URI="css%2Fstyle.css">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>YCx4tiqoai276nR9sDZsPUcn0/z3Xi4XYMDXIcnGRhU=</DigestValue>
</Reference>
<Reference URI="icon.jpg">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>2ZXXmZkVOzH42v5SF/c73PYgxmcHHRii2/gn73UUhlo=</DigestValue>
</Reference>
<Reference URI="icon.png">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>kd617JYkX8IEUQERd72gL14zj6pgNVcKiSRAFQz6HX8=</DigestValue>
</Reference>
<Reference URI="index.html">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>CdntWzqB8DQYZKIF68hQqqZVLQPbLRf1hXjozO+agxA=</DigestValue>
</Reference>
<Reference URI="js%2Fapp.js">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>qAH6L1c0b9HsljfVO01W4pPPJppPjS4q9bbHtrfap1o=</DigestValue>
</Reference>
<Reference URI="version.txt">
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>jFS/q38a6b0acUjq5B57Co9K03JuDKxw+COi1F255gw=</DigestValue>
</Reference>
<Reference URI="#prop">
<Transforms>
<Transform Algorithm="http://www.w3.org/2006/12/xml-c14n11"></Transform>
</Transforms>
<DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"></DigestMethod>
<DigestValue>u/jU3U4Zm5ihTMSjKGlGYbWzDfRkGphPPHx3gJIYEJ4=</DigestValue>
</Reference>
</SignedInfo>
<SignatureValue>
FpBth+mhvZWqnAsg5Nq1Tm0z2kFg0AlVaifk8J4IZbFSUlyjg+Abw+GtwI0Wc/aTS4kSfvlTrBM0
nXWHfcIlnTfirhB2wwdX2p/ClNjFcz79iY3j9eN53pbxcaXdKibpfmmbxiKfBQCQcgU7fwMoCiN2
5EoqR1H4uhm/vzp50nrO98gWk1ZOlaK4TKRYL7e1Eo62RfpuF0DLGO/DZzMNExfxTCNeveVZ5yMO
rR8yNn2CojaGRXIT+rkyV7S3ToCRHP7cGVcgdF8j9tXRIxDDLfZN71UBc3tKfdVmyulR5SgvFSww
L0kqrLv0owbGtML+HyhklS+bbVQastBqCazXCA==
</SignatureValue>
<KeyInfo>
<X509Data>
<X509Certificate>
MIID3zCCAsegAwIBAgIBZTANBgkqhkiG9w0BAQsFADCBnjELMAkGA1UEBhMCS1IxFDASBgNVBAgM
C1NvdXRoIEtvcmVhMQ4wDAYDVQQHDAVTdXdvbjEmMCQGA1UECgwdU2Ftc3VuZyBFbGVjdHJvbmlj
cyBDby4sIEx0ZC4xDzANBgNVBAsMBk1vYmlsZTEwMC4GA1UEAwwnU2Ftc3VuZyBUaXplbiBERVZF
TE9QRVIgUHVibGljIENBIENsYXNzMB4XDTIwMDExOTIyMjQxNFoXDTIxMDExODIyMjQxNFowbTER
MA8GA1UEAwwIVGl6ZW5TREsxCTAHBgNVBAsMADEJMAcGA1UECgwAMQkwBwYDVQQHDAAxCTAHBgNV
BAgMADEJMAcGA1UEBhMAMSEwHwYJKoZIhvcNAQkBFhJyYXBoYWVsQG1hZW5sZS5uZXQwggEiMA0G
CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCmZiUK1d+T1xaUeuT5/7Hcezv5QrRAE+tEcVkYv/DR
1NGVgmR1wFKiJiEkFAWIAilpOGO3ZoOBakTQhxt7sQpJ9fFIepv9sHvKyQ2HB2YLHwhrKdSRnvD5
WytJDwK+W3nQwLXB/WR37AfoP0EofOkKXmv7rdoaHfUNPezb89S66m89i3TeTNeuDurp4VbBD35T
NunG/jHOXz3/nw5nclt2ue/MCOyru5saHYLJ/xqUMYp70/Jy4El7XIVLsJGx8nIFWf3ZYz5vWXa9
CS4sKuAmqKhGVvtoeWqYjEfXkzVTPpPMjaymOWzLeavhBRs7BI7WqQz/VHi6vGb+qmbUl0zzAgMB
AAGjWDBWMFQGA1UdEQRNMEuGFFVSTjp0aXplbjpwYWNrYWdlaWQ9hjNVUk46dGl6ZW46ZGV2aWNl
aWQ9Mi4wI2hocHR4Q1o0aUxiUkZMamUzNGhkU1lyOFpVdz0wDQYJKoZIhvcNAQELBQADggEBAHC3
mPS4MKqVEWK3jTA7UIRJy9ag14ZGhzvgQeGpPkpr9boJACYsU/nYYwUmn2FCJ3f2D6OSlgx6bSIy
KSnO1SgT+wHBMO53XJjiE8fzZesBVSwgp15/oLOed80sa15XEGHclgTL5z0JWy/EMKTGbd/0r6sa
qfZASlnU6AR+IToDDzj0oaeBMvVvjF54tQBFg7Mp3i9E06qlDo/MSKxI0fXuQg4KiNW6gHu3CVTt
wMRKvUjFKevZpVhn/GeZxAOa9Shnaq0iyS7Mwj31URMOGhj2p+4BYfH1rx+4nW7euVYje5N/MnZh
8OIcSt8/G75+1MHMLRcSHEuHoZc0Cxi3ot0=
</X509Certificate>
<X509Certificate>
MIIDuzCCAqOgAwIBAgICL+cwDQYJKoZIhvcNAQELBQAwgY8xCzAJBgNVBAYTAktSMRQwEgYDVQQI
DAtTb3V0aCBLb3JlYTEOMAwGA1UEBwwFU3V3b24xJjAkBgNVBAoMHVNhbXN1bmcgRWxlY3Ryb25p
Y3MgQ28uLCBMdGQuMTIwMAYDVQQDDClTYW1zdW5nIFRpemVuIERFVkVMT1BFUiBQdWJsaWMgUm9v
dCBDbGFzczAeFw0xMzEyMzAxNTAxNDdaFw0yODEyMjYxNTAxNDdaMIGeMQswCQYDVQQGEwJLUjEU
MBIGA1UECAwLU291dGggS29yZWExDjAMBgNVBAcMBVN1d29uMSYwJAYDVQQKDB1TYW1zdW5nIEVs
ZWN0cm9uaWNzIENvLiwgTHRkLjEPMA0GA1UECwwGTW9iaWxlMTAwLgYDVQQDDCdTYW1zdW5nIFRp
emVuIERFVkVMT1BFUiBQdWJsaWMgQ0EgQ2xhc3MwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
AoIBAQCkqW9d0zO5NFOc7u164DKe9Yx+yEgUnsbhnJasqHaqT71qaMxyCOjyysZi7gGycDcgmLcU
tr2wSMTGWPibK8SrJ8bV/J1cy9nTpljM3s+lbPIVVxZeufhJkU79tXImHLolERd0vui+rj0Xpd9O
zlyNTRt0+PWVT1taWcbfHL7pUD25hMkTc8C3bC+dUoT1/RhCkXgmUvIor3EnnU0rBtAl4qNtg5y1
7RLT8dyicieAHCcW923YC/ngMZxnBjbL2Ht1RBUvrL6K3X5+l0VeF4qC3g7TKm/a/SGjq12ZD4sc
7rglzjSNlTVSGag6/2WkqxE6HheEBWaloYOdauzwydFNAgMBAAGjEDAOMAwGA1UdEwQFMAMBAf8w
DQYJKoZIhvcNAQELBQADggEBAG88wKjKeTbj5I6wMEvRihd+gWrESJX3bXUSlHWjUfYKcvg3GzM9
cdooscqJdYgN8ezQuYiJQRk7BaPHSlPGkchsPUjvSM6WvIn9IT+VsEuVBrZNbZMSv6lM6wNig3TE
h2OxFTW6Bt8mCZB74EP2wb+39Fr5aJwWvmkxQjct3/O+GYPQhe0Lu1qpbbMhzafYYybSmO+om02V
cTWyJ/vtLUNyGfN7aHyBm6PFE5piAfpBaO9Az+zWil1HOsnzu1tGGnyV6IzQ/UiIo5P2sD8I5lEO
Xdf9Eicy9y5z2Ci2zrmDcAGWL8o5wOWrCqML2ijximFzyQ/swlMC9xBIX9RCFws=
</X509Certificate>
</X509Data>
</KeyInfo>
<Object Id="prop"><SignatureProperties xmlns:dsp="http://www.w3.org/2009/xmldsig-properties"><SignatureProperty Id="profile" Target="#DistributorSignature"><dsp:Profile URI="http://www.w3.org/ns/widgets-digsig#profile"></dsp:Profile></SignatureProperty><SignatureProperty Id="role" Target="#DistributorSignature"><dsp:Role URI="http://www.w3.org/ns/widgets-digsig#role-distributor"></dsp:Role></SignatureProperty><SignatureProperty Id="identifier" Target="#DistributorSignature"><dsp:Identifier></dsp:Identifier></SignatureProperty></SignatureProperties></Object>
</Signature>

View File

@ -7,5 +7,6 @@
</platforms>
<package>
<blacklist/>
<resFallback autoGen="true"/>
</package>
</tproject>

Binary file not shown.

BIN
certificates/author.p12 Normal file

Binary file not shown.

Binary file not shown.

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<widget xmlns="http://www.w3.org/ns/widgets" xmlns:tizen="http://tizen.org/ns/widgets" id="http://yourdomain/CalendarWatch" version="1.0.0" viewmodes="maximized">
<tizen:application id="6dY8X5wAPN.CalendarWatch" package="6dY8X5wAPN" required_version="2.3.1" ambient_support="enable"/>
<widget xmlns:tizen="http://tizen.org/ns/widgets" xmlns="http://www.w3.org/ns/widgets" id="http://yourdomain/CalendarWatch" version="1.0.0" viewmodes="maximized">
<tizen:application id="6dY8X5wAPS.CalendarWatch" package="6dY8X5wAPS" required_version="2.3.1" ambient_support="enable"/>
<author href="https://www.longitudecalendar.com" email="raphael@maenle.net">Raphael Maenle</author>
<tizen:category name="http://tizen.org/category/wearable_clock"/>
<content src="index.html"/>
@ -13,5 +13,6 @@
<tizen:privilege name="http://tizen.org/privilege/calendar.write"/>
<tizen:privilege name="http://tizen.org/privilege/filesystem.read"/>
<tizen:privilege name="http://tizen.org/privilege/filesystem.write"/>
<tizen:privilege name="http://tizen.org/privilege/mediastorage"/>
<tizen:profile name="wearable"/>
</widget>

350
js/app.js
View File

@ -11,10 +11,18 @@
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* limitations under the License.
*/
var events;
/* 'downloads' for debugging,
* 'wgt-private' for any release */
var STORAGE_SPACE = "wgt-private";
var SHORT_WAIT = 10000;
var LONG_WAIT = 600000;
var wait_time = LONG_WAIT;
var events = null;
var deviceFingerprint = null;
var eventsTimeStamp = 0;
(function() {
@ -24,85 +32,207 @@ var eventsTimeStamp = 0;
ctxContent,
center,
watchRadius;
function readJSON(path) {
var xhr = new XMLHttpRequest();
xhr.open('GET', path, true);
xhr.responseType = 'blob';
xhr.onload = function(e) {
if (this.status == 0) {
var file = new File([this.response], 'temp');
var fileReader = new FileReader();
fileReader.addEventListener('load', function(){
events = JSON.parse(fileReader.result);
var onError = function(e) {
console.log('Error!' + e.message);
};
var onResolveSuccess = function(dir) {
var onListFilesSuccess = function(files) {
files.forEach(function(file) {
if (!file.isDirectory) {
dir.deleteFile(file.fullPath, onDeleteSuccess, onError);
}
});
};
dir.listFiles(onListFilesSuccess, onError);
};
var onDeleteSuccess = function() {};
tizen.filesystem.resolve('/opt/usr/media/Downloads', onResolveSuccess, onError);
});
fileReader.readAsText(file);
}
function deleteFile(name, callback) {
/* successful resolution of wgt-private */
function onsuccess(dir){
var dirfile = null;
try {
dirfile = dir.resolve(name);
} catch (exc) {
console.log(exc.message)
}
// if file not existed, call callback with null
if(dirfile == null) {
callback();
return;
} else {
// if file was found, delete it
dir.deleteFile(dirfile.fullPath, function() {
console.log("deleted");
callback();
},
function(e) {console.log(e)});
}
}
function onerror(e){
console.log("error"+e);
}
xhr.send();
function onsuccessPermission(){
tizen.filesystem.resolve(STORAGE_SPACE, onsuccess, onerror, "rw");
}
function onErrorPermission(e){
console.log("error "+ JSON.stringify(e));
}
tizen.ppm.requestPermission("http://tizen.org/privilege/mediastorage", onsuccessPermission, onErrorPermission);
}
function clearDownloads() {
var onError = function(e) {
console.log('Error!' + e.message);
};
var onResolveSuccess = function(dir) {
var onListFilesSuccess = function(files) {
files.forEach(function(file) {
if (!file.isDirectory) {
dir.deleteFile(file.fullPath, onDeleteSuccess, onError);
}
});
};
dir.listFiles(onListFilesSuccess, onError);
};
var onDeleteSuccess = function() {};
tizen.filesystem.resolve('/opt/usr/media/Downloads', onResolveSuccess, onError);
}
function getJSON() {
var downloadRequest = new tizen.DownloadRequest('https://longitudecalendar.com/userinfo/107971745944668140075/calendarevents.json', 'downloads');
tizen.systeminfo.getPropertyValue('NETWORK', function(networkInfo) {
if (networkInfo.networkType === 'NONE') {
console.log('Network connection is not available.Download is not possible.');
downloadRequest = null;
}
});
function getJsonFile(name, callback) {
console.log("searching for File");
/* successful resolution of wgt-private */
function onsuccess(dir){
var dirfile = null;
try {
dirfile = dir.resolve(name);
} catch (exc) {
console.log(exc.message)
}
var listener = {
/* When the download progresses (interval is platform-dependent) */
onprogress: function(id, receivedSize, totalSize) {
console.log('progress for id: ' + id);
console.log('received: ' + receivedSize + ", total: " + totalSize);
},
// if file not existed, call callback with null
if(dirfile == null) {
callback(null)
return;
} else {
// if file was found, call callback with json
dirfile.openStream("r", function(fs) {
callback(JSON.parse(fs.read(dirfile.fileSize)));
fs.close();
});
}
}
function onerror(e){
console.log("error"+e);
}
function onsuccessPermission(){
tizen.filesystem.resolve(STORAGE_SPACE, onsuccess, onerror, "rw");
}
function onErrorPermission(e){
console.log("error "+ JSON.stringify(e));
}
tizen.ppm.requestPermission("http://tizen.org/privilege/mediastorage", onsuccessPermission, onErrorPermission);
}
function readJSON() {
/* - requests permission to view media storage
* - resolves the file 'calendarevents'
* - opens stream and reads entire file as json
*/
getJsonFile("calendarevents", function(eventlist) {events = eventlist;});
}
function getNewFingerprintFromServer() {
getFileFromServer("/devicefingerprint.json", function() {
console.log("getting device fingerprint from server")
getJsonFile("devicefingerprint", function(df) {devicefingerprint = df; console.log(devicefingerprint)});
});
}
/* When the user pauses the download */
onpaused: function(id) {
console.log('Paused with id: ' + id);
},
function getDeviceFingerprint() {
// check if device id set already as global, if it is return
if(deviceFingerprint != null)
return;
// otherwise, check if there is a devicefingerprint file in wgt-private
// if there is, open it up and get your device ID from it
getJsonFile("devicefingerprint", function(df) {
if(df != null) {
deviceFingerprint = df;
} else {
// otherwise, ask the longitude server for a device fingerprint file
getNewFingerprintFromServer();
}
})
}
function getFileFromServer(route, callback) {
console.log("getting file");
var server = "https://longitudecalendar.com/"
var downloadRequest = new tizen.DownloadRequest(server + route, STORAGE_SPACE);
tizen.systeminfo.getPropertyValue('NETWORK', function(networkInfo) {
if (networkInfo.networkType === 'NONE') {
console.log('Network connection is not available.Download is not possible.');
downloadRequest = null;
}
});
var listener = {
/* When the download progresses (interval is platform-dependent) */
onprogress: function(id, receivedSize, totalSize) {
console.log('progress for id: ' + id);
},
/* When the user cancels the download */
oncanceled: function(id) {
console.log('Canceled with id: ' + id);
},
/* When the user pauses the download */
onpaused: function(id) {
console.log('Paused with id: ' + id);
},
/* When the download is completed */
oncompleted: function(id, fullPath) {
console.log('Completed with id: ' + id + ', full path: ' + fullPath);
readJSON(fullPath);
},
/* When the user cancels the download */
oncanceled: function(id) {
console.log('Canceled with id: ' + id);
},
/* When the download fails */
onfailed: function(id, error) {
console.log('Failed with id: ' + id + ', error name: ' + error.name);
}
};
downloadId = tizen.download.start(downloadRequest, listener);
/* When the download is completed */
oncompleted: function(id, fullPath) {
console.log('Completed with id: ' + id + ', full path: ' + fullPath);
callback();
},
/* When the download fails */
onfailed: function(id, error) {
console.log('Failed with id: ' + id + ', error name: ' + error.name);
}
};
tizen.download.start(downloadRequest, listener);
}
function updateCalendar() {
if(deviceFingerprint == null) {
console.log("no fingerprint, loading from file or server");
getDeviceFingerprint();
wait_time = SHORT_WAIT;
return false;
}
function deleteCallback() {
console.log("done");
console.log("getting new calendar events");
getFileFromServer("device/" + deviceFingerprint.deviceName + "/calendarevents.json", readJSON);
}
console.log("deleting calendarevents");
deleteFile("calendarevents", deleteCallback);
return true;
}
/**
@ -258,8 +388,8 @@ var eventsTimeStamp = 0;
function renderEarth(date, minute, second) {
earthColor = "#0077BE";
earthDistance = document.body.clientWidth / 2 - 120;
var earthColor = "#0077BE";
var earthDistance = document.body.clientWidth / 2 - 120;
renderCircle(ctxContent, polToCart(earthDistance, minuteToAngle(minute + second / 60)), 10, earthColor);
}
@ -291,9 +421,7 @@ var eventsTimeStamp = 0;
* @private
*/
function drawWatchLayout() {
var grd,
angle,
i,
var i,
j;
// Clear canvas
@ -347,32 +475,35 @@ var eventsTimeStamp = 0;
// Draw the minute needle
renderEarth(ctxContent, minute, second);
// renderNeedle(ctxContent, Math.PI * (((minute + second / 60) / 30) - 0.5), 0, 0.70, 3, "#454545");
// Draw the minute/hour circle
// renderCircle(ctxContent, center, 8, "#454545");
// Draw the second needle
// ctxContent.shadowOffsetX = 4;
// ctxContent.shadowOffsetY = 4;
// renderNeedle(ctxContent, Math.PI * ((second / 30) - 0.5), -0.10, 0.85, 1, "#c4c4c4");
// Draw the second circle
// ctxContent.shadowOffsetX = 0;
// ctxContent.shadowOffsetY = 0;
// renderCircle(ctxContent, center, 5, "#c4c4c4");
// Draw the center circle
// renderCircle(ctxContent, center, 2, "#454545");
// Draw the text for date
// renderText(ctxContent, date, center.x, center.y + (watchRadius * 0.5), 25, "#999999");
/* if no return from server yet */
if(events == null)
return;
thickness = 18;
edge = document.body.clientWidth / 2 - thickness / 2 - 2;
/* if device not on server anymore */
if(events.kind == "not found") {
deviceFingerprint = null;
events = null;
deleteFile("devicefingerprint", function() {});
wait_time = SHORT_WAIT;
return;
}
/* if device not registered */
if(events.kind == "unregistered") {
wait_time = SHORT_WAIT;
if(deviceFingerprint === null) {
} else {
renderText(ctxContent, deviceFingerprint.deviceName, center.x, center.y, 20, "FF0000");
}
return;
}
console.log("switched to long wait");
wait_time = LONG_WAIT;
/* else: device registered and all events saved */
var thickness = 18;
var edge = document.body.clientWidth / 2 - thickness / 2 - 2;
for(var event in events.events){
var startedBeforeToday = false;
@ -426,15 +557,13 @@ var eventsTimeStamp = 0;
}
function updateCalendar(offset_ms) {
function loopCalendar(offset_ms) {
var d = new Date();
var currentTime = d.getTime();
console.log("current Time: " + currentTime);
if(eventsTimeStamp + offset_ms < currentTime){
console.log("updating Events");
getJSON();
eventsTimeStamp = currentTime;
}
updateCalendar();
eventsTimeStamp = currentTime;
}
}
@ -482,6 +611,7 @@ var eventsTimeStamp = 0;
* @private
*/
function init() {
// clearDownloads();
setDefaultVariables();
setDefaultEvents();
@ -492,7 +622,7 @@ var eventsTimeStamp = 0;
// Update the content of the watch every second
setInterval(function() {
drawWatchContent();
updateCalendar(60000);
loopCalendar(wait_time);
}, 1000);
}
@ -520,4 +650,4 @@ document.addEventListener('timetick', function(ev) {
/* Update the UI */
drawWatchContent();
});
});