Merge branch 'master' of https://github.com/rozek/BangleApps
|
@ -0,0 +1,60 @@
|
||||||
|
name: Bangle.js bug report
|
||||||
|
description: "Create a issue to help us improve!"
|
||||||
|
title: "[app/widget name] Short description of bug"
|
||||||
|
labels: ["bug"]
|
||||||
|
assignees: []
|
||||||
|
body:
|
||||||
|
- type: markdown
|
||||||
|
attributes:
|
||||||
|
value: |
|
||||||
|
**:fire: Attention: If you have a question then please ask on the [Bangle.js forum](http://forum.espruino.com/microcosms/1424/) :fire:**
|
||||||
|
-----------------------------------------------------
|
||||||
|
- type: dropdown
|
||||||
|
id: hwversion
|
||||||
|
attributes:
|
||||||
|
label: Affected hardware version
|
||||||
|
description: |
|
||||||
|
Which Bangle hardware version(s) is/are affected? _You can select multiple entries._
|
||||||
|
options:
|
||||||
|
- Bangle 1
|
||||||
|
- Bangle 2
|
||||||
|
multiple: true
|
||||||
|
validations:
|
||||||
|
required: true
|
||||||
|
- type: input
|
||||||
|
id: fwversion
|
||||||
|
attributes:
|
||||||
|
label: Your firmware version
|
||||||
|
description: |
|
||||||
|
**Please make sure you have installed the latest (released) firmware!**
|
||||||
|
To find your firmware version, check the `About` Bangle.js app or connect with [the App Loader](https://banglejs.com/apps/), click `More...` and look for a `Device Info` heading.
|
||||||
|
If the issue occurs only in "Cutting Edge" builds, please mention this.
|
||||||
|
|
||||||
|
**FW Update instructions:**
|
||||||
|
* **Bangle 2:** [firmware update instructions](https://www.espruino.com/Bangle.js2#firmware-updates)
|
||||||
|
* **Bangle 1:** [firmware update instructions](https://www.espruino.com/Bangle.js#firmware-updates)
|
||||||
|
_Hint: The links will open in-place (hold ctrl/cmd-key and click to open in a new tab instead)_
|
||||||
|
placeholder: e.g. 2v12
|
||||||
|
validations:
|
||||||
|
required: true
|
||||||
|
- type: textarea
|
||||||
|
id: report
|
||||||
|
attributes:
|
||||||
|
label: The bug
|
||||||
|
description: |
|
||||||
|
**Please also mention the expected behaviour and steps to reproduce**
|
||||||
|
placeholder: |
|
||||||
|
### Describe the bug
|
||||||
|
A clear and concise description of what the bug is.
|
||||||
|
|
||||||
|
### Expected behavior
|
||||||
|
A clear and concise description of what you expected to happen.
|
||||||
|
|
||||||
|
### Steps to reproduce
|
||||||
|
1. Do you have other apps/widgets installed that are relevant?
|
||||||
|
2. Start app xy
|
||||||
|
3. Perform some action
|
||||||
|
4. bug occurs
|
||||||
|
|
||||||
|
validations:
|
||||||
|
required: true
|
|
@ -9,3 +9,4 @@ appdates.csv
|
||||||
_config.yml
|
_config.yml
|
||||||
tests/Layout/bin/tmp.*
|
tests/Layout/bin/tmp.*
|
||||||
tests/Layout/testresult.bmp
|
tests/Layout/testresult.bmp
|
||||||
|
apps.local.json
|
36
README.md
|
@ -12,7 +12,7 @@ and that it is not licensed in another way that would make this impossible.
|
||||||
|
|
||||||
## How does it work?
|
## How does it work?
|
||||||
|
|
||||||
* A list of apps is in `apps.json`
|
* A list of apps is in `apps.json` (this is auto-generated from all the `apps/yourapp/metadata.json` using Jekyll or `bin/create_apps_json.sh`)
|
||||||
* Each element references an app in `apps/<id>` which is uploaded
|
* Each element references an app in `apps/<id>` which is uploaded
|
||||||
* When it starts, BangleAppLoader checks the JSON and compares
|
* When it starts, BangleAppLoader checks the JSON and compares
|
||||||
it with the files it sees in the watch's storage.
|
it with the files it sees in the watch's storage.
|
||||||
|
@ -53,10 +53,10 @@ easily distinguish between file types, we use the following:
|
||||||
is limited to 28 char filenames and appends a file extension (eg `.js`) so please
|
is limited to 28 char filenames and appends a file extension (eg `.js`) so please
|
||||||
try and keep filenames short to avoid overflowing the buffer.
|
try and keep filenames short to avoid overflowing the buffer.
|
||||||
* Create a folder called `apps/<id>`, lets assume `apps/myappid`
|
* Create a folder called `apps/<id>`, lets assume `apps/myappid`
|
||||||
* We'd recommend that you copy files from 'Example Applications' (below) as a base, or...
|
* We'd recommend that you copy files from one of the Examples in `apps/_example_*` (see below), or...
|
||||||
* `apps/myappid/app.png` should be a 48px icon
|
* `apps/myappid/app.png` should be a 48px icon
|
||||||
* Use http://www.espruino.com/Image+Converter to create `apps/myappid/app-icon.js`, using a 1 bit, 4 bit or 8 bit Web Palette "Image String"
|
* Use http://www.espruino.com/Image+Converter to create `apps/myappid/app-icon.js`, using a 1 bit, 4 bit or 8 bit Web Palette "Image String"
|
||||||
* Create an entry in `apps.json` as follows:
|
* Create/modify `apps/myappid/metadata.json` as follows:
|
||||||
|
|
||||||
```
|
```
|
||||||
{ "id": "myappid",
|
{ "id": "myappid",
|
||||||
|
@ -116,8 +116,7 @@ and set it to `Load default application`.
|
||||||
|
|
||||||
To make the process easier we've come up with some example applications that you can use as a base
|
To make the process easier we've come up with some example applications that you can use as a base
|
||||||
when creating your own. Just come up with a unique name (ideally lowercase, under 20 chars), copy `apps/_example_app`
|
when creating your own. Just come up with a unique name (ideally lowercase, under 20 chars), copy `apps/_example_app`
|
||||||
or `apps/_example_widget` to `apps/myappid`, and add `apps/_example_X/add_to_apps.json` to
|
or `apps/_example_widget` to `apps/myappid`, and edit `apps/myappid/metadata.json` accordingly.
|
||||||
`apps.json`.
|
|
||||||
|
|
||||||
**Note:** the max filename length is 28 chars, so we suggest an app ID of under
|
**Note:** the max filename length is 28 chars, so we suggest an app ID of under
|
||||||
20 so that when `.app.js`/etc gets added to the end the filename isn't cropped.
|
20 so that when `.app.js`/etc gets added to the end the filename isn't cropped.
|
||||||
|
@ -131,7 +130,7 @@ The app example is available in [`apps/_example_app`](apps/_example_app)
|
||||||
|
|
||||||
Apps are listed in the Bangle.js menu, accessible from a clock app via the middle button.
|
Apps are listed in the Bangle.js menu, accessible from a clock app via the middle button.
|
||||||
|
|
||||||
* `add_to_apps.json` - insert into `apps.json`, describes the app to bootloader and loader
|
* `metadata.json` - describes the app to bootloader and loader
|
||||||
* `app.png` - app icon - 48x48px
|
* `app.png` - app icon - 48x48px
|
||||||
* `app-icon.js` - JS version of the icon (made with http://www.espruino.com/Image+Converter) for use in Bangle.js's menu
|
* `app-icon.js` - JS version of the icon (made with http://www.espruino.com/Image+Converter) for use in Bangle.js's menu
|
||||||
* `app.js` - app code
|
* `app.js` - app code
|
||||||
|
@ -144,11 +143,11 @@ Use the Espruino [image converter](https://www.espruino.com/Image+Converter) and
|
||||||
|
|
||||||
Follow this steps to create a readable icon as image string.
|
Follow this steps to create a readable icon as image string.
|
||||||
|
|
||||||
1. upload a png file
|
1. upload a 48x48 png file - THE IMAGE SHOULD BE 48x48 OR LESS
|
||||||
2. set _X_ Use Compression
|
2. set _X_ Use Compression
|
||||||
3. set _X_ Transparency (optional)
|
3. set _X_ Transparency (optional)
|
||||||
4. set Diffusion: _flat_
|
4. set Diffusion: _flat_
|
||||||
5. set Colours: _1 bit_, _4 bit_ or _8 bit Web Palette_
|
5. set Colours: _1 bit_, any of the Optimised options, or _8 bit Web Palette_ are best
|
||||||
6. set Output as: _Image String_
|
6. set Output as: _Image String_
|
||||||
|
|
||||||
Replace this line with the image converter output:
|
Replace this line with the image converter output:
|
||||||
|
@ -157,6 +156,8 @@ Replace this line with the image converter output:
|
||||||
require("heatshrink").decompress(atob("mEwwJC/AH4A/AH4AgA=="))
|
require("heatshrink").decompress(atob("mEwwJC/AH4A/AH4AgA=="))
|
||||||
```
|
```
|
||||||
|
|
||||||
|
**Do not add a trailing semicolon**
|
||||||
|
|
||||||
You can also use this converter for creating images you like to draw with `g.drawImage()` with your app.
|
You can also use this converter for creating images you like to draw with `g.drawImage()` with your app.
|
||||||
|
|
||||||
Apps that need widgets can call `Bangle.loadWidgets()` **once** at startup to load
|
Apps that need widgets can call `Bangle.loadWidgets()` **once** at startup to load
|
||||||
|
@ -167,7 +168,7 @@ has call to completely clear the screen. Widgets themselves will update as and w
|
||||||
|
|
||||||
The widget example is available in [`apps/_example_widget`](apps/_example_widget)
|
The widget example is available in [`apps/_example_widget`](apps/_example_widget)
|
||||||
|
|
||||||
* `add_to_apps.json` - insert into `apps.json`, describes the widget to bootloader and loader
|
* `metadata.json` - describes the widget to bootloader and loader
|
||||||
* `widget.js` - widget code
|
* `widget.js` - widget code
|
||||||
|
|
||||||
Widgets are just small bits of code that run whenever an app that supports them
|
Widgets are just small bits of code that run whenever an app that supports them
|
||||||
|
@ -203,7 +204,7 @@ and which gives information about the app for the Launcher.
|
||||||
// if it's 'clock' then it'll be loaded by default at boot time
|
// if it's 'clock' then it'll be loaded by default at boot time
|
||||||
// if this is 'bootloader' then it's code that is run at boot time, but is not in a menu
|
// if this is 'bootloader' then it's code that is run at boot time, but is not in a menu
|
||||||
"version":"1.23",
|
"version":"1.23",
|
||||||
// added by BangleApps loader on upload based on apps.json
|
// added by BangleApps loader on upload based on metadata.json
|
||||||
"files:"file1,file2,file3",
|
"files:"file1,file2,file3",
|
||||||
// added by BangleApps loader on upload - lists all files
|
// added by BangleApps loader on upload - lists all files
|
||||||
// that belong to the app so it can be deleted
|
// that belong to the app so it can be deleted
|
||||||
|
@ -215,7 +216,7 @@ and which gives information about the app for the Launcher.
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
### `apps.json` format
|
### `metadata.json` format
|
||||||
|
|
||||||
```
|
```
|
||||||
{ "id": "appid", // 7 character app id
|
{ "id": "appid", // 7 character app id
|
||||||
|
@ -294,9 +295,9 @@ and which gives information about the app for the Launcher.
|
||||||
* storage is used to identify the app files and how to handle them
|
* storage is used to identify the app files and how to handle them
|
||||||
* data is used to clean up files when the app is uninstalled
|
* data is used to clean up files when the app is uninstalled
|
||||||
|
|
||||||
### `apps.json`: `custom` element
|
### `metadata.json`: `custom` element
|
||||||
|
|
||||||
Apps that can be customised need to define a `custom` element in `apps.json`,
|
Apps that can be customised need to define a `custom` element in `metadata.json`,
|
||||||
which names an HTML file in that app's folder.
|
which names an HTML file in that app's folder.
|
||||||
|
|
||||||
When `custom` is defined, the 'upload' button is replaced by a customize
|
When `custom` is defined, the 'upload' button is replaced by a customize
|
||||||
|
@ -304,7 +305,7 @@ button, and when clicked it opens the HTML page specified in an iframe.
|
||||||
|
|
||||||
In that HTML file you're then responsible for handling a button
|
In that HTML file you're then responsible for handling a button
|
||||||
press and calling `sendCustomizedApp` with your own customised
|
press and calling `sendCustomizedApp` with your own customised
|
||||||
version of what's in `apps.json`:
|
version of what's in `metadata.json`:
|
||||||
|
|
||||||
```
|
```
|
||||||
<html>
|
<html>
|
||||||
|
@ -336,9 +337,9 @@ for a clean example.
|
||||||
and will never be loaded. This is so the app loader can tell if it's a JavaScript
|
and will never be loaded. This is so the app loader can tell if it's a JavaScript
|
||||||
file based on the extension, and if so it can minify and pretokenise it.
|
file based on the extension, and if so it can minify and pretokenise it.
|
||||||
|
|
||||||
### `apps.json`: `interface` element
|
### `metadata.json`: `interface` element
|
||||||
|
|
||||||
Apps that create data that can be read back can define a `interface` element in `apps.json`,
|
Apps that create data that can be read back can define a `interface` element in `metadata.json`,
|
||||||
which names an HTML file in that app's folder.
|
which names an HTML file in that app's folder.
|
||||||
|
|
||||||
When `interface` is defined, a `Download from App` button is added to
|
When `interface` is defined, a `Download from App` button is added to
|
||||||
|
@ -402,7 +403,7 @@ Example `settings.js`
|
||||||
E.showMenu(appMenu)
|
E.showMenu(appMenu)
|
||||||
})
|
})
|
||||||
```
|
```
|
||||||
In this example the app needs to add `myappid.settings.js` to `storage` in `apps.json`.
|
In this example the app needs to add `myappid.settings.js` to `storage` in `metadata.json`.
|
||||||
It should also add `myappid.json` to `data`, to make sure it is cleaned up when the app is uninstalled.
|
It should also add `myappid.json` to `data`, to make sure it is cleaned up when the app is uninstalled.
|
||||||
```json
|
```json
|
||||||
{ "id": "myappid",
|
{ "id": "myappid",
|
||||||
|
@ -513,7 +514,6 @@ The [`testing`](testing) folder contains snippets of code that might be useful f
|
||||||
|
|
||||||
* `testing/colors.js` - 16 bit colors as name value pairs
|
* `testing/colors.js` - 16 bit colors as name value pairs
|
||||||
* `testing/gpstrack.js` - code to store a GPS track in Bangle.js storage and output it back to the console
|
* `testing/gpstrack.js` - code to store a GPS track in Bangle.js storage and output it back to the console
|
||||||
* `testing/map` - code for splitting an image into map tiles and then displaying them
|
|
||||||
|
|
||||||
## Credits
|
## Credits
|
||||||
|
|
||||||
|
|
31
apps.json
|
@ -1,13 +1,38 @@
|
||||||
---
|
---
|
||||||
|
# =================================================================
|
||||||
|
# ALL THE INFORMATION INSIDE APPS.JSON HAS NOW BEEN MOVED
|
||||||
|
#
|
||||||
|
# You'll find it inside a file called apps/yourapp/metadata.json
|
||||||
|
#
|
||||||
|
# Otherwise nothing has changed. GitHub Pages will automatically
|
||||||
|
# create apps.json as your site is hosted, or if you're hosting
|
||||||
|
# yourself you can run bin/create_apps_json.sh
|
||||||
|
#
|
||||||
|
# If you serve the store from localhost for development/testing,
|
||||||
|
# the loader looks for apps.local.json instead, you can run
|
||||||
|
# `bin/create_apps_json.sh apps.local.json` to create that file.
|
||||||
|
# =================================================================
|
||||||
|
|
||||||
|
# Uncomment the following line if you only want explicitly listed
|
||||||
|
# apps to be available on your site
|
||||||
|
|
||||||
|
# restricted: ["boot", "launch", "antonclk", "health", "setting", "about", "widbat", "widbt", "widlock", "widid"]
|
||||||
---
|
---
|
||||||
{%- assign apps = site.static_files | where: "name", "metadata.json" -%}
|
{%- if page.restricted == nil -%}
|
||||||
|
{%- assign apps = site.static_files | where: "name", "metadata.json" | map: "path" -%}
|
||||||
|
{%- else -%}
|
||||||
|
{%- capture temp -%}
|
||||||
|
{%- for app in page.restricted %} /apps/{{app}}/metadata.json {%- endfor -%}
|
||||||
|
{%- endcapture -%}
|
||||||
|
{%- assign apps = temp | strip | split: " " -%}
|
||||||
|
{%- endif -%}
|
||||||
|
|
||||||
[
|
[
|
||||||
|
|
||||||
{%- include_relative {{ apps.first.path }} -%}
|
{%- include_relative {{ apps.first }} -%}
|
||||||
|
|
||||||
{%- for app in apps offset:1 -%}
|
{%- for app in apps offset:1 -%}
|
||||||
,{%- include_relative {{ app.path }} -%}
|
,{%- include_relative {{ app }} -%}
|
||||||
{%- endfor -%}
|
{%- endfor -%}
|
||||||
|
|
||||||
]
|
]
|
||||||
|
|
|
@ -8,6 +8,7 @@
|
||||||
"tags": "Color,input,buttons,touch,UI",
|
"tags": "Color,input,buttons,touch,UI",
|
||||||
"supports": ["BANGLEJS"],
|
"supports": ["BANGLEJS"],
|
||||||
"readme": "README.md",
|
"readme": "README.md",
|
||||||
|
"screenshots": [{"url":"UI4swatch_icon.png"},{"url":"UI4swatch_s1.png"}],
|
||||||
"storage": [
|
"storage": [
|
||||||
{"name":"UI4swatch.app.js","url":"app.js"},
|
{"name":"UI4swatch.app.js","url":"app.js"},
|
||||||
{"name":"UI4swatch.img","url":"app-icon.js","evaluate":true}
|
{"name":"UI4swatch.img","url":"app-icon.js","evaluate":true}
|
||||||
|
|
|
@ -1,2 +1,3 @@
|
||||||
0.01: New App!
|
0.01: New App!
|
||||||
0.02: Faster maze generation
|
0.02: Faster maze generation
|
||||||
|
0.03: Avoid clearing bottom widgets
|
||||||
|
|
|
@ -11,13 +11,10 @@ function Maze(n) {
|
||||||
this.margin = Math.floor((g.getHeight()-this.total_length)/2);
|
this.margin = Math.floor((g.getHeight()-this.total_length)/2);
|
||||||
this.ball_x = 0;
|
this.ball_x = 0;
|
||||||
this.ball_y = 0;
|
this.ball_y = 0;
|
||||||
this.clearScreen = function() {
|
// This voodoo is needed because otherwise
|
||||||
g.clearRect(
|
// bottom line widgets (like digital clock)
|
||||||
0, this.margin,
|
// disappear during maze generation
|
||||||
g.getWidth(), this.margin+this.total_length
|
Bangle.drawWidgets();
|
||||||
);
|
|
||||||
};
|
|
||||||
this.clearScreen();
|
|
||||||
g.setColor(g.theme.fg);
|
g.setColor(g.theme.fg);
|
||||||
for (let i=0; i<=n; i++) {
|
for (let i=0; i<=n; i++) {
|
||||||
g.drawRect(
|
g.drawRect(
|
||||||
|
@ -66,7 +63,7 @@ function Maze(n) {
|
||||||
if (Math.random()<0.5 && candidates_down.length || !candidates_right.length) {
|
if (Math.random()<0.5 && candidates_down.length || !candidates_right.length) {
|
||||||
trying_down = true;
|
trying_down = true;
|
||||||
}
|
}
|
||||||
let candidates = trying_down ? candidates_down : candidates_right;
|
let candidates = trying_down ? candidates_down : candidates_right,
|
||||||
candidate_index = Math.floor(Math.random()*candidates.length),
|
candidate_index = Math.floor(Math.random()*candidates.length),
|
||||||
cell = candidates.splice(candidate_index, 1)[0],
|
cell = candidates.splice(candidate_index, 1)[0],
|
||||||
r = Math.floor(cell/n),
|
r = Math.floor(cell/n),
|
||||||
|
@ -105,11 +102,6 @@ function Maze(n) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
this.clearScreen = function() {
|
|
||||||
g.clearRect(
|
|
||||||
0, MARGIN, g.getWidth(), g.getHeight()-MARGIN-1
|
|
||||||
);
|
|
||||||
};
|
|
||||||
this.clearCell = function(r, c) {
|
this.clearCell = function(r, c) {
|
||||||
if (!r && !c) {
|
if (!r && !c) {
|
||||||
g.setColor("#ffff00");
|
g.setColor("#ffff00");
|
||||||
|
@ -263,7 +255,7 @@ let mazeMenu = {
|
||||||
"< Exit": function() { setTimeout(load, 100); } // timeout voodoo prevents deadlock
|
"< Exit": function() { setTimeout(load, 100); } // timeout voodoo prevents deadlock
|
||||||
};
|
};
|
||||||
|
|
||||||
g.clear(true);
|
g.reset();
|
||||||
Bangle.loadWidgets();
|
Bangle.loadWidgets();
|
||||||
Bangle.drawWidgets();
|
Bangle.drawWidgets();
|
||||||
Bangle.setLocked(false);
|
Bangle.setLocked(false);
|
||||||
|
@ -289,7 +281,7 @@ let maze_interval = setInterval(
|
||||||
duration = Date.now()-start_time;
|
duration = Date.now()-start_time;
|
||||||
g.setFontAlign(0,0).setColor(g.theme.fg);
|
g.setFontAlign(0,0).setColor(g.theme.fg);
|
||||||
g.setFont("Vector",18);
|
g.setFont("Vector",18);
|
||||||
g.drawString(`Solved ${maze.n}X${maze.n} in\n ${timeToText(duration)} \nClick to play again`, g.getWidth()/2, g.getHeight()/2, true);
|
g.drawString(`Solved ${maze.n}X${maze.n} in\n ${timeToText(duration)} \nBtn1 to play again`, g.getWidth()/2, g.getHeight()/2, true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}, 25);
|
}, 25);
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
{ "id": "acmaze",
|
{ "id": "acmaze",
|
||||||
"name": "AccelaMaze",
|
"name": "AccelaMaze",
|
||||||
"shortName":"AccelaMaze",
|
"shortName":"AccelaMaze",
|
||||||
"version":"0.02",
|
"version":"0.03",
|
||||||
"description": "Tilt the watch to roll a ball through a maze.",
|
"description": "Tilt the watch to roll a ball through a maze.",
|
||||||
"icon": "app.png",
|
"icon": "app.png",
|
||||||
"tags": "game",
|
"tags": "game",
|
||||||
"supports" : ["BANGLEJS2"],
|
"supports" : ["BANGLEJS","BANGLEJS2"],
|
||||||
"readme": "README.md",
|
"readme": "README.md",
|
||||||
"screenshots": [{"url":"screenshot.png"}],
|
"screenshots": [{"url":"screenshot.png"}],
|
||||||
"storage": [
|
"storage": [
|
||||||
|
|
|
@ -8,6 +8,7 @@
|
||||||
"tags": "outdoors,widget",
|
"tags": "outdoors,widget",
|
||||||
"supports": ["BANGLEJS"],
|
"supports": ["BANGLEJS"],
|
||||||
"readme": "README.md",
|
"readme": "README.md",
|
||||||
|
"screenshots": [{"url":"600.png"},{"url":"10600.png"},{"url":"1600.png"}],
|
||||||
"storage": [
|
"storage": [
|
||||||
{"name":"activepedom.wid.js","url":"widget.js"},
|
{"name":"activepedom.wid.js","url":"widget.js"},
|
||||||
{"name":"activepedom.settings.js","url":"settings.js"},
|
{"name":"activepedom.settings.js","url":"settings.js"},
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
active = active.sort((a,b)=>(a.hr-b.hr)+(a.last-b.last)*24);
|
active = active.sort((a,b)=>(a.hr-b.hr)+(a.last-b.last)*24);
|
||||||
var hr = time.getHours()+(time.getMinutes()/60)+(time.getSeconds()/3600);
|
var hr = time.getHours()+(time.getMinutes()/60)+(time.getSeconds()/3600);
|
||||||
if (!require('Storage').read("alarm.js")) {
|
if (!require('Storage').read("alarm.js")) {
|
||||||
console.log(/*LANG*/"No alarm app!");
|
console.log("No alarm app!");
|
||||||
require('Storage').write('alarm.json',"[]");
|
require('Storage').write('alarm.json',"[]");
|
||||||
} else {
|
} else {
|
||||||
var t = 3600000*(active[0].hr-hr);
|
var t = 3600000*(active[0].hr-hr);
|
||||||
|
|
|
@ -5,3 +5,4 @@
|
||||||
0.04: Android icon now goes to settings page with 'find phone'
|
0.04: Android icon now goes to settings page with 'find phone'
|
||||||
0.05: Fix handling of message actions
|
0.05: Fix handling of message actions
|
||||||
0.06: Option to keep messages after a disconnect (default false) (fix #1186)
|
0.06: Option to keep messages after a disconnect (default false) (fix #1186)
|
||||||
|
0.07: Include charging state in battery updates to phone
|
||||||
|
|
|
@ -50,8 +50,9 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
// Battery monitor
|
// Battery monitor
|
||||||
function sendBattery() { gbSend({ t: "status", bat: E.getBattery() }); }
|
function sendBattery() { gbSend({ t: "status", bat: E.getBattery(), chg: Bangle.isCharging()?1:0 }); }
|
||||||
NRF.on("connect", () => setTimeout(sendBattery, 2000));
|
NRF.on("connect", () => setTimeout(sendBattery, 2000));
|
||||||
|
Bangle.on("charging", sendBattery);
|
||||||
if (!settings.keep)
|
if (!settings.keep)
|
||||||
NRF.on("disconnect", () => require("messages").clearAll()); // remove all messages on disconnect
|
NRF.on("disconnect", () => require("messages").clearAll()); // remove all messages on disconnect
|
||||||
setInterval(sendBattery, 10*60*1000);
|
setInterval(sendBattery, 10*60*1000);
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
"id": "android",
|
"id": "android",
|
||||||
"name": "Android Integration",
|
"name": "Android Integration",
|
||||||
"shortName": "Android",
|
"shortName": "Android",
|
||||||
"version": "0.06",
|
"version": "0.07",
|
||||||
"description": "Display notifications/music/etc sent from the Gadgetbridge app on Android. This replaces the old 'Gadgetbridge' Bangle.js widget.",
|
"description": "Display notifications/music/etc sent from the Gadgetbridge app on Android. This replaces the old 'Gadgetbridge' Bangle.js widget.",
|
||||||
"icon": "app.png",
|
"icon": "app.png",
|
||||||
"tags": "tool,system,messages,notifications,gadgetbridge",
|
"tags": "tool,system,messages,notifications,gadgetbridge",
|
||||||
|
|
|
@ -2,3 +2,4 @@
|
||||||
0.02: Fix JSON save format
|
0.02: Fix JSON save format
|
||||||
0.03: Add "Calculating" placeholder, update JSON save format
|
0.03: Add "Calculating" placeholder, update JSON save format
|
||||||
0.04: Fix tapping at very bottom of list, exit on inactivity
|
0.04: Fix tapping at very bottom of list, exit on inactivity
|
||||||
|
0.05: Add support for bulk importing and exporting tokens
|
||||||
|
|
|
@ -3,6 +3,15 @@
|
||||||
* GitHub: https://github.com/andrewgoz/Authentiwatch <-- Report bugs here
|
* GitHub: https://github.com/andrewgoz/Authentiwatch <-- Report bugs here
|
||||||
* Bleeding edge AppLoader: https://andrewgoz.github.io/Authentiwatch/
|
* Bleeding edge AppLoader: https://andrewgoz.github.io/Authentiwatch/
|
||||||
|
|
||||||
|
## Important!
|
||||||
|
|
||||||
|
Tokens are stored *ONLY* on the watch. Make sure you do one or more of the following:
|
||||||
|
|
||||||
|
* Make a backup copy of the "authentiwatch.json" file.
|
||||||
|
* Export all your tokens to another device or print the QR code.
|
||||||
|
|
||||||
|
Keep those copies safe and secure.
|
||||||
|
|
||||||
## Supports
|
## Supports
|
||||||
|
|
||||||
* Google Authenticator compatible 2-factor authentication
|
* Google Authenticator compatible 2-factor authentication
|
||||||
|
@ -14,8 +23,8 @@
|
||||||
* Between 6 and 10 digits
|
* Between 6 and 10 digits
|
||||||
* Phone/PC configuration web page:
|
* Phone/PC configuration web page:
|
||||||
* Add/edit/delete/arrange tokens
|
* Add/edit/delete/arrange tokens
|
||||||
* Scan QR codes
|
* Scan token and migration(import) QR codes
|
||||||
* Produce scannable QR codes
|
* Produce scannable token and migration(export) QR codes
|
||||||
|
|
||||||
## Usage
|
## Usage
|
||||||
|
|
||||||
|
@ -24,6 +33,8 @@
|
||||||
* Swipe right to exit to the app launcher.
|
* Swipe right to exit to the app launcher.
|
||||||
* Swipe left on selected counter token to advance the counter to the next value.
|
* Swipe left on selected counter token to advance the counter to the next value.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
## Creator
|
## Creator
|
||||||
|
|
||||||
Andrew Gregory (andrew.gregory at gmail)
|
Andrew Gregory (andrew.gregory at gmail)
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
const tokenentryheight = 46;
|
const tokenextraheight = 16;
|
||||||
|
var tokendigitsheight = 30;
|
||||||
// Hash functions
|
// Hash functions
|
||||||
const crypto = require("crypto");
|
const crypto = require("crypto");
|
||||||
const algos = {
|
const algos = {
|
||||||
|
@ -44,9 +45,6 @@ function b32decode(seedstr) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (bitcount > 0) {
|
|
||||||
retstr += String.fromCharCode(buf << (8 - bitcount));
|
|
||||||
}
|
|
||||||
var retbuf = new Uint8Array(retstr.length);
|
var retbuf = new Uint8Array(retstr.length);
|
||||||
for (i in retstr) {
|
for (i in retstr) {
|
||||||
retbuf[i] = retstr.charCodeAt(i);
|
retbuf[i] = retstr.charCodeAt(i);
|
||||||
|
@ -117,27 +115,31 @@ function drawToken(id, r) {
|
||||||
var y1 = r.y;
|
var y1 = r.y;
|
||||||
var x2 = r.x + r.w - 1;
|
var x2 = r.x + r.w - 1;
|
||||||
var y2 = r.y + r.h - 1;
|
var y2 = r.y + r.h - 1;
|
||||||
var adj, sz;
|
var adj, lbl, sz;
|
||||||
g.setClipRect(Math.max(x1, Bangle.appRect.x ), Math.max(y1, Bangle.appRect.y ),
|
g.setClipRect(Math.max(x1, Bangle.appRect.x ), Math.max(y1, Bangle.appRect.y ),
|
||||||
Math.min(x2, Bangle.appRect.x2), Math.min(y2, Bangle.appRect.y2));
|
Math.min(x2, Bangle.appRect.x2), Math.min(y2, Bangle.appRect.y2));
|
||||||
|
lbl = tokens[id].label.substr(0, 10);
|
||||||
if (id == state.curtoken) {
|
if (id == state.curtoken) {
|
||||||
// current token
|
// current token
|
||||||
g.setColor(g.theme.fgH);
|
g.setColor(g.theme.fgH);
|
||||||
g.setBgColor(g.theme.bgH);
|
g.setBgColor(g.theme.bgH);
|
||||||
g.setFont("Vector", 16);
|
g.setFont("Vector", tokenextraheight);
|
||||||
// center just below top line
|
// center just below top line
|
||||||
g.setFontAlign(0, -1, 0);
|
g.setFontAlign(0, -1, 0);
|
||||||
adj = y1;
|
adj = y1;
|
||||||
} else {
|
} else {
|
||||||
g.setColor(g.theme.fg);
|
g.setColor(g.theme.fg);
|
||||||
g.setBgColor(g.theme.bg);
|
g.setBgColor(g.theme.bg);
|
||||||
g.setFont("Vector", 30);
|
sz = tokendigitsheight;
|
||||||
|
do {
|
||||||
|
g.setFont("Vector", sz--);
|
||||||
|
} while (g.stringWidth(lbl) > r.w);
|
||||||
// center in box
|
// center in box
|
||||||
g.setFontAlign(0, 0, 0);
|
g.setFontAlign(0, 0, 0);
|
||||||
adj = (y1 + y2) / 2;
|
adj = (y1 + y2) / 2;
|
||||||
}
|
}
|
||||||
g.clearRect(x1, y1, x2, y2);
|
g.clearRect(x1, y1, x2, y2);
|
||||||
g.drawString(tokens[id].label.substr(0, 10), (x1 + x2) / 2, adj, false);
|
g.drawString(lbl, (x1 + x2) / 2, adj, false);
|
||||||
if (id == state.curtoken) {
|
if (id == state.curtoken) {
|
||||||
if (tokens[id].period > 0) {
|
if (tokens[id].period > 0) {
|
||||||
// timed - draw progress bar
|
// timed - draw progress bar
|
||||||
|
@ -148,14 +150,14 @@ function drawToken(id, r) {
|
||||||
// counter - draw triangle as swipe hint
|
// counter - draw triangle as swipe hint
|
||||||
let yc = (y1 + y2) / 2;
|
let yc = (y1 + y2) / 2;
|
||||||
g.fillPoly([0, yc, 10, yc - 10, 10, yc + 10, 0, yc]);
|
g.fillPoly([0, yc, 10, yc - 10, 10, yc + 10, 0, yc]);
|
||||||
adj = 10;
|
adj = 12;
|
||||||
}
|
}
|
||||||
// digits just below label
|
// digits just below label
|
||||||
sz = 30;
|
sz = tokendigitsheight;
|
||||||
do {
|
do {
|
||||||
g.setFont("Vector", sz--);
|
g.setFont("Vector", sz--);
|
||||||
} while (g.stringWidth(state.otp) > (r.w - adj));
|
} while (g.stringWidth(state.otp) > (r.w - adj));
|
||||||
g.drawString(state.otp, (x1 + adj + x2) / 2, y1 + 16, false);
|
g.drawString(state.otp, (x1 + adj + x2) / 2, y1 + tokenextraheight, false);
|
||||||
}
|
}
|
||||||
// shaded lines top and bottom
|
// shaded lines top and bottom
|
||||||
g.setColor(0.5, 0.5, 0.5);
|
g.setColor(0.5, 0.5, 0.5);
|
||||||
|
@ -196,15 +198,15 @@ function draw() {
|
||||||
}
|
}
|
||||||
if (tokens.length > 0) {
|
if (tokens.length > 0) {
|
||||||
var drewcur = false;
|
var drewcur = false;
|
||||||
var id = Math.floor(state.listy / tokenentryheight);
|
var id = Math.floor(state.listy / (tokendigitsheight + tokenextraheight));
|
||||||
var y = id * tokenentryheight + Bangle.appRect.y - state.listy;
|
var y = id * (tokendigitsheight + tokenextraheight) + Bangle.appRect.y - state.listy;
|
||||||
while (id < tokens.length && y < Bangle.appRect.y2) {
|
while (id < tokens.length && y < Bangle.appRect.y2) {
|
||||||
drawToken(id, {x:Bangle.appRect.x, y:y, w:Bangle.appRect.w, h:tokenentryheight});
|
drawToken(id, {x:Bangle.appRect.x, y:y, w:Bangle.appRect.w, h:(tokendigitsheight + tokenextraheight)});
|
||||||
if (id == state.curtoken && (tokens[id].period <= 0 || state.nextTime != 0)) {
|
if (id == state.curtoken && (tokens[id].period <= 0 || state.nextTime != 0)) {
|
||||||
drewcur = true;
|
drewcur = true;
|
||||||
}
|
}
|
||||||
id += 1;
|
id += 1;
|
||||||
y += tokenentryheight;
|
y += (tokendigitsheight + tokenextraheight);
|
||||||
}
|
}
|
||||||
if (drewcur) {
|
if (drewcur) {
|
||||||
// the current token has been drawn - schedule a redraw
|
// the current token has been drawn - schedule a redraw
|
||||||
|
@ -226,7 +228,7 @@ function draw() {
|
||||||
state.nexttime = 0;
|
state.nexttime = 0;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
g.setFont("Vector", 30);
|
g.setFont("Vector", tokendigitsheight);
|
||||||
g.setFontAlign(0, 0, 0);
|
g.setFontAlign(0, 0, 0);
|
||||||
g.drawString(notokens, Bangle.appRect.x + Bangle.appRect.w / 2, Bangle.appRect.y + Bangle.appRect.h / 2, false);
|
g.drawString(notokens, Bangle.appRect.x + Bangle.appRect.w / 2, Bangle.appRect.y + Bangle.appRect.h / 2, false);
|
||||||
}
|
}
|
||||||
|
@ -238,18 +240,18 @@ function draw() {
|
||||||
|
|
||||||
function onTouch(zone, e) {
|
function onTouch(zone, e) {
|
||||||
if (e) {
|
if (e) {
|
||||||
var id = Math.floor((state.listy + (e.y - Bangle.appRect.y)) / tokenentryheight);
|
var id = Math.floor((state.listy + (e.y - Bangle.appRect.y)) / (tokendigitsheight + tokenextraheight));
|
||||||
if (id == state.curtoken || tokens.length == 0 || id >= tokens.length) {
|
if (id == state.curtoken || tokens.length == 0 || id >= tokens.length) {
|
||||||
id = -1;
|
id = -1;
|
||||||
}
|
}
|
||||||
if (state.curtoken != id) {
|
if (state.curtoken != id) {
|
||||||
if (id != -1) {
|
if (id != -1) {
|
||||||
var y = id * tokenentryheight - state.listy;
|
var y = id * (tokendigitsheight + tokenextraheight) - state.listy;
|
||||||
if (y < 0) {
|
if (y < 0) {
|
||||||
state.listy += y;
|
state.listy += y;
|
||||||
y = 0;
|
y = 0;
|
||||||
}
|
}
|
||||||
y += tokenentryheight;
|
y += (tokendigitsheight + tokenextraheight);
|
||||||
if (y > Bangle.appRect.h) {
|
if (y > Bangle.appRect.h) {
|
||||||
state.listy += (y - Bangle.appRect.h);
|
state.listy += (y - Bangle.appRect.h);
|
||||||
}
|
}
|
||||||
|
@ -266,12 +268,15 @@ function onTouch(zone, e) {
|
||||||
function onDrag(e) {
|
function onDrag(e) {
|
||||||
if (e.x > g.getWidth() || e.y > g.getHeight()) return;
|
if (e.x > g.getWidth() || e.y > g.getHeight()) return;
|
||||||
if (e.dx == 0 && e.dy == 0) return;
|
if (e.dx == 0 && e.dy == 0) return;
|
||||||
var newy = Math.min(state.listy - e.dy, tokens.length * tokenentryheight - Bangle.appRect.h);
|
var newy = Math.min(state.listy - e.dy, tokens.length * (tokendigitsheight + tokenextraheight) - Bangle.appRect.h);
|
||||||
state.listy = Math.max(0, newy);
|
state.listy = Math.max(0, newy);
|
||||||
draw();
|
draw();
|
||||||
}
|
}
|
||||||
|
|
||||||
function onSwipe(e) {
|
function onSwipe(e) {
|
||||||
|
if (e == 1) {
|
||||||
|
exitApp();
|
||||||
|
}
|
||||||
if (e == -1 && state.curtoken != -1 && tokens[state.curtoken].period <= 0) {
|
if (e == -1 && state.curtoken != -1 && tokens[state.curtoken].period <= 0) {
|
||||||
tokens[state.curtoken].period--;
|
tokens[state.curtoken].period--;
|
||||||
let newsettings={tokens:tokens,misc:settings.misc};
|
let newsettings={tokens:tokens,misc:settings.misc};
|
||||||
|
@ -296,7 +301,7 @@ function bangle1Btn(e) {
|
||||||
state.curtoken = Math.max(state.curtoken, 0);
|
state.curtoken = Math.max(state.curtoken, 0);
|
||||||
state.curtoken = Math.min(state.curtoken, tokens.length - 1);
|
state.curtoken = Math.min(state.curtoken, tokens.length - 1);
|
||||||
var fakee = {};
|
var fakee = {};
|
||||||
fakee.y = state.curtoken * tokenentryheight - state.listy + Bangle.appRect.y;
|
fakee.y = state.curtoken * (tokendigitsheight + tokenextraheight) - state.listy + Bangle.appRect.y;
|
||||||
state.curtoken = -1;
|
state.curtoken = -1;
|
||||||
state.nextTime = 0;
|
state.nextTime = 0;
|
||||||
onTouch(0, fakee);
|
onTouch(0, fakee);
|
||||||
|
|
|
@ -7,7 +7,10 @@
|
||||||
<style type="text/css">
|
<style type="text/css">
|
||||||
body{font-family:sans-serif}
|
body{font-family:sans-serif}
|
||||||
body div{display:none}
|
body div{display:none}
|
||||||
body.select div#tokens,body.editing div#edit,body.scanning div#scan,body.showqr div#tokenqr{display:block}
|
body.select tr>:first-child,body.export tr>:nth-child(3),body.export tr>:nth-child(4){display:none}
|
||||||
|
body.select div.select,body.export div.export{display:block}
|
||||||
|
body.select div.export,body.export div.select{display:none}
|
||||||
|
body.select div#tokens,body.editing div#edit,body.scanning div#scan,body.showqr div#showqr,body.export div#tokens{display:block}
|
||||||
#tokens th,#tokens td{padding:5px}
|
#tokens th,#tokens td{padding:5px}
|
||||||
#tokens tr:nth-child(odd){background-color:#ccc}
|
#tokens tr:nth-child(odd){background-color:#ccc}
|
||||||
#tokens tr:nth-child(even){background-color:#eee}
|
#tokens tr:nth-child(even){background-color:#eee}
|
||||||
|
@ -33,6 +36,12 @@ form.totp tr.hotp,form.hotp tr.totp{display:none}
|
||||||
/* Start of all TOTP URLs */
|
/* Start of all TOTP URLs */
|
||||||
const otpAuthUrl = 'otpauth://';
|
const otpAuthUrl = 'otpauth://';
|
||||||
|
|
||||||
|
/* Start of all OTP migration URLs */
|
||||||
|
const otpMigrUrl = 'otpauth-migration://offline?data=';
|
||||||
|
|
||||||
|
/* Hash algorithms */
|
||||||
|
const otpAlgos = ['SHA1','SHA256','SHA512'];
|
||||||
|
|
||||||
const tokentypes = ['TOTP (Timed)', 'HOTP (Counter)'];
|
const tokentypes = ['TOTP (Timed)', 'HOTP (Counter)'];
|
||||||
|
|
||||||
/* Settings */
|
/* Settings */
|
||||||
|
@ -45,6 +54,8 @@ var tokens = settings.tokens;
|
||||||
*/
|
*/
|
||||||
function base32clean(val, nows) {
|
function base32clean(val, nows) {
|
||||||
var ret = val.replaceAll(/\s+/g, ' ');
|
var ret = val.replaceAll(/\s+/g, ' ');
|
||||||
|
ret = ret.replaceAll(/0/g, 'O');
|
||||||
|
ret = ret.replaceAll(/1/g, 'I');
|
||||||
ret = ret.replaceAll(/[^A-Za-z2-7 ]/g, '');
|
ret = ret.replaceAll(/[^A-Za-z2-7 ]/g, '');
|
||||||
if (nows) {
|
if (nows) {
|
||||||
ret = ret.replaceAll(/\s+/g, '');
|
ret = ret.replaceAll(/\s+/g, '');
|
||||||
|
@ -52,6 +63,48 @@ function base32clean(val, nows) {
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function b32encode(str) {
|
||||||
|
let buf = 0, bitcount = 0, ret = '';
|
||||||
|
while (str.length > 0) {
|
||||||
|
buf <<= 8;
|
||||||
|
buf |= str.charCodeAt(0);
|
||||||
|
bitcount += 8;
|
||||||
|
str = str.substr(1);
|
||||||
|
while (bitcount >= 5) {
|
||||||
|
ret += 'ABCDEFGHIJKLMNOPQRSTUVWXYZ234567'[(buf >> (bitcount - 5)) & 31];
|
||||||
|
bitcount -= 5;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
function b32decode(seedstr) {
|
||||||
|
// RFC4648
|
||||||
|
var i, buf = 0, bitcount = 0, ret = '';
|
||||||
|
for (i in seedstr) {
|
||||||
|
var c = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ234567'.indexOf(seedstr.charAt(i).toUpperCase(), 0);
|
||||||
|
if (c != -1) {
|
||||||
|
buf <<= 5;
|
||||||
|
buf |= c;
|
||||||
|
bitcount += 5;
|
||||||
|
if (bitcount >= 8) {
|
||||||
|
ret += String.fromCharCode(buf >> (bitcount - 8));
|
||||||
|
buf &= (0xFF >> (16 - bitcount));
|
||||||
|
bitcount -= 8;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
function makeLabel(token) {
|
||||||
|
let lbl = token['label'];
|
||||||
|
if (lbl == '') {
|
||||||
|
lbl = (token['issuer'] == '') ? token['account'] : token['issuer'] + ' (' + token['account'] + ')';
|
||||||
|
}
|
||||||
|
token['label'] = lbl.substr(0, 10);
|
||||||
|
}
|
||||||
|
|
||||||
/* Save changes to a token to the global tokens[] array.
|
/* Save changes to a token to the global tokens[] array.
|
||||||
* id is the index into the global tokens[].
|
* id is the index into the global tokens[].
|
||||||
* forget is a flag indicating if the token should be forgotten.
|
* forget is a flag indicating if the token should be forgotten.
|
||||||
|
@ -84,9 +137,16 @@ function saveEdit(id, forget) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function showQr(url) {
|
||||||
|
tokenqr.clear();
|
||||||
|
tokenqr.makeCode(url);
|
||||||
|
qrPreviousClass = document.body.className;
|
||||||
|
document.body.className = 'showqr';
|
||||||
|
}
|
||||||
|
|
||||||
/* Generate and display a QR-code representing the current token.
|
/* Generate and display a QR-code representing the current token.
|
||||||
*/
|
*/
|
||||||
function showQrCode() {
|
function showTokenQr() {
|
||||||
var fe = document.forms['edittoken'].elements;
|
var fe = document.forms['edittoken'].elements;
|
||||||
var url = new String(otpAuthUrl);
|
var url = new String(otpAuthUrl);
|
||||||
switch (fe['type'].value) {
|
switch (fe['type'].value) {
|
||||||
|
@ -122,9 +182,7 @@ function showQrCode() {
|
||||||
if (fe['algorithm'].value != 'SHA1') {
|
if (fe['algorithm'].value != 'SHA1') {
|
||||||
url += '&algorithm=' + fe['algorithm'].value;
|
url += '&algorithm=' + fe['algorithm'].value;
|
||||||
}
|
}
|
||||||
tokenqr.clear();
|
showQr(url);
|
||||||
tokenqr.makeCode(url);
|
|
||||||
document.body.className = 'showqr';
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function onTypeChanged() {
|
function onTypeChanged() {
|
||||||
|
@ -138,6 +196,7 @@ function onTypeChanged() {
|
||||||
* id is the index into the global tokens[].
|
* id is the index into the global tokens[].
|
||||||
*/
|
*/
|
||||||
function editToken(id) {
|
function editToken(id) {
|
||||||
|
if (document.body.className == 'export') return;
|
||||||
var p;
|
var p;
|
||||||
const selectMarkup = function(name, ary, cur, onchg) {
|
const selectMarkup = function(name, ary, cur, onchg) {
|
||||||
var ret = '<select name="' + name + '"' + ((typeof onchg == 'string') ? ' onchange="' + onchg + '"' : '') + '>';
|
var ret = '<select name="' + name + '"' + ((typeof onchg == 'string') ? ' onchange="' + onchg + '"' : '') + '>';
|
||||||
|
@ -163,7 +222,7 @@ function editToken(id) {
|
||||||
markup += selectMarkup('digits', ['6','7','8','9','10'], tokens[id].digits);
|
markup += selectMarkup('digits', ['6','7','8','9','10'], tokens[id].digits);
|
||||||
markup += '</td></tr>';
|
markup += '</td></tr>';
|
||||||
markup += '<tr><td>Hash:</td><td>';
|
markup += '<tr><td>Hash:</td><td>';
|
||||||
markup += selectMarkup('algorithm', ['SHA1','SHA256','SHA512'], tokens[id].algorithm);
|
markup += selectMarkup('algorithm', otpAlgos, tokens[id].algorithm);
|
||||||
markup += '</td></tr>';
|
markup += '</td></tr>';
|
||||||
markup += '</tbody><tr><td id="advbtn" colspan="2">';
|
markup += '</tbody><tr><td id="advbtn" colspan="2">';
|
||||||
markup += '<button type="button" onclick="document.getElementById(\'edittoken\').classList.toggle(\'showadv\')">Advanced</button>';
|
markup += '<button type="button" onclick="document.getElementById(\'edittoken\').classList.toggle(\'showadv\')">Advanced</button>';
|
||||||
|
@ -171,9 +230,9 @@ function editToken(id) {
|
||||||
markup += '<button type="button" onclick="updateTokens()">Cancel Edit</button>';
|
markup += '<button type="button" onclick="updateTokens()">Cancel Edit</button>';
|
||||||
markup += '<button type="button" onclick="saveEdit(' + id + ', false)">Save Changes</button>';
|
markup += '<button type="button" onclick="saveEdit(' + id + ', false)">Save Changes</button>';
|
||||||
if (tokens[id].isnew) {
|
if (tokens[id].isnew) {
|
||||||
markup += '<button type="button" onclick="startScan()">Scan QR Code</button>';
|
markup += '<button type="button" onclick="startScan(handleTokenQr,cancelTokenQr)">Scan QR</button>';
|
||||||
} else {
|
} else {
|
||||||
markup += '<button type="button" onclick="showQrCode()">Show QR Code</button>';
|
markup += '<button type="button" onclick="showTokenQr()">Show QR</button>';
|
||||||
markup += '<button type="button" onclick="saveEdit(' + id + ', true)">Forget Token</button>';
|
markup += '<button type="button" onclick="saveEdit(' + id + ', true)">Forget Token</button>';
|
||||||
}
|
}
|
||||||
document.getElementById('edit').innerHTML = markup;
|
document.getElementById('edit').innerHTML = markup;
|
||||||
|
@ -188,6 +247,46 @@ function addToken() {
|
||||||
editToken(tokens.length - 1);
|
editToken(tokens.length - 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Convert a number to a proto3 varint.
|
||||||
|
*/
|
||||||
|
function int2proto3varint(val) {
|
||||||
|
var ret = '';
|
||||||
|
do {
|
||||||
|
let c = val & 0x7F;
|
||||||
|
val >>>= 7;
|
||||||
|
if (val > 0) {
|
||||||
|
c |= 0x80;
|
||||||
|
}
|
||||||
|
ret += String.fromCharCode(c);
|
||||||
|
} while (val > 0);
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Convert a string to a proto3 field.
|
||||||
|
*/
|
||||||
|
function str2proto3(field_number, str) {
|
||||||
|
return int2proto3varint((field_number << 3) + 2) + int2proto3varint(str.length) + str;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Convert a number to a proto3 field.
|
||||||
|
*/
|
||||||
|
function int2proto3(field_number, val) {
|
||||||
|
return int2proto3varint(field_number << 3) + int2proto3varint(val);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Convert the specified token to its proto3 representation.
|
||||||
|
*/
|
||||||
|
function token2proto3(id) {
|
||||||
|
var secret = str2proto3(1, b32decode(tokens[id].secret));
|
||||||
|
var name = str2proto3(2, (tokens[id].account == '') ? tokens[id].label : tokens[id].account);
|
||||||
|
var issuer = (tokens[id].issuer == '') ? '' : str2proto3(3, tokens[id].issuer);
|
||||||
|
var algorithm = int2proto3(4, (tokens[id].algorithm == 'SHA512') ? 3 : ((tokens[id].algorithm == 'SHA256') ? 2 : 1));
|
||||||
|
var digits = int2proto3(5, (tokens[id].digits == 8) ? 2 : 1);
|
||||||
|
var type = int2proto3(6, (tokens[id].period <= 0) ? 1 : 2);
|
||||||
|
var counter = (tokens[id].period <= 0) ? int2proto3(7, -tokens[id].period) : '';
|
||||||
|
return str2proto3(1, secret + name + issuer + algorithm + digits + type + counter);
|
||||||
|
}
|
||||||
|
|
||||||
/* Move the specified token up or down in the global tokens[].
|
/* Move the specified token up or down in the global tokens[].
|
||||||
* id is the index in the global tokens[] of the token to move.
|
* id is the index in the global tokens[] of the token to move.
|
||||||
* dir is the direction to move: -1=up, 1=down.
|
* dir is the direction to move: -1=up, 1=down.
|
||||||
|
@ -200,10 +299,15 @@ function moveToken(id, dir) {
|
||||||
/* Update the display listing all the tokens.
|
/* Update the display listing all the tokens.
|
||||||
*/
|
*/
|
||||||
function updateTokens() {
|
function updateTokens() {
|
||||||
|
const tokenSelect = function(id) {
|
||||||
|
return '<input name="exp_' + id + '" type="checkbox" onclick="exportTokens(false, \'' + id + '\')">';
|
||||||
|
};
|
||||||
const tokenButton = function(fn, id, label, dir) {
|
const tokenButton = function(fn, id, label, dir) {
|
||||||
return '<button type="button" onclick="' + fn + '(' + id + (dir ? ',' + dir : '') + ')">' + label + '</button>';
|
return '<button type="button" onclick="' + fn + '(' + id + (dir ? ',' + dir : '') + ')">' + label + '</button>';
|
||||||
};
|
};
|
||||||
var markup = '<table><tr><th>Token</th><th colspan="2">Order</th></tr>';
|
var markup = '<table><tr><th>';
|
||||||
|
markup += tokenSelect('all');
|
||||||
|
markup += '</th><th>Token</th><th colspan="2">Order</th></tr>';
|
||||||
/* any tokens marked new are cancelled new additions and must be removed */
|
/* any tokens marked new are cancelled new additions and must be removed */
|
||||||
for (let i = 0; i < tokens.length; i++) {
|
for (let i = 0; i < tokens.length; i++) {
|
||||||
if (tokens[i].isnew) {
|
if (tokens[i].isnew) {
|
||||||
|
@ -212,6 +316,8 @@ function updateTokens() {
|
||||||
}
|
}
|
||||||
for (let i = 0; i < tokens.length; i++) {
|
for (let i = 0; i < tokens.length; i++) {
|
||||||
markup += '<tr><td>';
|
markup += '<tr><td>';
|
||||||
|
markup += tokenSelect(i);
|
||||||
|
markup += '</td><td>';
|
||||||
markup += tokenButton('editToken', i, tokens[i].label);
|
markup += tokenButton('editToken', i, tokens[i].label);
|
||||||
markup += '</td><td>';
|
markup += '</td><td>';
|
||||||
if (i < (tokens.length - 1)) {
|
if (i < (tokens.length - 1)) {
|
||||||
|
@ -224,14 +330,20 @@ function updateTokens() {
|
||||||
markup += '</td></tr>';
|
markup += '</td></tr>';
|
||||||
}
|
}
|
||||||
markup += '</table>';
|
markup += '</table>';
|
||||||
|
markup += '<div class="select">';
|
||||||
markup += '<button type="button" onclick="addToken()">Add Token</button>';
|
markup += '<button type="button" onclick="addToken()">Add Token</button>';
|
||||||
markup += '<button type="button" onclick="saveTokens()">Save to watch</button>';
|
markup += '<button type="button" onclick="saveTokens()">Save to watch</button>';
|
||||||
|
markup += '<button type="button" onclick="startScan(handleImportQr,cancelImportQr)">Import</button>';
|
||||||
|
markup += '<button type="button" onclick="document.body.className=\'export\'">Export</button>';
|
||||||
|
markup += '</div><div class="export">';
|
||||||
|
markup += '<button type="button" onclick="document.body.className=\'select\'">Cancel</button>';
|
||||||
|
markup += '<button type="button" onclick="exportTokens(true, null)">Show QR</button>';
|
||||||
|
markup += '</div>';
|
||||||
document.getElementById('tokens').innerHTML = markup;
|
document.getElementById('tokens').innerHTML = markup;
|
||||||
document.body.className = 'select';
|
document.body.className = 'select';
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Original QR-code reader: https://www.sitepoint.com/create-qr-code-reader-mobile-website/ */
|
function handleTokenQr(res) {
|
||||||
qrcode.callback = res => {
|
|
||||||
if (res) {
|
if (res) {
|
||||||
if (res.startsWith(otpAuthUrl)) {
|
if (res.startsWith(otpAuthUrl)) {
|
||||||
res = decodeURIComponent(res);
|
res = decodeURIComponent(res);
|
||||||
|
@ -243,7 +355,8 @@ qrcode.callback = res => {
|
||||||
'counter':'0',
|
'counter':'0',
|
||||||
'period':'30',
|
'period':'30',
|
||||||
'secret':'',
|
'secret':'',
|
||||||
'issuer':''
|
'issuer':'',
|
||||||
|
'label':''
|
||||||
};
|
};
|
||||||
var otpok = true;
|
var otpok = true;
|
||||||
for (let pi in params) {
|
for (let pi in params) {
|
||||||
|
@ -261,8 +374,7 @@ qrcode.callback = res => {
|
||||||
if (otpok) {
|
if (otpok) {
|
||||||
scanning = false;
|
scanning = false;
|
||||||
editToken(parseInt(document.forms['edittoken'].elements['tokenid'].value));
|
editToken(parseInt(document.forms['edittoken'].elements['tokenid'].value));
|
||||||
t['label'] = (t['issuer'] == '') ? t['account'] : t['issuer'] + ' (' + t['account'] + ')';
|
makeLabel(t);
|
||||||
t['label'] = t['label'].substr(0, 10);
|
|
||||||
var fe = document.forms['edittoken'].elements;
|
var fe = document.forms['edittoken'].elements;
|
||||||
if (res.startsWith(otpAuthUrl + 'hotp/')) {
|
if (res.startsWith(otpAuthUrl + 'hotp/')) {
|
||||||
t['period'] = '30';
|
t['period'] = '30';
|
||||||
|
@ -283,8 +395,94 @@ qrcode.callback = res => {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
function cancelTokenQr() {
|
||||||
|
scanning = false;
|
||||||
|
editToken(parseInt(document.forms['edittoken'].elements['tokenid'].value));
|
||||||
|
}
|
||||||
|
class proto3decoder {
|
||||||
|
constructor(str) {
|
||||||
|
this.buf = [];
|
||||||
|
for (let i in str) {
|
||||||
|
this.buf = this.buf.concat(str.charCodeAt(i));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
getVarint() {
|
||||||
|
let c, ret = 0
|
||||||
|
do {
|
||||||
|
c = this.buf.shift();
|
||||||
|
ret = (ret << 7) | (c & 0x7F);
|
||||||
|
} while ((c & 0x80) != 0);
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
getString(length) {
|
||||||
|
let ret = '';
|
||||||
|
for (let i = 0; i < length; ++i) {
|
||||||
|
ret += String.fromCharCode(this.buf.shift());
|
||||||
|
}
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
parse() {
|
||||||
|
let ret = null;
|
||||||
|
if (this.buf.length > 0) {
|
||||||
|
let field_data = null;
|
||||||
|
let field_type = this.getVarint();
|
||||||
|
let field_number = field_type >>> 3;
|
||||||
|
let wire_type = field_type & 7;
|
||||||
|
switch (wire_type) {
|
||||||
|
case 0: field_data = this.getVarint(); break;
|
||||||
|
case 2: field_data = this.getString(this.getVarint()); break;
|
||||||
|
}
|
||||||
|
ret = {number:field_number,data:field_data};
|
||||||
|
}
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
function handleImportQr(res) {
|
||||||
|
if (res) {
|
||||||
|
if (res.startsWith(otpMigrUrl)) {
|
||||||
|
scanning = false;
|
||||||
|
let data = new proto3decoder(atob(decodeURIComponent(res.substr(otpMigrUrl.length))));
|
||||||
|
while (data.buf.length > 0) {
|
||||||
|
let field = data.parse();
|
||||||
|
if (field?.number == 1) {
|
||||||
|
let newtoken = {'algorithm':'SHA1','digits':6,'period':30,'issuer':'','account':'','secret':'','label':''};
|
||||||
|
let p3token = new proto3decoder(field.data);
|
||||||
|
while (p3token.buf.length > 0) {
|
||||||
|
let buf = p3token.parse();
|
||||||
|
switch (buf?.number) {
|
||||||
|
case 1: newtoken.secret = b32encode(buf.data); break;
|
||||||
|
case 2: newtoken.account = buf.data; break;
|
||||||
|
case 3: newtoken.issuer = buf.data; break;
|
||||||
|
case 4: newtoken.algorithm = otpAlgos[buf.data - 1]; break;
|
||||||
|
case 5: newtoken.digits = (['6','8'])[buf.data - 1]; break;
|
||||||
|
case 7: newtoken.period = -buf.data; break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
makeLabel(newtoken);
|
||||||
|
tokens[tokens.length] = newtoken;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
updateTokens();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
function cancelImportQr() {
|
||||||
|
scanning = false;
|
||||||
|
document.body.className = 'select';
|
||||||
|
}
|
||||||
|
/* Original QR-code reader: https://www.sitepoint.com/create-qr-code-reader-mobile-website/ */
|
||||||
|
qrcode.callback = res => {
|
||||||
|
if (res) {
|
||||||
|
scanCallback(res);
|
||||||
|
if (scanning) {
|
||||||
|
scanBack();
|
||||||
|
}
|
||||||
|
}
|
||||||
};
|
};
|
||||||
function startScan() {
|
function startScan(handler,cancel) {
|
||||||
|
scanCallback = handler;
|
||||||
|
scanBack = cancel;
|
||||||
document.body.className = 'scanning';
|
document.body.className = 'scanning';
|
||||||
navigator.mediaDevices
|
navigator.mediaDevices
|
||||||
.getUserMedia({video:{facingMode:'environment'}})
|
.getUserMedia({video:{facingMode:'environment'}})
|
||||||
|
@ -339,36 +537,93 @@ function saveTokens() {
|
||||||
Util.hideModal();
|
Util.hideModal();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
/* Handle token export.
|
||||||
|
* showqr is true if the QR code should be shown, if false the checkboxes need updating
|
||||||
|
* id is the name of the clicked checkbox, or null if the export button was pressed
|
||||||
|
*/
|
||||||
|
function exportTokens(showqr, id) {
|
||||||
|
let allchecked = true, allclear = true;
|
||||||
|
let cball;
|
||||||
|
let exp = '';
|
||||||
|
for (let cb of document.querySelectorAll('input[type=checkbox]')) {
|
||||||
|
let cbid = cb.name.substring(4);
|
||||||
|
if (cbid == 'all') {
|
||||||
|
cball = cb;
|
||||||
|
} else {
|
||||||
|
if (id == 'all') {
|
||||||
|
cb.checked = cball.checked;
|
||||||
|
} else {
|
||||||
|
if (cb.checked) {
|
||||||
|
if (showqr) {
|
||||||
|
exp += token2proto3(parseInt(cbid));
|
||||||
|
}
|
||||||
|
allclear = false;
|
||||||
|
} else {
|
||||||
|
allchecked = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (id != 'all') {
|
||||||
|
if (allclear) {
|
||||||
|
cball.indeterminate = false;
|
||||||
|
cball.checked = false;
|
||||||
|
} else if (allchecked) {
|
||||||
|
cball.indeterminate = false;
|
||||||
|
cball.checked = true;
|
||||||
|
} else {
|
||||||
|
cball.indeterminate = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (showqr) {
|
||||||
|
if (exp != '') {
|
||||||
|
/* add version, batch_size, batch_index, but no batch_id */
|
||||||
|
exp += int2proto3(2, 1) + int2proto3(3, 1) + int2proto3(4, 0);
|
||||||
|
let url = otpMigrUrl + encodeURIComponent(btoa(exp));
|
||||||
|
showQr(url);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
function onInit() {
|
function onInit() {
|
||||||
loadTokens();
|
loadTokens();
|
||||||
updateTokens();
|
updateTokens();
|
||||||
}
|
}
|
||||||
|
function qrBack() {
|
||||||
|
document.body.className = qrPreviousClass;
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
</head>
|
</head>
|
||||||
<body class="select">
|
<body class="select">
|
||||||
<h1>Authentiwatch</h1>
|
<h1>Authentiwatch</h1>
|
||||||
|
|
||||||
<div id="tokens">
|
<div id="tokens">
|
||||||
<p>No watch comms.</p>
|
<p>No watch comms.</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="scan">
|
<div id="scan">
|
||||||
<table>
|
<table>
|
||||||
<tr><td><canvas id="qr-canvas"></canvas></td></tr>
|
<tr><td><canvas id="qr-canvas"></canvas></td></tr>
|
||||||
<tr><td><button type="button" onclick="editToken(parseInt(document.forms['edittoken'].elements['tokenid'].value))">Cancel</button></td></tr>
|
<tr><td><button type="button" onclick="scanBack()">Cancel</button></td></tr>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="edit">
|
<div id="edit">
|
||||||
</div>
|
</div>
|
||||||
<div id="tokenqr">
|
|
||||||
|
<div id="showqr">
|
||||||
<table><tr><td id="qrcode"></td></tr><tr><td>
|
<table><tr><td id="qrcode"></td></tr><tr><td>
|
||||||
<button type="button" onclick="document.body.className='editing'">Back</button>
|
<button type="button" onclick="qrBack()">Back</button>
|
||||||
</td></tr></table>
|
</td></tr></table>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
const video=document.createElement('video');
|
const video=document.createElement('video');
|
||||||
const canvasElement=document.getElementById('qr-canvas');
|
const canvasElement=document.getElementById('qr-canvas');
|
||||||
const canvas=canvasElement.getContext('2d');
|
const canvas=canvasElement.getContext('2d');
|
||||||
let scanning=false;
|
let scanning=false;
|
||||||
const tokenqr=new QRCode(document.getElementById('qrcode'), '');
|
const tokenqr=new QRCode(document.getElementById('qrcode'), {width:354,height:354});
|
||||||
</script>
|
</script>
|
||||||
<script src="../../core/lib/interface.js"></script>
|
<script src="../../core/lib/interface.js"></script>
|
||||||
</body>
|
</body>
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
"shortName": "AuthWatch",
|
"shortName": "AuthWatch",
|
||||||
"icon": "app.png",
|
"icon": "app.png",
|
||||||
"screenshots": [{"url":"screenshot.png"}],
|
"screenshots": [{"url":"screenshot.png"}],
|
||||||
"version": "0.04",
|
"version": "0.05",
|
||||||
"description": "Google Authenticator compatible tool.",
|
"description": "Google Authenticator compatible tool.",
|
||||||
"tags": "tool",
|
"tags": "tool",
|
||||||
"interface": "interface.html",
|
"interface": "interface.html",
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
(() => {
|
(() => {
|
||||||
|
BANGLEJS2 = process.env.HWVERSION==2;
|
||||||
Bangle.setLCDTimeout(0);
|
Bangle.setLCDTimeout(0);
|
||||||
let intervalID;
|
let intervalID;
|
||||||
let settings = require("Storage").readJSON("ballmaze.json",true) || {};
|
let settings = require("Storage").readJSON("ballmaze.json",true) || {};
|
||||||
|
@ -6,7 +7,9 @@
|
||||||
// density, elasticity of bounces, "drag coefficient"
|
// density, elasticity of bounces, "drag coefficient"
|
||||||
const rho = 100, e = 0.3, C = 0.01;
|
const rho = 100, e = 0.3, C = 0.01;
|
||||||
// screen width & height in pixels
|
// screen width & height in pixels
|
||||||
const sW = 240, sH = 160;
|
const sW = g.getWidth();
|
||||||
|
const sH = g.getHeight()*2/3;
|
||||||
|
const bgColour ="#f00"; // only for Bangle.js 2
|
||||||
// gravity constant (lowercase was already taken)
|
// gravity constant (lowercase was already taken)
|
||||||
const G = 9.80665;
|
const G = 9.80665;
|
||||||
|
|
||||||
|
@ -17,14 +20,16 @@
|
||||||
// The play area is 240x160, sizes are the ball radius, so we can use common
|
// The play area is 240x160, sizes are the ball radius, so we can use common
|
||||||
// denominators of 120x80 to get square rooms
|
// denominators of 120x80 to get square rooms
|
||||||
// Reverse the order to show the easiest on top of the menu
|
// Reverse the order to show the easiest on top of the menu
|
||||||
const sizes = [1, 2, 4, 5, 8, 10, 16, 20, 40].reverse(),
|
|
||||||
// even size 1 actually works, but larger mazes take forever to generate
|
|
||||||
minSize = 4, defaultSize = 10;
|
|
||||||
const sizeNames = {
|
const sizeNames = {
|
||||||
1: "Insane", 2: "Gigantic", 4: "Enormous", 5: "Huge", 8: "Large",
|
1: "Insane", 2: "Gigantic", 4: "Enormous", 5: "Huge", 8: "Large",
|
||||||
10: "Medium", 16: "Small", 20: "Tiny", 40: "Trivial",
|
10: "Medium", 16: "Small", 20: "Tiny", 40: "Trivial",
|
||||||
};
|
};
|
||||||
|
// even size 1 actually works, but larger mazes take forever to generate
|
||||||
|
if (!BANGLEJS2) {
|
||||||
|
const sizes = [1, 2, 4, 5, 8, 10, 16, 20, 40].reverse(), minSize = 4, defaultSize = 10;
|
||||||
|
} else {
|
||||||
|
const sizes = [1, 2, 4, 5, 8, 10, 16, 20 ].reverse(), minSize = 4, defaultSize = 10;
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* Draw something to all screen buffers
|
* Draw something to all screen buffers
|
||||||
* @param draw {function} Callback which performs the drawing
|
* @param draw {function} Callback which performs the drawing
|
||||||
|
@ -45,17 +50,17 @@
|
||||||
|
|
||||||
// use unbuffered graphics for UI stuff
|
// use unbuffered graphics for UI stuff
|
||||||
function showMessage(message, title) {
|
function showMessage(message, title) {
|
||||||
Bangle.setLCDMode();
|
if (!BANGLEJS2) Bangle.setLCDMode();
|
||||||
return E.showMessage(message, title);
|
return E.showMessage(message, title);
|
||||||
}
|
}
|
||||||
|
|
||||||
function showPrompt(prompt, options) {
|
function showPrompt(prompt, options) {
|
||||||
Bangle.setLCDMode();
|
if (!BANGLEJS2) Bangle.setLCDMode();
|
||||||
return E.showPrompt(prompt, options);
|
return E.showPrompt(prompt, options);
|
||||||
}
|
}
|
||||||
|
|
||||||
function showMenu(menu) {
|
function showMenu(menu) {
|
||||||
Bangle.setLCDMode();
|
if (!BANGLEJS2) Bangle.setLCDMode();
|
||||||
return E.showMenu(menu);
|
return E.showMenu(menu);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -105,7 +110,7 @@
|
||||||
generateMaze(); // this shows unbuffered progress messages
|
generateMaze(); // this shows unbuffered progress messages
|
||||||
if (settings.cheat && r>1) findRoute(); // not enough memory for r==1 :-(
|
if (settings.cheat && r>1) findRoute(); // not enough memory for r==1 :-(
|
||||||
|
|
||||||
Bangle.setLCDMode("doublebuffered");
|
if (!BANGLEJS2) Bangle.setLCDMode("doublebuffered");
|
||||||
clearAll();
|
clearAll();
|
||||||
drawAll(drawMaze);
|
drawAll(drawMaze);
|
||||||
intervalID = setInterval(tick, 100);
|
intervalID = setInterval(tick, 100);
|
||||||
|
@ -307,6 +312,7 @@
|
||||||
const range = {top: 0, left: 0, bottom: rows, right: cols};
|
const range = {top: 0, left: 0, bottom: rows, right: cols};
|
||||||
const w = sW/cols, h = sH/rows;
|
const w = sW/cols, h = sH/rows;
|
||||||
g.clear();
|
g.clear();
|
||||||
|
if (BANGLEJS2) g.setBgColor(bgColour);
|
||||||
g.setColor(0.76, 0.60, 0.42);
|
g.setColor(0.76, 0.60, 0.42);
|
||||||
for(let row = range.top; row<=range.bottom; row++) {
|
for(let row = range.top; row<=range.bottom; row++) {
|
||||||
for(let col = range.left; col<=range.right; col++) {
|
for(let col = range.left; col<=range.right; col++) {
|
||||||
|
|
|
@ -1,2 +1,3 @@
|
||||||
0.01: Initial version of Balltastic released! Happy!
|
0.01: Initial version of Balltastic released! Happy!
|
||||||
0.02: Set LCD timeout for Espruino 2v10 compatibility
|
0.02: Set LCD timeout for Espruino 2v10 compatibility
|
||||||
|
0.03: Now also works on Bangle.js 2
|
||||||
|
|
|
@ -1,11 +1,12 @@
|
||||||
|
BANGLEJS2 = process.env.HWVERSION==2;
|
||||||
Bangle.setLCDBrightness(1);
|
Bangle.setLCDBrightness(1);
|
||||||
Bangle.setLCDMode("doublebuffered");
|
if (!BANGLEJS2) Bangle.setLCDMode("doublebuffered");
|
||||||
Bangle.setLCDTimeout(0);
|
Bangle.setLCDTimeout(0);
|
||||||
|
|
||||||
let points = 0;
|
let points = 0;
|
||||||
let level = 1;
|
let level = 1;
|
||||||
let levelSpeedStart = 0.8;
|
let levelSpeedStart = 0.8;
|
||||||
let nextLevelPoints = 20;
|
let nextLevelPoints = 10;
|
||||||
let levelSpeedFactor = 0.2;
|
let levelSpeedFactor = 0.2;
|
||||||
let counterWidth = 10;
|
let counterWidth = 10;
|
||||||
let gWidth = g.getWidth() - counterWidth;
|
let gWidth = g.getWidth() - counterWidth;
|
||||||
|
@ -81,12 +82,23 @@ function drawLevelText() {
|
||||||
g.setColor("#26b6c7");
|
g.setColor("#26b6c7");
|
||||||
g.setFontAlign(0, 0);
|
g.setFontAlign(0, 0);
|
||||||
g.setFont("4x6", 5);
|
g.setFont("4x6", 5);
|
||||||
g.drawString("Level " + level, 120, 80);
|
g.drawString("Level " + level, g.getWidth()/2, g.getHeight()/2);
|
||||||
|
}
|
||||||
|
|
||||||
|
function drawPointsText() {
|
||||||
|
g.setColor("#26b6c7");
|
||||||
|
g.setFontAlign(0, 0);
|
||||||
|
g.setFont("4x6", 2);
|
||||||
|
g.drawString("Points " + points, g.getWidth()/2, g.getHeight()-20);
|
||||||
}
|
}
|
||||||
|
|
||||||
function draw() {
|
function draw() {
|
||||||
//bg
|
//bg
|
||||||
|
if (!BANGLEJS2) {
|
||||||
g.setColor("#71c6cf");
|
g.setColor("#71c6cf");
|
||||||
|
} else {
|
||||||
|
g.setColor("#002000");
|
||||||
|
}
|
||||||
g.fillRect(0, 0, g.getWidth(), g.getHeight());
|
g.fillRect(0, 0, g.getWidth(), g.getHeight());
|
||||||
|
|
||||||
//counter
|
//counter
|
||||||
|
@ -94,6 +106,7 @@ function draw() {
|
||||||
|
|
||||||
//draw level
|
//draw level
|
||||||
drawLevelText();
|
drawLevelText();
|
||||||
|
drawPointsText();
|
||||||
|
|
||||||
//dot
|
//dot
|
||||||
g.setColor("#ff0000");
|
g.setColor("#ff0000");
|
||||||
|
@ -152,7 +165,7 @@ function count() {
|
||||||
if (counter <= 0) {
|
if (counter <= 0) {
|
||||||
running = false;
|
running = false;
|
||||||
clearInterval(drawInterval);
|
clearInterval(drawInterval);
|
||||||
setTimeout(function(){ E.showMessage("Press Button 1\nto restart.", "Gameover!");},50);
|
setTimeout(function(){ E.showMessage("Press Button 1\nto restart.", "Game over!");},50);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
After Width: | Height: | Size: 2.1 KiB |
|
@ -1,12 +1,13 @@
|
||||||
{
|
{
|
||||||
"id": "balltastic",
|
"id": "balltastic",
|
||||||
"name": "Balltastic",
|
"name": "Balltastic",
|
||||||
"version": "0.02",
|
"version": "0.03",
|
||||||
"description": "Simple but fun ball eats dots game.",
|
"description": "Simple but fun ball eats dots game.",
|
||||||
"icon": "app.png",
|
"icon": "app.png",
|
||||||
|
"screenshots": [{"url":"bangle2-balltastic-screenshot.png"}],
|
||||||
"type": "app",
|
"type": "app",
|
||||||
"tags": "game,fun",
|
"tags": "game,fun",
|
||||||
"supports": ["BANGLEJS"],
|
"supports": ["BANGLEJS","BANGLEJS2"],
|
||||||
"storage": [
|
"storage": [
|
||||||
{"name":"balltastic.app.js","url":"app.js"},
|
{"name":"balltastic.app.js","url":"app.js"},
|
||||||
{"name":"balltastic.img","url":"app-icon.js","evaluate":true}
|
{"name":"balltastic.img","url":"app-icon.js","evaluate":true}
|
||||||
|
|
|
@ -0,0 +1,2 @@
|
||||||
|
0.01: Display pressure as number and hand
|
||||||
|
0.02: Use theme color
|
|
@ -0,0 +1 @@
|
||||||
|
require("heatshrink").decompress(atob("mEwwhC/AH4AVmczmALI7oWJgYXBmYLHhvd6AuKGBHdAAYXLDAwXRJIvd73u9oXSLoPuAAJhHOwYYGIYIXDGAwWGMIYvMC5QwBC4ZeMC4x3KL44XEU6KQEC5gAMCqoXZAH4AchAXWxAXWwBGWC62IC6sILywXXxAXUhWqzAXTCwIABOyYXD0AXSCwQABC/4XaO68JC6wYCCygA/AH4AGA"))
|
|
@ -0,0 +1,120 @@
|
||||||
|
var center = {
|
||||||
|
x: g.getWidth()/2,
|
||||||
|
y: g.getHeight()/2,
|
||||||
|
};
|
||||||
|
|
||||||
|
var MIN = 940;
|
||||||
|
var MAX = 1090;
|
||||||
|
var NUMBER_OF_VALUES = MAX - MIN;
|
||||||
|
var SCALE_TICK_STEP = 5;
|
||||||
|
var SCALE_VALUES_STEP = 25;
|
||||||
|
var NUMBER_OF_LABELS = NUMBER_OF_VALUES / SCALE_VALUES_STEP;
|
||||||
|
var NUMBER_OF_TICKS = NUMBER_OF_VALUES / SCALE_TICK_STEP;
|
||||||
|
var ZERO_OFFSET = (Math.PI / 4) * 3;
|
||||||
|
var SCALE_SPAN = (Math.PI / 2) * 3;
|
||||||
|
var TICK_LENGTH = 10;
|
||||||
|
var HAND_LENGTH = 45;
|
||||||
|
var HAND_WIDTH = 5;
|
||||||
|
|
||||||
|
function generatePoly(radius, width, angle){
|
||||||
|
var x = center.x + Math.cos(angle) * radius;
|
||||||
|
var y = center.y + Math.sin(angle) * radius;
|
||||||
|
var d = {
|
||||||
|
x: width/2 * Math.cos(angle + Math.PI/2),
|
||||||
|
y: width/2 * Math.sin(angle + Math.PI/2),
|
||||||
|
};
|
||||||
|
|
||||||
|
var poly = [center.x - d.x, center.y - d.y, center.x + d.x, center.y + d.y, x + d.x, y + d.y, x - d.x, y - d.y];
|
||||||
|
|
||||||
|
return poly;
|
||||||
|
}
|
||||||
|
|
||||||
|
function drawHand(value){
|
||||||
|
g.setColor(g.theme.fg2);
|
||||||
|
|
||||||
|
g.setFontAlign(0,0);
|
||||||
|
g.setFont("Vector",15);
|
||||||
|
g.drawString(value, center.x, center.y * 2 - 15, true);
|
||||||
|
|
||||||
|
var angle = SCALE_SPAN / NUMBER_OF_VALUES * (value - MIN) + ZERO_OFFSET;
|
||||||
|
g.fillPoly(generatePoly(HAND_LENGTH, HAND_WIDTH, angle), true);
|
||||||
|
g.fillCircle(center.x ,center.y, 4);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function drawTicks(){
|
||||||
|
g.setColor(g.theme.fg);
|
||||||
|
for(let i= 0; i <= NUMBER_OF_TICKS; i++){
|
||||||
|
var angle = (i * (SCALE_SPAN/NUMBER_OF_TICKS)) + ZERO_OFFSET;
|
||||||
|
|
||||||
|
var tickWidth = i%5==0 ? 5 : 2;
|
||||||
|
g.fillPoly(generatePoly(center.x, tickWidth, angle), true);
|
||||||
|
}
|
||||||
|
|
||||||
|
g.setColor(g.theme.bg);
|
||||||
|
g.fillCircle(center.x,center.y,center.x - TICK_LENGTH);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function drawScaleLabels(){
|
||||||
|
g.setColor(g.theme.fg);
|
||||||
|
g.setFont("Vector",12);
|
||||||
|
|
||||||
|
let label = MIN;
|
||||||
|
for (let i=0;i <= NUMBER_OF_LABELS; i++){
|
||||||
|
var angle = (i * (SCALE_SPAN/NUMBER_OF_LABELS)) + ZERO_OFFSET;
|
||||||
|
var labelDimensions = g.stringMetrics(label);
|
||||||
|
|
||||||
|
var LABEL_PADDING = 5;
|
||||||
|
var radius = center.x - TICK_LENGTH - LABEL_PADDING;
|
||||||
|
var x = center.x + Math.cos(angle) * radius;
|
||||||
|
var y = center.y + Math.sin(angle) * radius;
|
||||||
|
|
||||||
|
var visualX = x > center.x ? x - labelDimensions.width : x + labelDimensions.width > center.x ? x - (labelDimensions.width / 2) : x;
|
||||||
|
var visualY = y >= center.y - labelDimensions.height / 2 ? y - labelDimensions.height / 2 : y;
|
||||||
|
|
||||||
|
g.drawString(label, visualX, visualY);
|
||||||
|
|
||||||
|
label += SCALE_VALUES_STEP;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function drawIcons() {
|
||||||
|
var sunIcon = {
|
||||||
|
width : 24, height : 24, bpp : 1,
|
||||||
|
transparent : 0,
|
||||||
|
buffer : require("heatshrink").decompress(atob("gEYAQ0IgEQjkAnEMv0wgH/gEB4eAgcA4EHgHgg0AsHmgFnAQQICBwQUCDQQgCEwQsCGQQ+IA"))
|
||||||
|
};
|
||||||
|
g.drawImage(sunIcon, center.x + 15, center.y - 12);
|
||||||
|
|
||||||
|
var sunRainIcon = {
|
||||||
|
width : 24, height : 24, bpp : 1,
|
||||||
|
transparent : 0,
|
||||||
|
buffer : require("heatshrink").decompress(atob("AAeAAQmEgEQhEAhIIBg1ggEEj8AhEw4HokFAglAnEGoEGgHAgcRgEBkQCBgQCBgcAgUBwARBv/4HAcgiAFDCoIAC"))
|
||||||
|
};
|
||||||
|
g.drawImage(sunRainIcon, center.x - 12, 30);
|
||||||
|
|
||||||
|
var rainIcon = {
|
||||||
|
width : 24, height : 24, bpp : 1,
|
||||||
|
transparent : 0,
|
||||||
|
buffer : require("heatshrink").decompress(atob("AA0gAQPMgEBgUAgQCCgPwAgMYj0AhkQgEECwICGBYMIj//+ArFgURwAqBB4NEgEQghAJ"))
|
||||||
|
};
|
||||||
|
g.drawImage(rainIcon, center.x - 44, center.y - 12);
|
||||||
|
}
|
||||||
|
|
||||||
|
g.setBgColor(g.theme.bg);
|
||||||
|
g.clear();
|
||||||
|
|
||||||
|
drawTicks();
|
||||||
|
drawScaleLabels();
|
||||||
|
drawIcons();
|
||||||
|
|
||||||
|
try {
|
||||||
|
Bangle.getPressure().then(data => {
|
||||||
|
drawHand(Math.round(data.pressure));
|
||||||
|
});
|
||||||
|
} catch(e) {
|
||||||
|
print(e.message);
|
||||||
|
print("barometer not supporter, show a demo value");
|
||||||
|
drawHand(MIN);
|
||||||
|
}
|
After Width: | Height: | Size: 887 B |
|
@ -0,0 +1,15 @@
|
||||||
|
{ "id": "barometer",
|
||||||
|
"name": "Barometer",
|
||||||
|
"shortName":"Barometer",
|
||||||
|
"version":"0.02",
|
||||||
|
"description": "A simple barometer that displays the current air pressure",
|
||||||
|
"icon": "barometer.png",
|
||||||
|
"tags": "tool,outdoors",
|
||||||
|
"allow_emulator":true,
|
||||||
|
"screenshots" : [ { "url": "screenshot.png" } ],
|
||||||
|
"supports" : ["BANGLEJS2"],
|
||||||
|
"storage": [
|
||||||
|
{"name":"barometer.app.js","url":"app.js"},
|
||||||
|
{"name":"barometer.img","url":"app-icon.js","evaluate":true}
|
||||||
|
]
|
||||||
|
}
|
After Width: | Height: | Size: 3.1 KiB |
|
@ -5,3 +5,15 @@
|
||||||
0.03: Prevent readings from internal sensor mixing into BT values
|
0.03: Prevent readings from internal sensor mixing into BT values
|
||||||
Mark events with src property
|
Mark events with src property
|
||||||
Show actual source of event in app
|
Show actual source of event in app
|
||||||
|
0.04: Automatically reconnect BT sensor
|
||||||
|
App buzzes if no BTHRM events for more than 3 seconds
|
||||||
|
0.05: Allow reading additional data if available: HRM battery, position and RR
|
||||||
|
Better caching of scanned BT device properties
|
||||||
|
New setting for not starting the BTHRM together with HRM
|
||||||
|
Save some RAM by not defining functions if disabled in settings
|
||||||
|
Always emit BTHRM event
|
||||||
|
Cleanup promises code and allow to configure custom additional waiting times to work around bugs
|
||||||
|
Disconnect cleanly on exit
|
||||||
|
0.06: Fix bug if no request waiting time is set
|
||||||
|
Fix bug if no connection data was cached
|
||||||
|
Fix error during disconnect
|
||||||
|
|
|
@ -1,33 +1,480 @@
|
||||||
(function() {
|
(function() {
|
||||||
var log = function() {};//print
|
var settings = Object.assign(
|
||||||
var gatt;
|
require('Storage').readJSON("bthrm.default.json", true) || {},
|
||||||
var status;
|
require('Storage').readJSON("bthrm.json", true) || {}
|
||||||
|
);
|
||||||
|
|
||||||
var origIsHRMOn = Bangle.isHRMOn;
|
var log = function(text, param){
|
||||||
|
if (settings.debuglog){
|
||||||
|
var logline = new Date().toISOString() + " - " + text;
|
||||||
|
if (param){
|
||||||
|
logline += " " + JSON.stringify(param);
|
||||||
|
}
|
||||||
|
print(logline);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
Bangle.isBTHRMOn = function(){
|
log("Settings: ", settings);
|
||||||
return (status=="searching" || status=="connecting") || (gatt!==undefined);
|
|
||||||
|
if (settings.enabled){
|
||||||
|
|
||||||
|
function clearCache(){
|
||||||
|
return require('Storage').erase("bthrm.cache.json");
|
||||||
}
|
}
|
||||||
|
|
||||||
Bangle.isHRMOn = function() {
|
function getCache(){
|
||||||
var settings = require('Storage').readJSON("bthrm.json", true) || {};
|
return require('Storage').readJSON("bthrm.cache.json", true) || {};
|
||||||
|
}
|
||||||
|
|
||||||
|
function addNotificationHandler(characteristic){
|
||||||
|
log("Setting notification handler: " + supportedCharacteristics[characteristic.uuid].handler);
|
||||||
|
characteristic.on('characteristicvaluechanged', supportedCharacteristics[characteristic.uuid].handler);
|
||||||
|
}
|
||||||
|
|
||||||
|
function writeCache(cache){
|
||||||
|
var oldCache = getCache();
|
||||||
|
if (oldCache != cache) {
|
||||||
|
log("Writing cache");
|
||||||
|
require('Storage').writeJSON("bthrm.cache.json", cache)
|
||||||
|
} else {
|
||||||
|
log("No changes, don't write cache");
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
function characteristicsToCache(characteristics){
|
||||||
|
log("Cache characteristics");
|
||||||
|
var cache = getCache();
|
||||||
|
if (!cache.characteristics) cache.characteristics = {};
|
||||||
|
for (var c of characteristics){
|
||||||
|
//"handle_value":16,"handle_decl":15
|
||||||
|
log("Saving handle " + c.handle_value + " for characteristic: ", c);
|
||||||
|
cache.characteristics[c.uuid] = {
|
||||||
|
"handle": c.handle_value,
|
||||||
|
"uuid": c.uuid,
|
||||||
|
"notify": c.properties.notify,
|
||||||
|
"read": c.properties.read
|
||||||
|
};
|
||||||
|
}
|
||||||
|
writeCache(cache);
|
||||||
|
}
|
||||||
|
|
||||||
|
function characteristicsFromCache(){
|
||||||
|
log("Read cached characteristics");
|
||||||
|
var cache = getCache();
|
||||||
|
if (!cache.characteristics) return [];
|
||||||
|
var restored = [];
|
||||||
|
for (var c in cache.characteristics){
|
||||||
|
var cached = cache.characteristics[c];
|
||||||
|
var r = new BluetoothRemoteGATTCharacteristic();
|
||||||
|
log("Restoring characteristic ", cached);
|
||||||
|
r.handle_value = cached.handle;
|
||||||
|
r.uuid = cached.uuid;
|
||||||
|
r.properties = {};
|
||||||
|
r.properties.notify = cached.notify;
|
||||||
|
r.properties.read = cached.read;
|
||||||
|
addNotificationHandler(r);
|
||||||
|
log("Restored characteristic: ", r);
|
||||||
|
restored.push(r);
|
||||||
|
}
|
||||||
|
return restored;
|
||||||
|
}
|
||||||
|
|
||||||
|
log("Start");
|
||||||
|
|
||||||
|
var lastReceivedData={
|
||||||
|
};
|
||||||
|
|
||||||
|
var serviceFilters = [{
|
||||||
|
services: [ "180d" ]
|
||||||
|
}];
|
||||||
|
|
||||||
|
supportedServices = [
|
||||||
|
"0x180d", "0x180f"
|
||||||
|
];
|
||||||
|
|
||||||
|
var supportedCharacteristics = {
|
||||||
|
"0x2a37": {
|
||||||
|
//Heart rate measurement
|
||||||
|
handler: function (event){
|
||||||
|
var dv = event.target.value;
|
||||||
|
var flags = dv.getUint8(0);
|
||||||
|
|
||||||
|
var bpm = (flags & 1) ? (dv.getUint16(1) / 100 /* ? */ ) : dv.getUint8(1); // 8 or 16 bit
|
||||||
|
|
||||||
|
var sensorContact;
|
||||||
|
|
||||||
|
if (flags & 2){
|
||||||
|
sensorContact = (flags & 4) ? true : false;
|
||||||
|
}
|
||||||
|
|
||||||
|
var idx = 2 + (flags&1);
|
||||||
|
|
||||||
|
var energyExpended;
|
||||||
|
if (flags & 8){
|
||||||
|
energyExpended = dv.getUint16(idx,1);
|
||||||
|
idx += 2;
|
||||||
|
}
|
||||||
|
var interval;
|
||||||
|
if (flags & 16) {
|
||||||
|
interval = [];
|
||||||
|
maxIntervalBytes = (dv.byteLength - idx);
|
||||||
|
log("Found " + (maxIntervalBytes / 2) + " rr data fields");
|
||||||
|
for(var i = 0 ; i < maxIntervalBytes / 2; i++){
|
||||||
|
interval[i] = dv.getUint16(idx,1); // in milliseconds
|
||||||
|
idx += 2
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
var location;
|
||||||
|
if (lastReceivedData && lastReceivedData["0x180d"] && lastReceivedData["0x180d"]["0x2a38"]){
|
||||||
|
location = lastReceivedData["0x180d"]["0x2a38"];
|
||||||
|
}
|
||||||
|
|
||||||
|
var battery;
|
||||||
|
if (lastReceivedData && lastReceivedData["0x180f"] && lastReceivedData["0x180f"]["0x2a19"]){
|
||||||
|
battery = lastReceivedData["0x180f"]["0x2a19"];
|
||||||
|
}
|
||||||
|
|
||||||
|
if (settings.replace){
|
||||||
|
var newEvent = {
|
||||||
|
bpm: bpm,
|
||||||
|
confidence: (sensorContact || sensorContact === undefined)? 100 : 0,
|
||||||
|
src: "bthrm"
|
||||||
|
};
|
||||||
|
|
||||||
|
log("Emitting HRM: ", newEvent);
|
||||||
|
Bangle.emit("HRM", newEvent);
|
||||||
|
}
|
||||||
|
|
||||||
|
var newEvent = {
|
||||||
|
bpm: bpm
|
||||||
|
};
|
||||||
|
|
||||||
|
if (location) newEvent.location = location;
|
||||||
|
if (interval) newEvent.rr = interval;
|
||||||
|
if (energyExpended) newEvent.energy = energyExpended;
|
||||||
|
if (battery) newEvent.battery = battery;
|
||||||
|
if (sensorContact) newEvent.contact = sensorContact;
|
||||||
|
|
||||||
|
log("Emitting BTHRM: ", newEvent);
|
||||||
|
Bangle.emit("BTHRM", newEvent);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"0x2a38": {
|
||||||
|
//Body sensor location
|
||||||
|
handler: function(data){
|
||||||
|
if (!lastReceivedData["0x180d"]) lastReceivedData["0x180d"] = {};
|
||||||
|
if (!lastReceivedData["0x180d"]["0x2a38"]) lastReceivedData["0x180d"]["0x2a38"] = data.target.value;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"0x2a19": {
|
||||||
|
//Battery
|
||||||
|
handler: function (event){
|
||||||
|
if (!lastReceivedData["0x180f"]) lastReceivedData["0x180f"] = {};
|
||||||
|
if (!lastReceivedData["0x180f"]["0x2a19"]) lastReceivedData["0x180f"]["0x2a19"] = event.target.value.getUint8(0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
var device;
|
||||||
|
var gatt;
|
||||||
|
var characteristics = [];
|
||||||
|
var blockInit = false;
|
||||||
|
var currentRetryTimeout;
|
||||||
|
var initialRetryTime = 40;
|
||||||
|
var maxRetryTime = 60000;
|
||||||
|
var retryTime = initialRetryTime;
|
||||||
|
|
||||||
|
var connectSettings = {
|
||||||
|
minInterval: 7.5,
|
||||||
|
maxInterval: 1500
|
||||||
|
};
|
||||||
|
|
||||||
|
function waitingPromise(timeout) {
|
||||||
|
return new Promise(function(resolve){
|
||||||
|
log("Start waiting for " + timeout);
|
||||||
|
setTimeout(()=>{
|
||||||
|
log("Done waiting for " + timeout);
|
||||||
|
resolve();
|
||||||
|
}, timeout);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
if (settings.enabled){
|
||||||
|
Bangle.isBTHRMOn = function(){
|
||||||
|
return (Bangle._PWR && Bangle._PWR.BTHRM && Bangle._PWR.BTHRM.length > 0);
|
||||||
|
};
|
||||||
|
|
||||||
|
Bangle.isBTHRMConnected = function(){
|
||||||
|
return gatt && gatt.connected;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if (settings.replace){
|
||||||
|
var origIsHRMOn = Bangle.isHRMOn;
|
||||||
|
|
||||||
|
Bangle.isHRMOn = function() {
|
||||||
if (settings.enabled && !settings.replace){
|
if (settings.enabled && !settings.replace){
|
||||||
return origIsHRMOn();
|
return origIsHRMOn();
|
||||||
} else if (settings.enabled && settings.replace){
|
} else if (settings.enabled && settings.replace){
|
||||||
return Bangle.isBTHRMOn();
|
return Bangle.isBTHRMOn();
|
||||||
}
|
}
|
||||||
return origIsHRMOn() || Bangle.isBTHRMOn();
|
return origIsHRMOn() || Bangle.isBTHRMOn();
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
function clearRetryTimeout(){
|
||||||
|
if (currentRetryTimeout){
|
||||||
|
log("Clearing timeout " + currentRetryTimeout);
|
||||||
|
clearTimeout(currentRetryTimeout);
|
||||||
|
currentRetryTimeout = undefined;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function retry(){
|
||||||
|
log("Retry");
|
||||||
|
|
||||||
|
if (!currentRetryTimeout){
|
||||||
|
|
||||||
|
var clampedTime = retryTime < 100 ? 100 : retryTime;
|
||||||
|
|
||||||
|
log("Set timeout for retry as " + clampedTime);
|
||||||
|
clearRetryTimeout();
|
||||||
|
currentRetryTimeout = setTimeout(() => {
|
||||||
|
log("Retrying");
|
||||||
|
currentRetryTimeout = undefined;
|
||||||
|
initBt();
|
||||||
|
}, clampedTime);
|
||||||
|
|
||||||
|
retryTime = Math.pow(retryTime, 1.1);
|
||||||
|
if (retryTime > maxRetryTime){
|
||||||
|
retryTime = maxRetryTime;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
log("Already in retry...");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
var buzzing = false;
|
||||||
|
function onDisconnect(reason) {
|
||||||
|
log("Disconnect: " + reason);
|
||||||
|
log("GATT: ", gatt);
|
||||||
|
log("Characteristics: ", characteristics);
|
||||||
|
retryTime = initialRetryTime;
|
||||||
|
clearRetryTimeout();
|
||||||
|
switchInternalHrm();
|
||||||
|
blockInit = false;
|
||||||
|
if (settings.warnDisconnect && !buzzing){
|
||||||
|
buzzing = true;
|
||||||
|
Bangle.buzz(500,0.3).then(()=>waitingPromise(4500)).then(()=>{buzzing = false;});
|
||||||
|
}
|
||||||
|
if (Bangle.isBTHRMOn()){
|
||||||
|
retry();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function createCharacteristicPromise(newCharacteristic){
|
||||||
|
log("Create characteristic promise: ", newCharacteristic);
|
||||||
|
var result = Promise.resolve();
|
||||||
|
if (newCharacteristic.properties.notify){
|
||||||
|
result = result.then(()=>{
|
||||||
|
log("Starting notifications for: ", newCharacteristic);
|
||||||
|
var startPromise = newCharacteristic.startNotifications().then(()=>log("Notifications started for ", newCharacteristic));
|
||||||
|
if (settings.gracePeriodNotification > 0){
|
||||||
|
log("Add " + settings.gracePeriodNotification + "ms grace period after starting notifications");
|
||||||
|
startPromise = startPromise.then(()=>{
|
||||||
|
log("Wait after connect");
|
||||||
|
waitingPromise(settings.gracePeriodNotification)
|
||||||
|
});
|
||||||
|
}
|
||||||
|
return startPromise;
|
||||||
|
});
|
||||||
|
} else if (newCharacteristic.read){
|
||||||
|
result = result.then(()=>{
|
||||||
|
readData(newCharacteristic);
|
||||||
|
log("Reading data for " + newCharacteristic);
|
||||||
|
return newCharacteristic.read().then((data)=>{
|
||||||
|
supportedCharacteristics[newCharacteristic.uuid].handler(data);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
return result.then(()=>log("Handled characteristic: ", newCharacteristic));
|
||||||
|
}
|
||||||
|
|
||||||
|
function attachCharacteristicPromise(promise, characteristic){
|
||||||
|
return promise.then(()=>{
|
||||||
|
log("Handling characteristic:", characteristic);
|
||||||
|
return createCharacteristicPromise(characteristic);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
function createCharacteristicsPromise(newCharacteristics){
|
||||||
|
log("Create characteristics promise: ", newCharacteristics);
|
||||||
|
var result = Promise.resolve();
|
||||||
|
for (var c of newCharacteristics){
|
||||||
|
if (!supportedCharacteristics[c.uuid]) continue;
|
||||||
|
log("Supporting characteristic: ", c);
|
||||||
|
characteristics.push(c);
|
||||||
|
if (c.properties.notify){
|
||||||
|
addNotificationHandler(c);
|
||||||
|
}
|
||||||
|
|
||||||
|
result = attachCharacteristicPromise(result, c);
|
||||||
|
}
|
||||||
|
return result.then(()=>log("Handled characteristics"));
|
||||||
|
}
|
||||||
|
|
||||||
|
function createServicePromise(service){
|
||||||
|
log("Create service promise: ", service);
|
||||||
|
var result = Promise.resolve();
|
||||||
|
result = result.then(()=>{
|
||||||
|
log("Handling service: " + service.uuid);
|
||||||
|
return service.getCharacteristics().then((c)=>createCharacteristicsPromise(c));
|
||||||
|
});
|
||||||
|
return result.then(()=>log("Handled service" + service.uuid));
|
||||||
|
}
|
||||||
|
|
||||||
|
function attachServicePromise(promise, service){
|
||||||
|
return promise.then(()=>createServicePromise(service));
|
||||||
|
}
|
||||||
|
|
||||||
|
var reUseCounter = 0;
|
||||||
|
|
||||||
|
function initBt() {
|
||||||
|
log("initBt with blockInit: " + blockInit);
|
||||||
|
if (blockInit){
|
||||||
|
retry();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
blockInit = true;
|
||||||
|
|
||||||
|
if (reUseCounter > 10){
|
||||||
|
log("Reuse counter to high");
|
||||||
|
gatt=undefined;
|
||||||
|
reUseCounter = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
var promise;
|
||||||
|
|
||||||
|
if (!device){
|
||||||
|
promise = NRF.requestDevice({ filters: serviceFilters });
|
||||||
|
|
||||||
|
if (settings.gracePeriodRequest){
|
||||||
|
log("Add " + settings.gracePeriodRequest + "ms grace period after request");
|
||||||
|
}
|
||||||
|
|
||||||
|
promise = promise.then((d)=>{
|
||||||
|
log("Got device: ", d);
|
||||||
|
d.on('gattserverdisconnected', onDisconnect);
|
||||||
|
device = d;
|
||||||
|
});
|
||||||
|
|
||||||
|
promise = promise.then(()=>{
|
||||||
|
log("Wait after request");
|
||||||
|
return waitingPromise(settings.gracePeriodRequest);
|
||||||
|
});
|
||||||
|
|
||||||
|
} else {
|
||||||
|
promise = Promise.resolve();
|
||||||
|
log("Reuse device: ", device);
|
||||||
|
}
|
||||||
|
|
||||||
|
promise = promise.then(()=>{
|
||||||
|
if (gatt){
|
||||||
|
log("Reuse GATT: ", gatt);
|
||||||
|
} else {
|
||||||
|
log("GATT is new: ", gatt);
|
||||||
|
characteristics = [];
|
||||||
|
var cachedName = getCache().name;
|
||||||
|
if (device.name != cachedName){
|
||||||
|
log("Device name changed from " + cachedName + " to " + device.name + ", clearing cache");
|
||||||
|
clearCache();
|
||||||
|
}
|
||||||
|
var newCache = getCache();
|
||||||
|
newCache.name = device.name;
|
||||||
|
writeCache(newCache);
|
||||||
|
gatt = device.gatt;
|
||||||
|
}
|
||||||
|
|
||||||
|
return Promise.resolve(gatt);
|
||||||
|
});
|
||||||
|
|
||||||
|
promise = promise.then((gatt)=>{
|
||||||
|
if (!gatt.connected){
|
||||||
|
var connectPromise = gatt.connect(connectSettings);
|
||||||
|
if (settings.gracePeriodConnect > 0){
|
||||||
|
log("Add " + settings.gracePeriodConnect + "ms grace period after connecting");
|
||||||
|
connectPromise = connectPromise.then(()=>{
|
||||||
|
log("Wait after connect");
|
||||||
|
return waitingPromise(settings.gracePeriodConnect);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
return connectPromise;
|
||||||
|
} else {
|
||||||
|
return Promise.resolve();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
promise = promise.then(()=>{
|
||||||
|
if (!characteristics || characteristics.length == 0){
|
||||||
|
characteristics = characteristicsFromCache();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
promise = promise.then(()=>{
|
||||||
|
var characteristicsPromise = Promise.resolve();
|
||||||
|
if (characteristics.length == 0){
|
||||||
|
characteristicsPromise = characteristicsPromise.then(()=>{
|
||||||
|
log("Getting services");
|
||||||
|
return gatt.getPrimaryServices();
|
||||||
|
});
|
||||||
|
|
||||||
|
characteristicsPromise = characteristicsPromise.then((services)=>{
|
||||||
|
log("Got services:", services);
|
||||||
|
var result = Promise.resolve();
|
||||||
|
for (var service of services){
|
||||||
|
if (!(supportedServices.includes(service.uuid))) continue;
|
||||||
|
log("Supporting service: ", service.uuid);
|
||||||
|
result = attachServicePromise(result, service);
|
||||||
|
}
|
||||||
|
if (settings.gracePeriodService > 0) {
|
||||||
|
log("Add " + settings.gracePeriodService + "ms grace period after services");
|
||||||
|
result = result.then(()=>{
|
||||||
|
log("Wait after services");
|
||||||
|
return waitingPromise(settings.gracePeriodService)
|
||||||
|
});
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
});
|
||||||
|
|
||||||
|
} else {
|
||||||
|
for (var characteristic of characteristics){
|
||||||
|
characteristicsPromise = attachCharacteristicPromise(characteristicsPromise, characteristic, true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return characteristicsPromise;
|
||||||
|
});
|
||||||
|
|
||||||
|
promise = promise.then(()=>{
|
||||||
|
log("Connection established, waiting for notifications");
|
||||||
|
reUseCounter = 0;
|
||||||
|
characteristicsToCache(characteristics);
|
||||||
|
clearRetryTimeout();
|
||||||
|
}).catch((e) => {
|
||||||
|
characteristics = [];
|
||||||
|
log("Error:", e);
|
||||||
|
onDisconnect(e);
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
Bangle.setBTHRMPower = function(isOn, app) {
|
Bangle.setBTHRMPower = function(isOn, app) {
|
||||||
|
|
||||||
|
|
||||||
var settings = require('Storage').readJSON("bthrm.json", true) || {};
|
|
||||||
|
|
||||||
// Do app power handling
|
// Do app power handling
|
||||||
if (!app) app="?";
|
if (!app) app="?";
|
||||||
log("setBTHRMPower ->", isOn, app);
|
|
||||||
if (Bangle._PWR===undefined) Bangle._PWR={};
|
if (Bangle._PWR===undefined) Bangle._PWR={};
|
||||||
if (Bangle._PWR.BTHRM===undefined) Bangle._PWR.BTHRM=[];
|
if (Bangle._PWR.BTHRM===undefined) Bangle._PWR.BTHRM=[];
|
||||||
if (isOn && !Bangle._PWR.BTHRM.includes(app)) Bangle._PWR.BTHRM.push(app);
|
if (isOn && !Bangle._PWR.BTHRM.includes(app)) Bangle._PWR.BTHRM.push(app);
|
||||||
|
@ -35,89 +482,76 @@
|
||||||
isOn = Bangle._PWR.BTHRM.length;
|
isOn = Bangle._PWR.BTHRM.length;
|
||||||
// so now we know if we're really on
|
// so now we know if we're really on
|
||||||
if (isOn) {
|
if (isOn) {
|
||||||
log("setBTHRMPower on", app);
|
if (!Bangle.isBTHRMConnected()) initBt();
|
||||||
if (!Bangle.isBTHRMOn()) {
|
|
||||||
log("BTHRM not already on");
|
|
||||||
status = "searching";
|
|
||||||
NRF.requestDevice({ filters: [{ services: ['180D'] }] }).then(function(device) {
|
|
||||||
log("Found device "+device.id);
|
|
||||||
status = "connecting";
|
|
||||||
device.on('gattserverdisconnected', function(reason) {
|
|
||||||
gatt = undefined;
|
|
||||||
});
|
|
||||||
return device.gatt.connect();
|
|
||||||
}).then(function(g) {
|
|
||||||
log("Connected");
|
|
||||||
gatt = g;
|
|
||||||
return gatt.getPrimaryService(0x180D);
|
|
||||||
}).then(function(service) {
|
|
||||||
return service.getCharacteristic(0x2A37);
|
|
||||||
}).then(function(characteristic) {
|
|
||||||
log("Got characteristic");
|
|
||||||
characteristic.on('characteristicvaluechanged', function(event) {
|
|
||||||
var dv = event.target.value;
|
|
||||||
var flags = dv.getUint8(0);
|
|
||||||
// 0 = 8 or 16 bit
|
|
||||||
// 1,2 = sensor contact
|
|
||||||
// 3 = energy expended shown
|
|
||||||
// 4 = RR interval
|
|
||||||
var bpm = (flags&1) ? (dv.getUint16(1)/100/* ? */) : dv.getUint8(1); // 8 or 16 bit
|
|
||||||
/* var idx = 2 + (flags&1); // index of next field
|
|
||||||
if (flags&8) idx += 2; // energy expended
|
|
||||||
if (flags&16) {
|
|
||||||
var interval = dv.getUint16(idx,1); // in milliseconds
|
|
||||||
}*/
|
|
||||||
|
|
||||||
Bangle.emit(settings.replace?"HRM":"BTHRM", {
|
|
||||||
bpm:bpm,
|
|
||||||
confidence:100,
|
|
||||||
src:settings.replace?"bthrm":undefined
|
|
||||||
});
|
|
||||||
});
|
|
||||||
return characteristic.startNotifications();
|
|
||||||
}).then(function() {
|
|
||||||
log("Ready");
|
|
||||||
status = "ok";
|
|
||||||
}).catch(function(err) {
|
|
||||||
log("Error",err);
|
|
||||||
gatt = undefined;
|
|
||||||
status = "error";
|
|
||||||
});
|
|
||||||
}
|
|
||||||
} else { // not on
|
} else { // not on
|
||||||
log("setBTHRMPower off", app);
|
log("Power off for " + app);
|
||||||
if (gatt) {
|
if (gatt) {
|
||||||
log("BTHRM connected - disconnecting");
|
if (gatt.connected){
|
||||||
status = undefined;
|
log("Disconnect with gatt: ", gatt);
|
||||||
try {gatt.disconnect();}catch(e) {
|
gatt.disconnect().then(()=>{
|
||||||
log("BTHRM disconnect error", e);
|
log("Successful disconnect");
|
||||||
|
}).catch((e)=>{
|
||||||
|
log("Error during disconnect", e);
|
||||||
|
});
|
||||||
}
|
}
|
||||||
gatt = undefined;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
var origSetHRMPower = Bangle.setHRMPower;
|
var origSetHRMPower = Bangle.setHRMPower;
|
||||||
|
|
||||||
|
if (settings.startWithHrm){
|
||||||
|
|
||||||
Bangle.setHRMPower = function(isOn, app) {
|
Bangle.setHRMPower = function(isOn, app) {
|
||||||
var settings = require('Storage').readJSON("bthrm.json", true) || {};
|
log("setHRMPower for " + app + ": " + (isOn?"on":"off"));
|
||||||
if (settings.enabled || !isOn){
|
if (settings.enabled){
|
||||||
Bangle.setBTHRMPower(isOn, app);
|
Bangle.setBTHRMPower(isOn, app);
|
||||||
}
|
}
|
||||||
if ((settings.enabled && !settings.replace) || !settings.enabled || !isOn){
|
if ((settings.enabled && !settings.replace) || !settings.enabled){
|
||||||
origSetHRMPower(isOn, app);
|
origSetHRMPower(isOn, app);
|
||||||
}
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
var fallbackInterval;
|
||||||
|
|
||||||
|
function switchInternalHrm(){
|
||||||
|
if (settings.allowFallback && !fallbackInterval){
|
||||||
|
log("Fallback to HRM enabled");
|
||||||
|
origSetHRMPower(1, "bthrm_fallback");
|
||||||
|
fallbackInterval = setInterval(()=>{
|
||||||
|
if (Bangle.isBTHRMConnected()){
|
||||||
|
origSetHRMPower(0, "bthrm_fallback");
|
||||||
|
clearInterval(fallbackInterval);
|
||||||
|
fallbackInterval = undefined;
|
||||||
|
log("Fallback to HRM disabled");
|
||||||
|
}
|
||||||
|
}, settings.fallbackTimeout);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
var settings = require('Storage').readJSON("bthrm.json", true) || {};
|
if (settings.replace){
|
||||||
if (settings.enabled && settings.replace){
|
log("Replace HRM event");
|
||||||
if (!(Bangle._PWR===undefined) && !(Bangle._PWR.HRM===undefined)){
|
if (Bangle._PWR && Bangle._PWR.HRM){
|
||||||
for (var i = 0; i < Bangle._PWR.HRM.length; i++){
|
for (var i = 0; i < Bangle._PWR.HRM.length; i++){
|
||||||
var app = Bangle._PWR.HRM[i];
|
var app = Bangle._PWR.HRM[i];
|
||||||
|
log("Moving app " + app);
|
||||||
origSetHRMPower(0, app);
|
origSetHRMPower(0, app);
|
||||||
Bangle.setBTHRMPower(1, app);
|
Bangle.setBTHRMPower(1, app);
|
||||||
if (Bangle._PWR.HRM===undefined) break;
|
if (Bangle._PWR.HRM===undefined) break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
switchInternalHrm();
|
||||||
|
}
|
||||||
|
|
||||||
|
E.on("kill", ()=>{
|
||||||
|
if (gatt && gatt.connected){
|
||||||
|
log("Got killed, trying to disconnect");
|
||||||
|
var promise = gatt.disconnect();
|
||||||
|
promise.then(()=>log("Disconnected on kill"));
|
||||||
|
promise.catch((e)=>log("Error during disconnnect on kill", e));
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
})();
|
})();
|
||||||
|
|
|
@ -1,61 +1,95 @@
|
||||||
var btm = g.getHeight()-1;
|
var btm = g.getHeight()-1;
|
||||||
var eventInt = null;
|
var intervalInt;
|
||||||
var eventBt = null;
|
var intervalBt;
|
||||||
var counterInt = 0;
|
|
||||||
var counterBt = 0;
|
|
||||||
|
|
||||||
|
function clear(y){
|
||||||
function draw(y, event, type, counter) {
|
|
||||||
var px = g.getWidth()/2;
|
|
||||||
g.reset();
|
g.reset();
|
||||||
g.setFontAlign(0,0);
|
|
||||||
g.clearRect(0,y,g.getWidth(),y+75);
|
g.clearRect(0,y,g.getWidth(),y+75);
|
||||||
if (type == null || event == null || counter == 0) return;
|
|
||||||
var str = event.bpm + "";
|
|
||||||
g.setFontVector(40).drawString(str,px,y+20);
|
|
||||||
str = "Confidence: " + event.confidence;
|
|
||||||
g.setFontVector(12).drawString(str,px,y+50);
|
|
||||||
str = "Event: " + type;
|
|
||||||
if (type == "HRM") str += " Source: " + (event.src ? event.src : "internal");
|
|
||||||
g.setFontVector(12).drawString(str,px,y+60);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function draw(y, type, event) {
|
||||||
|
clear(y);
|
||||||
|
var px = g.getWidth()/2;
|
||||||
|
var str = event.bpm + "";
|
||||||
|
g.reset();
|
||||||
|
g.setFontAlign(0,0);
|
||||||
|
g.setFontVector(40).drawString(str,px,y+20);
|
||||||
|
str = "Event: " + type;
|
||||||
|
if (type == "HRM") {
|
||||||
|
str += " Confidence: " + event.confidence;
|
||||||
|
g.setFontVector(12).drawString(str,px,y+40);
|
||||||
|
str = " Source: " + (event.src ? event.src : "internal");
|
||||||
|
g.setFontVector(12).drawString(str,px,y+50);
|
||||||
|
}
|
||||||
|
if (type == "BTHRM"){
|
||||||
|
if (event.battery) str += " Bat: " + (event.battery ? event.battery : "");
|
||||||
|
g.setFontVector(12).drawString(str,px,y+40);
|
||||||
|
str= "";
|
||||||
|
if (event.location) str += "Loc: " + event.location.toFixed(0) + "ms";
|
||||||
|
if (event.rr && event.rr.length > 0) str += " RR: " + event.rr.join(",");
|
||||||
|
g.setFontVector(12).drawString(str,px,y+50);
|
||||||
|
str= "";
|
||||||
|
if (event.contact) str += " Contact: " + event.contact;
|
||||||
|
if (event.energy) str += " kJoule: " + event.energy.toFixed(0);
|
||||||
|
g.setFontVector(12).drawString(str,px,y+60);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
var firstEventBt = true;
|
||||||
|
var firstEventInt = true;
|
||||||
|
|
||||||
function onBtHrm(e) {
|
function onBtHrm(e) {
|
||||||
print("Event for BT " + JSON.stringify(e));
|
if (firstEventBt){
|
||||||
counterBt += 5;
|
clear(24);
|
||||||
eventBt = e;
|
firstEventBt = false;
|
||||||
|
}
|
||||||
|
draw(100, "BTHRM", e);
|
||||||
|
if (e.bpm == 0){
|
||||||
|
Bangle.buzz(100,0.2);
|
||||||
|
}
|
||||||
|
if (intervalBt){
|
||||||
|
clearInterval(intervalBt);
|
||||||
|
}
|
||||||
|
intervalBt = setInterval(()=>{
|
||||||
|
clear(100);
|
||||||
|
}, 2000);
|
||||||
}
|
}
|
||||||
|
|
||||||
function onHrm(e) {
|
function onHrm(e) {
|
||||||
print("Event for Int " + JSON.stringify(e));
|
if (firstEventInt){
|
||||||
counterInt += 5;
|
clear(24);
|
||||||
eventInt = e;
|
firstEventInt = false;
|
||||||
|
}
|
||||||
|
draw(24, "HRM", e);
|
||||||
|
if (intervalInt){
|
||||||
|
clearInterval(intervalInt);
|
||||||
|
}
|
||||||
|
intervalInt = setInterval(()=>{
|
||||||
|
clear(24);
|
||||||
|
}, 2000);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
var settings = require('Storage').readJSON("bthrm.json", true) || {};
|
||||||
|
|
||||||
Bangle.on('BTHRM', onBtHrm);
|
Bangle.on('BTHRM', onBtHrm);
|
||||||
Bangle.on('HRM', onHrm);
|
Bangle.on('HRM', onHrm);
|
||||||
|
|
||||||
Bangle.setHRMPower(1,'bthrm')
|
Bangle.setHRMPower(1,'bthrm');
|
||||||
|
if (!(settings.startWithHrm)){
|
||||||
|
Bangle.setBTHRMPower(1,'bthrm');
|
||||||
|
}
|
||||||
|
|
||||||
g.clear();
|
g.clear();
|
||||||
Bangle.loadWidgets();
|
Bangle.loadWidgets();
|
||||||
Bangle.drawWidgets();
|
Bangle.drawWidgets();
|
||||||
|
if (Bangle.setBTHRMPower){
|
||||||
g.reset().setFont("6x8",2).setFontAlign(0,0);
|
g.reset().setFont("6x8",2).setFontAlign(0,0);
|
||||||
g.drawString("Please wait...",g.getWidth()/2,g.getHeight()/2 - 16);
|
g.drawString("Please wait...",g.getWidth()/2,g.getHeight()/2 - 24);
|
||||||
|
} else {
|
||||||
function drawInt(){
|
g.reset().setFont("6x8",2).setFontAlign(0,0);
|
||||||
counterInt--;
|
g.drawString("BTHRM disabled",g.getWidth()/2,g.getHeight()/2 + 32);
|
||||||
if (counterInt < 0) counterInt = 0;
|
|
||||||
if (counterInt > 5) counterInt = 5;
|
|
||||||
draw(24, eventInt, "HRM", counterInt);
|
|
||||||
}
|
|
||||||
function drawBt(){
|
|
||||||
counterBt--;
|
|
||||||
if (counterBt < 0) counterBt = 0;
|
|
||||||
if (counterBt > 5) counterBt = 5;
|
|
||||||
draw(100, eventBt, "BTHRM", counterBt);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
var interval = setInterval(drawInt, 1000);
|
E.on('kill', ()=>Bangle.setBTHRMPower(0,'bthrm'));
|
||||||
var interval = setInterval(drawBt, 1000);
|
|
||||||
|
|
|
@ -0,0 +1,13 @@
|
||||||
|
{
|
||||||
|
"enabled": true,
|
||||||
|
"replace": true,
|
||||||
|
"debuglog": false,
|
||||||
|
"startWithHrm": true,
|
||||||
|
"allowFallback": true,
|
||||||
|
"warnDisconnect": false,
|
||||||
|
"fallbackTimeout": 10,
|
||||||
|
"gracePeriodNotification": 0,
|
||||||
|
"gracePeriodConnect": 0,
|
||||||
|
"gracePeriodService": 0,
|
||||||
|
"gracePeriodRequest": 0
|
||||||
|
}
|
|
@ -2,7 +2,7 @@
|
||||||
"id": "bthrm",
|
"id": "bthrm",
|
||||||
"name": "Bluetooth Heart Rate Monitor",
|
"name": "Bluetooth Heart Rate Monitor",
|
||||||
"shortName": "BT HRM",
|
"shortName": "BT HRM",
|
||||||
"version": "0.03",
|
"version": "0.06",
|
||||||
"description": "Overrides Bangle.js's build in heart rate monitor with an external Bluetooth one.",
|
"description": "Overrides Bangle.js's build in heart rate monitor with an external Bluetooth one.",
|
||||||
"icon": "app.png",
|
"icon": "app.png",
|
||||||
"type": "app",
|
"type": "app",
|
||||||
|
@ -14,6 +14,7 @@
|
||||||
{"name":"bthrm.recorder.js","url":"recorder.js"},
|
{"name":"bthrm.recorder.js","url":"recorder.js"},
|
||||||
{"name":"bthrm.boot.js","url":"boot.js"},
|
{"name":"bthrm.boot.js","url":"boot.js"},
|
||||||
{"name":"bthrm.img","url":"app-icon.js","evaluate":true},
|
{"name":"bthrm.img","url":"app-icon.js","evaluate":true},
|
||||||
{"name":"bthrm.settings.js","url":"settings.js"}
|
{"name":"bthrm.settings.js","url":"settings.js"},
|
||||||
|
{"name":"bthrm.default.json","url":"default.json"}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,26 +1,38 @@
|
||||||
(function(recorders) {
|
(function(recorders) {
|
||||||
recorders.bthrm = function() {
|
recorders.bthrm = function() {
|
||||||
var bpm = "";
|
var bpm = "";
|
||||||
|
var bat = "";
|
||||||
|
var energy = "";
|
||||||
|
var contact = "";
|
||||||
|
var rr= "";
|
||||||
function onHRM(h) {
|
function onHRM(h) {
|
||||||
bpm = h.bpm;
|
bpm = h.bpm;
|
||||||
|
bat = h.bat;
|
||||||
|
energy = h.energy;
|
||||||
|
contact = h.contact;
|
||||||
|
if (h.rr) rr = h.rr.join(";");
|
||||||
}
|
}
|
||||||
return {
|
return {
|
||||||
name : "BTHR",
|
name : "BT HR",
|
||||||
fields : ["BT Heartrate"],
|
fields : ["BT Heartrate", "BT Battery", "Energy expended", "Contact", "RR"],
|
||||||
getValues : () => {
|
getValues : () => {
|
||||||
result = [bpm];
|
result = [bpm,bat,energy,contact,rr];
|
||||||
bpm = "";
|
bpm = "";
|
||||||
|
rr = "";
|
||||||
|
bat = "";
|
||||||
|
energy = "";
|
||||||
|
contact = "";
|
||||||
return result;
|
return result;
|
||||||
},
|
},
|
||||||
start : () => {
|
start : () => {
|
||||||
Bangle.on('BTHRM', onHRM);
|
Bangle.on('BTHRM', onHRM);
|
||||||
Bangle.setBTHRMPower(1,"recorder");
|
if (Bangle.setBTRHMPower) Bangle.setBTHRMPower(1,"recorder");
|
||||||
},
|
},
|
||||||
stop : () => {
|
stop : () => {
|
||||||
Bangle.removeListener('BTHRM', onHRM);
|
Bangle.removeListener('BTHRM', onHRM);
|
||||||
Bangle.setBTHRMPower(0,"recorder");
|
if (Bangle.setBTRHMPower) Bangle.setBTHRMPower(0,"recorder");
|
||||||
},
|
},
|
||||||
draw : (x,y) => g.setColor(Bangle.isBTHRMOn()?"#00f":"#88f").drawImage(atob("DAwBAAAAMMeef+f+f+P8H4DwBgAA"),x,y)
|
draw : (x,y) => g.setColor((Bangle.isBTHRMConnected && Bangle.isBTHRMConnected())?"#00f":"#88f").drawImage(atob("DAwBAAAAMMeef+f+f+P8H4DwBgAA"),x,y)
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
|
@ -1,33 +1,247 @@
|
||||||
(function(back) {
|
(function(back) {
|
||||||
var FILE = "bthrm.json";
|
function writeSettings(key, value) {
|
||||||
|
var s = require('Storage').readJSON(FILE, true) || {};
|
||||||
var settings = Object.assign({
|
s[key] = value;
|
||||||
enabled: true,
|
require('Storage').writeJSON(FILE, s);
|
||||||
replace: true,
|
readSettings();
|
||||||
}, require('Storage').readJSON(FILE, true) || {});
|
|
||||||
|
|
||||||
function writeSettings() {
|
|
||||||
require('Storage').writeJSON(FILE, settings);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
E.showMenu({
|
function readSettings(){
|
||||||
|
settings = Object.assign(
|
||||||
|
require('Storage').readJSON("bthrm.default.json", true) || {},
|
||||||
|
require('Storage').readJSON(FILE, true) || {}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
var FILE="bthrm.json";
|
||||||
|
var settings;
|
||||||
|
readSettings();
|
||||||
|
|
||||||
|
var mainmenu = {
|
||||||
'': { 'title': 'Bluetooth HRM' },
|
'': { 'title': 'Bluetooth HRM' },
|
||||||
'< Back': back,
|
'< Back': back,
|
||||||
'Use BT HRM': {
|
'Use BT HRM': {
|
||||||
value: !!settings.enabled,
|
value: !!settings.enabled,
|
||||||
format: v => settings.enabled ? "On" : "Off",
|
format: v => settings.enabled ? "On" : "Off",
|
||||||
onchange: v => {
|
onchange: v => {
|
||||||
settings.enabled = v;
|
writeSettings("enabled",v);
|
||||||
writeSettings();
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
'Use HRM event': {
|
'Replace HRM': {
|
||||||
value: !!settings.replace,
|
value: !!settings.replace,
|
||||||
format: v => settings.replace ? "On" : "Off",
|
format: v => settings.replace ? "On" : "Off",
|
||||||
onchange: v => {
|
onchange: v => {
|
||||||
settings.replace = v;
|
writeSettings("replace",v);
|
||||||
writeSettings();
|
}
|
||||||
|
},
|
||||||
|
'Start with HRM': {
|
||||||
|
value: !!settings.startWithHrm,
|
||||||
|
format: v => settings.startWithHrm ? "On" : "Off",
|
||||||
|
onchange: v => {(function(back) {
|
||||||
|
function writeSettings(key, value) {
|
||||||
|
var s = require('Storage').readJSON(FILE, true) || {};
|
||||||
|
s[key] = value;
|
||||||
|
require('Storage').writeJSON(FILE, s);
|
||||||
|
readSettings();
|
||||||
|
}
|
||||||
|
|
||||||
|
function readSettings(){
|
||||||
|
settings = Object.assign(
|
||||||
|
require('Storage').readJSON("bthrm.default.json", true) || {},
|
||||||
|
require('Storage').readJSON(FILE, true) || {}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
var FILE="bthrm.json";
|
||||||
|
var settings;
|
||||||
|
readSettings();
|
||||||
|
|
||||||
|
var mainmenu = {
|
||||||
|
'': { 'title': 'Bluetooth HRM' },
|
||||||
|
'< Back': back,
|
||||||
|
'Use BT HRM': {
|
||||||
|
value: !!settings.enabled,
|
||||||
|
format: v => settings.enabled ? "On" : "Off",
|
||||||
|
onchange: v => {
|
||||||
|
writeSettings("enabled",v);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
'Replace HRM': {
|
||||||
|
value: !!settings.replace,
|
||||||
|
format: v => settings.replace ? "On" : "Off",
|
||||||
|
onchange: v => {
|
||||||
|
writeSettings("replace",v);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
'Start w. HRM': {
|
||||||
|
value: !!settings.startWithHrm,
|
||||||
|
format: v => settings.startWithHrm ? "On" : "Off",
|
||||||
|
onchange: v => {
|
||||||
|
writeSettings("startWithHrm",v);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
'HRM Fallback': {
|
||||||
|
value: !!settings.allowFallback,
|
||||||
|
format: v => settings.allowFallback ? "On" : "Off",
|
||||||
|
onchange: v => {
|
||||||
|
writeSettings("allowFallback",v);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
'Fallback Timeout': {
|
||||||
|
value: settings.fallbackTimeout,
|
||||||
|
min: 5,
|
||||||
|
max: 60,
|
||||||
|
step: 5,
|
||||||
|
format: v=>v+"s",
|
||||||
|
onchange: v => {
|
||||||
|
writeSettings("fallbackTimout",v*1000);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
'Conn. Alert': {
|
||||||
|
value: !!settings.warnDisconnect,
|
||||||
|
format: v => settings.warnDisconnect ? "On" : "Off",
|
||||||
|
onchange: v => {
|
||||||
|
writeSettings("warnDisconnect",v);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
'Debug log': {
|
||||||
|
value: !!settings.debuglog,
|
||||||
|
format: v => settings.debuglog ? "On" : "Off",
|
||||||
|
onchange: v => {
|
||||||
|
writeSettings("debuglog",v);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
'Grace periods >': function() { E.showMenu(submenu); }
|
||||||
|
};
|
||||||
|
|
||||||
|
var submenu = {
|
||||||
|
'' : { title: "Grace periods"},
|
||||||
|
'< Back': function() { E.showMenu(mainmenu); },
|
||||||
|
'Request': {
|
||||||
|
value: settings.gracePeriodRequest,
|
||||||
|
min: 0,
|
||||||
|
max: 3000,
|
||||||
|
step: 100,
|
||||||
|
format: v=>v+"ms",
|
||||||
|
onchange: v => {
|
||||||
|
writeSettings("gracePeriodRequest",v);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
'Connect': {
|
||||||
|
value: settings.gracePeriodConnect,
|
||||||
|
min: 0,
|
||||||
|
max: 3000,
|
||||||
|
step: 100,
|
||||||
|
format: v=>v+"ms",
|
||||||
|
onchange: v => {
|
||||||
|
writeSettings("gracePeriodConnect",v);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
'Notification': {
|
||||||
|
value: settings.gracePeriodNotification,
|
||||||
|
min: 0,
|
||||||
|
max: 3000,
|
||||||
|
step: 100,
|
||||||
|
format: v=>v+"ms",
|
||||||
|
onchange: v => {
|
||||||
|
writeSettings("gracePeriodNotification",v);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
'Service': {
|
||||||
|
value: settings.gracePeriodService,
|
||||||
|
min: 0,
|
||||||
|
max: 3000,
|
||||||
|
step: 100,
|
||||||
|
format: v=>v+"ms",
|
||||||
|
onchange: v => {
|
||||||
|
writeSettings("gracePeriodService",v);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
};
|
||||||
|
|
||||||
|
E.showMenu(mainmenu);
|
||||||
|
})
|
||||||
|
writeSettings("startWithHrm",v);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
'Fallback to HRM': {
|
||||||
|
value: !!settings.allowFallback,
|
||||||
|
format: v => settings.allowFallback ? "On" : "Off",
|
||||||
|
onchange: v => {
|
||||||
|
writeSettings("allowFallback",v);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
'Fallback Timeout': {
|
||||||
|
value: settings.fallbackTimeout,
|
||||||
|
min: 5,
|
||||||
|
max: 60,
|
||||||
|
step: 5,
|
||||||
|
format: v=>v+"s",
|
||||||
|
onchange: v => {
|
||||||
|
writeSettings("fallbackTimout",v*1000);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
'Conn. Alert': {
|
||||||
|
value: !!settings.warnDisconnect,
|
||||||
|
format: v => settings.warnDisconnect ? "On" : "Off",
|
||||||
|
onchange: v => {
|
||||||
|
writeSettings("warnDisconnect",v);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
'Debug log': {
|
||||||
|
value: !!settings.debuglog,
|
||||||
|
format: v => settings.debuglog ? "On" : "Off",
|
||||||
|
onchange: v => {
|
||||||
|
writeSettings("debuglog",v);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
'Grace periods': function() { E.showMenu(submenu); }
|
||||||
|
};
|
||||||
|
|
||||||
|
var submenu = {
|
||||||
|
'' : { title: "Grace periods"},
|
||||||
|
'< Back': function() { E.showMenu(mainmenu); },
|
||||||
|
'Request': {
|
||||||
|
value: settings.gracePeriodRequest,
|
||||||
|
min: 0,
|
||||||
|
max: 3000,
|
||||||
|
step: 100,
|
||||||
|
format: v=>v+"ms",
|
||||||
|
onchange: v => {
|
||||||
|
writeSettings("gracePeriodRequest",v);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
'Connect': {
|
||||||
|
value: settings.gracePeriodConnect,
|
||||||
|
min: 0,
|
||||||
|
max: 3000,
|
||||||
|
step: 100,
|
||||||
|
format: v=>v+"ms",
|
||||||
|
onchange: v => {
|
||||||
|
writeSettings("gracePeriodConnect",v);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
'Notification': {
|
||||||
|
value: settings.gracePeriodNotification,
|
||||||
|
min: 0,
|
||||||
|
max: 3000,
|
||||||
|
step: 100,
|
||||||
|
format: v=>v+"ms",
|
||||||
|
onchange: v => {
|
||||||
|
writeSettings("gracePeriodNotification",v);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
'Service': {
|
||||||
|
value: settings.gracePeriodService,
|
||||||
|
min: 0,
|
||||||
|
max: 3000,
|
||||||
|
step: 100,
|
||||||
|
format: v=>v+"ms",
|
||||||
|
onchange: v => {
|
||||||
|
writeSettings("gracePeriodService",v);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
E.showMenu(mainmenu);
|
||||||
})
|
})
|
||||||
|
|
|
@ -0,0 +1,11 @@
|
||||||
|
0.01: New App!
|
||||||
|
0.02: Make overriding the HRM event optional
|
||||||
|
Emit BTHRM event for external sensor
|
||||||
|
Add recorder app plugin
|
||||||
|
0.03: Prevent readings from internal sensor mixing into BT values
|
||||||
|
Mark events with src property
|
||||||
|
Show actual source of event in app
|
||||||
|
0.04: Allow reading additional data if available: HRM battery and position
|
||||||
|
Better caching of scanned BT device properties
|
||||||
|
New setting for not starting the BTHRM together with HRM
|
||||||
|
Save some RAM by not definining functions if disabled in settings
|
|
@ -0,0 +1,11 @@
|
||||||
|
# Bluetooth Heart Rate Variance
|
||||||
|
|
||||||
|
This app uses [BTHRM](https://banglejs.com/apps/#bthrm) and can calculate the HRV if the used bluetooth heart rate monitor delivers interval data.
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
|
||||||
|
Just install and start the app. Select button resets the already measured values.
|
||||||
|
|
||||||
|
## Creator
|
||||||
|
|
||||||
|
[halemmerich](https://github.com/halemmerich)
|
|
@ -0,0 +1 @@
|
||||||
|
require("heatshrink").decompress(atob("mEwwJC/ABUMAokcAq0eAok+Aok2AgcCm0EAoUHmw2DAoMOAgMDh9jEgPAg/98cfn/gg/58cbv/ggcB8cz8HADIPjmIECgHB8OAAoVB8AFDgPgIQcBCwYFMAH4ARA"))
|
|
@ -0,0 +1,143 @@
|
||||||
|
var btm = g.getHeight()-1;
|
||||||
|
var ui = false;
|
||||||
|
|
||||||
|
function clear(y){
|
||||||
|
g.reset();
|
||||||
|
g.clearRect(0,y,g.getWidth(),g.getHeight());
|
||||||
|
}
|
||||||
|
|
||||||
|
var startingTime;
|
||||||
|
var currentSlot = 0;
|
||||||
|
var hrvSlots = [10,20,30,60,120,300];
|
||||||
|
var hrvValues = {};
|
||||||
|
var rrRmsProgress;
|
||||||
|
var saved = false;
|
||||||
|
|
||||||
|
var rrNumberOfValues = 0;
|
||||||
|
var rrSquared = 0;
|
||||||
|
var rrLastValue
|
||||||
|
var rrMax;
|
||||||
|
var rrMin;
|
||||||
|
|
||||||
|
function calcHrv(rr){
|
||||||
|
//Calculate HRV with RMSSD method: https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5624990/
|
||||||
|
for (currentRr of rr){
|
||||||
|
if (!rrMax) rrMax = currentRr;
|
||||||
|
if (!rrMin) rrMin = currentRr;
|
||||||
|
rrMax = Math.max(rrMax, currentRr);
|
||||||
|
rrMin = Math.min(rrMin, currentRr);
|
||||||
|
//print("Calc for: " + currentRr);
|
||||||
|
rrNumberOfValues++;
|
||||||
|
if (!rrLastValue){
|
||||||
|
rrLastValue = currentRr;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
rrSquared += (rrLastValue - currentRr)*(rrLastValue - currentRr);
|
||||||
|
|
||||||
|
//print("rr²: " + rrSquared);
|
||||||
|
rrLastValue = currentRr;
|
||||||
|
}
|
||||||
|
var rms = Math.sqrt(rrSquared / rrNumberOfValues);
|
||||||
|
//print("rms: " + rms);
|
||||||
|
return rms;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function draw(y, hrv) {
|
||||||
|
clear(y);
|
||||||
|
var px = g.getWidth()/2;
|
||||||
|
var str = hrv.toFixed(1) + "ms";
|
||||||
|
g.reset();
|
||||||
|
g.setFontAlign(0,0);
|
||||||
|
g.setFontVector(40).drawString(str,px,y+20);
|
||||||
|
|
||||||
|
for (var i = 0; i < hrvSlots.length; i++){
|
||||||
|
str = hrvSlots[i] + "s: ";
|
||||||
|
if (hrvValues[hrvSlots[i]]) str += hrvValues[hrvSlots[i]].toFixed(1) + "ms";
|
||||||
|
g.setFontVector(16).drawString(str,px,y+44+(i*17));
|
||||||
|
}
|
||||||
|
|
||||||
|
g.setRotation(3);
|
||||||
|
g.setFontVector(12).drawString("Reset",g.getHeight()/2, g.getWidth()-10);
|
||||||
|
g.setRotation(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
function onBtHrm(e) {
|
||||||
|
if (e.rr && !startingTime) Bangle.buzz(500);
|
||||||
|
if (e.rr && !startingTime) startingTime=Date.now();
|
||||||
|
//print("Event:" + e.rr);
|
||||||
|
|
||||||
|
var hrv = calcHrv(e.rr);
|
||||||
|
if (hrv){
|
||||||
|
if (currentSlot <= hrvSlots.length && (Date.now() - startingTime) > (hrvSlots[currentSlot] * 1000) && !hrvValues[hrvSlots[currentSlot]]){
|
||||||
|
hrvValues[hrvSlots[currentSlot]] = hrv;
|
||||||
|
currentSlot++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (!saved && currentSlot == hrvSlots.length){
|
||||||
|
var file = require('Storage').open("bthrv.csv", "a");
|
||||||
|
var data = new Date(startingTime).toISOString();
|
||||||
|
for (var c of hrvSlots){
|
||||||
|
data+=","+hrvValues[c];
|
||||||
|
}
|
||||||
|
data+="," + rrMax + "," + rrMin + ","+rrNumberOfValues;
|
||||||
|
data+="\n";
|
||||||
|
file.write(data);
|
||||||
|
saved = true;
|
||||||
|
Bangle.buzz(500);
|
||||||
|
}
|
||||||
|
if (hrv){
|
||||||
|
if (!ui){
|
||||||
|
Bangle.setUI("leftright", ()=>{
|
||||||
|
resetHrv();
|
||||||
|
clear(30);
|
||||||
|
});
|
||||||
|
ui = true;
|
||||||
|
}
|
||||||
|
draw(30, hrv);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function resetHrv(){
|
||||||
|
hrvValues={};
|
||||||
|
startingTime=undefined;
|
||||||
|
currentSlot=0;
|
||||||
|
saved=false;
|
||||||
|
rrNumberOfValues = 0;
|
||||||
|
rrSquared = 0;
|
||||||
|
rrLastValue = undefined;
|
||||||
|
rrMax = undefined;
|
||||||
|
rrMin = undefined;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
var settings = require('Storage').readJSON("bthrm.json", true) || {};
|
||||||
|
|
||||||
|
g.clear();
|
||||||
|
Bangle.loadWidgets();
|
||||||
|
Bangle.drawWidgets();
|
||||||
|
|
||||||
|
|
||||||
|
if (Bangle.setBTHRMPower){
|
||||||
|
Bangle.on('BTHRM', onBtHrm);
|
||||||
|
Bangle.setBTHRMPower(1,'bthrv');
|
||||||
|
|
||||||
|
if (require('Storage').list(/bthrv.csv/).length == 0){
|
||||||
|
var file = require('Storage').open("bthrv.csv", "a");
|
||||||
|
var data = "Time";
|
||||||
|
for (var c of hrvSlots){
|
||||||
|
data+="," + c + "s";
|
||||||
|
}
|
||||||
|
data+=",RR_max,RR_min,Measurements";
|
||||||
|
data+="\n";
|
||||||
|
file.write(data);
|
||||||
|
}
|
||||||
|
|
||||||
|
g.reset().setFont("6x8",2).setFontAlign(0,0);
|
||||||
|
g.drawString("Please wait...",g.getWidth()/2,g.getHeight()/2 - 16);
|
||||||
|
} else {
|
||||||
|
g.reset().setFont("6x8",2).setFontAlign(0,0);
|
||||||
|
g.drawString("Missing BT HRM",g.getWidth()/2,g.getHeight()/2 - 16);
|
||||||
|
}
|
||||||
|
|
||||||
|
E.on('kill', ()=>Bangle.setBTHRMPower(0,'bthrv'));
|
After Width: | Height: | Size: 670 B |
|
@ -0,0 +1,17 @@
|
||||||
|
{
|
||||||
|
"id": "bthrv",
|
||||||
|
"name": "Bluetooth Heart Rate variance calculator",
|
||||||
|
"shortName": "BT HRV",
|
||||||
|
"version": "0.01",
|
||||||
|
"description": "Calculates HRV from a a BT HRM with interval data",
|
||||||
|
"icon": "app.png",
|
||||||
|
"type": "app",
|
||||||
|
"tags": "health,bluetooth",
|
||||||
|
"supports": ["BANGLEJS","BANGLEJS2"],
|
||||||
|
"readme": "README.md",
|
||||||
|
"storage": [
|
||||||
|
{"name":"bthrv.app.js","url":"app.js"},
|
||||||
|
{"name":"bthrv.recorder.js","url":"recorder.js"},
|
||||||
|
{"name":"bthrv.img","url":"app-icon.js","evaluate":true}
|
||||||
|
]
|
||||||
|
}
|
|
@ -0,0 +1,51 @@
|
||||||
|
(function(recorders) {
|
||||||
|
recorders.bthrv = function() {
|
||||||
|
var lastGetValue = 0;
|
||||||
|
var lastUpdate = 0;
|
||||||
|
var rrHistory = [];
|
||||||
|
var hrv = "";
|
||||||
|
function onHRM(h) {
|
||||||
|
if(!h.rr) return;
|
||||||
|
if (lastUpdate + 3000 < Date.now()){
|
||||||
|
rrHistory = [];
|
||||||
|
}
|
||||||
|
rrHistory = rrHistory.concat(h.rr);
|
||||||
|
lastUpdate=Date.now();
|
||||||
|
}
|
||||||
|
return {
|
||||||
|
name : "BT HRV",
|
||||||
|
fields : ["BT HRV"],
|
||||||
|
getValues : () => {
|
||||||
|
if (lastGetValue + 10000 < Date.now()){
|
||||||
|
lastGetValue = Date.now();
|
||||||
|
|
||||||
|
if (rrHistory.length > 0){
|
||||||
|
if (rrHistory.length > 1){
|
||||||
|
var squaredSum = 0;
|
||||||
|
var last = rrHistory[0]
|
||||||
|
for (var i = 1; i < rrHistory.length; i++){
|
||||||
|
squaredSum += (last - rrHistory[i])*(last - rrHistory[i]);
|
||||||
|
last = rrHistory[i];
|
||||||
|
}
|
||||||
|
hrv = Math.sqrt(squaredSum/rrHistory.length);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
result = [hrv];
|
||||||
|
hrv = "";
|
||||||
|
rrHistory = [];
|
||||||
|
return result;
|
||||||
|
},
|
||||||
|
start : () => {
|
||||||
|
Bangle.on('BTHRM', onHRM);
|
||||||
|
if (Bangle.setBTRHMPower) Bangle.setBTHRMPower(1,"recorder");
|
||||||
|
},
|
||||||
|
stop : () => {
|
||||||
|
Bangle.removeListener('BTHRM', onHRM);
|
||||||
|
if (Bangle.setBTRHMPower) Bangle.setBTHRMPower(0,"recorder");
|
||||||
|
},
|
||||||
|
draw : (x,y) => g.setColor((rrHistory.length > 0)?"#00f":"#008").drawImage(atob("DAwBAAAACECECECEDGClacEEAAAA"),x,y)
|
||||||
|
};
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
After Width: | Height: | Size: 3.9 KiB |
|
@ -11,3 +11,11 @@
|
||||||
Support to choose between humidity and wind speed for weather circle progress
|
Support to choose between humidity and wind speed for weather circle progress
|
||||||
Support to show time and progress until next sunrise or sunset
|
Support to show time and progress until next sunrise or sunset
|
||||||
Load daily steps from Bangle health if available
|
Load daily steps from Bangle health if available
|
||||||
|
0.07: Allow configuration of minimal heart rate confidence
|
||||||
|
0.08: Allow configuration of up to 4 circles in a row
|
||||||
|
0.09: Support to show temperature, air pressure or altitude from internal pressure sensor
|
||||||
|
Fix sunprogress calculation during night
|
||||||
|
Refactor settings menu
|
||||||
|
Colors of circles can be configured
|
||||||
|
Color depending on value (green -> red, red -> green) option
|
||||||
|
Good HRM value will not be overwritten so fast anymore
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
# Circles clock
|
# Circles clock
|
||||||
|
|
||||||
A clock with circles for different data at the bottom in a probably familiar style
|
A clock with three or four circles for different data at the bottom in a probably familiar style
|
||||||
|
|
||||||
By default the time, date and day of week is shown.
|
By default the time, date and day of week is shown.
|
||||||
|
|
||||||
|
@ -14,10 +14,22 @@ It can show the following information (this can be configured):
|
||||||
* Temperature inside circle
|
* Temperature inside circle
|
||||||
* Condition as icon below circle
|
* Condition as icon below circle
|
||||||
* Time and progress until next sunrise or sunset (requires [my location app](https://banglejs.com/apps/#mylocation))
|
* Time and progress until next sunrise or sunset (requires [my location app](https://banglejs.com/apps/#mylocation))
|
||||||
|
* Temperature, air pressure or altitude from internal pressure sensor
|
||||||
|
|
||||||
|
|
||||||
|
The color of each circle can be configured. The following colors are available:
|
||||||
|
* Basic colors (red, green, blue, yellow, magenta, cyan, black, white)
|
||||||
|
* Color depending on value (green -> red, red -> green)
|
||||||
|
|
||||||
|
|
||||||
## Screenshots
|
## Screenshots
|
||||||

|

|
||||||

|

|
||||||
|

|
||||||
|

|
||||||
|
|
||||||
|
## Ideas
|
||||||
|
* Show compass heading
|
||||||
|
|
||||||
## Creator
|
## Creator
|
||||||
Marco ([myxor](https://github.com/myxor))
|
Marco ([myxor](https://github.com/myxor))
|
||||||
|
|
|
@ -1,52 +1,46 @@
|
||||||
const locale = require("locale");
|
const locale = require("locale");
|
||||||
const heatshrink = require("heatshrink");
|
|
||||||
const storage = require("Storage");
|
const storage = require("Storage");
|
||||||
const SunCalc = require("https://raw.githubusercontent.com/mourner/suncalc/master/suncalc.js");
|
const SunCalc = require("https://raw.githubusercontent.com/mourner/suncalc/master/suncalc.js");
|
||||||
|
|
||||||
const shoesIcon = heatshrink.decompress(atob("h0OwYJGgmAAgUBkgECgVJB4cSoAUDyEBkARDpADBhMAyQRBgVAkgmDhIUDAAuQAgY1DAAYA="));
|
const shoesIcon = atob("EBCBAAAACAAcAB4AHgAeABwwADgGeAZ4AHgAMAAAAHAAIAAA");
|
||||||
const shoesIconGreen = heatshrink.decompress(atob("h0OwYJGhIEDgVIAgUEyQKDkmACgcggVACIeQAYMSgIRCgmApIbDiQUDAAkBkAFDGoYAD"));
|
const heartIcon = atob("EBCBAAAAAAAeeD/8P/x//n/+P/w//B/4D/AH4APAAYAAAAAA");
|
||||||
const heartIcon = heatshrink.decompress(atob("h0OwYOLkmQhMkgACByVJgESpIFBpEEBAIFBCgIFCCgsABwcAgQOCAAMSpAwDyBNM"));
|
const powerIcon = atob("EBCBAAAAA8ADwA/wD/AP8A/wD/AP8A/wD/AP8A/wD/AH4AAA");
|
||||||
const powerIcon = heatshrink.decompress(atob("h0OwYQNsAED7AEDmwEDtu2AgUbtuABwXbBIUN23AAoYOCgEDFIgODABI"));
|
const temperatureIcon = atob("EBCBAAAAAYADwAJAAkADwAPAA8ADwAfgB+AH4AfgA8ABgAAA");
|
||||||
const powerIconGreen = heatshrink.decompress(atob("h0OwYQNkAEDpAEDiQEDkmSAgUJkmABwVJBIUEyVAAoYOCgEBFIgODABI"));
|
|
||||||
const powerIconRed = heatshrink.decompress(atob("h0OwYQNoAEDyAEDkgEDpIFDiVJBweSAgUJkmAAoYZDgQpEBwYAJA"));
|
|
||||||
|
|
||||||
const weatherCloudy = heatshrink.decompress(atob("iEQwYWTgP//+AAoMPAoPwAoN/AocfAgP//0AAgQAB/AFEABgdDAAMDDohMRA"));
|
const weatherCloudy = atob("EBCBAAAAAAAAAAfgD/Af8H/4//7///////9//z/+AAAAAAAA");
|
||||||
const weatherSunny = heatshrink.decompress(atob("iEQwYLIg3AAgVgAQMMAo8Am3YAgUB23bAoUNAoIUBjYFCsOwBYoFDDpFgHYI1JI4gFGAAYA="));
|
const weatherSunny = atob("EBCBAAAAAYAQCBAIA8AH4A/wb/YP8A/gB+ARiBAIAYABgAAA");
|
||||||
const weatherMoon = heatshrink.decompress(atob("iEQwIFCgOAh/wj/4n/8AId//wBBBIoRBCoIZBDoI"));
|
const weatherMoon = atob("EBCBAAAAAYAP8B/4P/w//D/8f/5//j/8P/w//B/4D/ABgAAA");
|
||||||
const weatherPartlyCloudy = heatshrink.decompress(atob("iEQwYQNv0AjgGDn4EDh///gFChwREC4MfxwIBv0//+AC4X4j4FCv/AgfwgED/wIBuAaBBwgFDgP4gf/AAXABwIEBDQQAEA=="));
|
const weatherPartlyCloudy = atob("EBCBAAAAAAAYQAMAD8AIQBhoW+AOYBwwOBBgHGAGP/wf+AAA");
|
||||||
const weatherRainy = heatshrink.decompress(atob("iEQwYLIg/gAgUB///wAFBh/AgfwgED/wIBuEAj4OCv0AjgaCh/4AocAnAFBFIU4EAM//gRBEAIOBhw1C/AmDAosAC4JNIAAg"));
|
const weatherRainy = atob("EBCBAAAAAYAH4AwwOBBgGEAOQAJBgjPOEkgGYAZgA8ABgAAA");
|
||||||
const weatherPartlyRainy = heatshrink.decompress(atob("h0OwYJGjkAnAFCj+AAgU//4FCuEA8EAg8ch/4gEB4////AAoIIBCIMD/wgCg4bBg/8BwMD+AgBh4ZBDQf/FIIABh4IBgAA=="));
|
const weatherPartlyRainy = atob("EBCBAAAAEEAQAAeADMAYaFvoTmAMMDgQIBxhhiGGG9wDwAGA");
|
||||||
const weatherSnowy = heatshrink.decompress(atob("iEQwYROn/8AocH8AECuAFBh0Agf+CIN/4EDx/4j/x4EAgIIBwAXBAogRFDoopFGoxBGABIA="));
|
const weatherSnowy = atob("EBCBAAAAAAADwAGAEYg73C50BCAEIC50O9wRiAGAA8AAAAAA");
|
||||||
const weatherFoggy = heatshrink.decompress(atob("iEQwYROn/8AgUB/EfwAFBh/AgfwgED/wIBuEABwd/4EcDQgFDgE4Fosf///8f//A/Lj/xCQIRNA="));
|
const weatherFoggy = atob("EBCBAAAAAAADwAZgDDA4EGAcQAZAAgAAf74AAAAAd/4AAAAA");
|
||||||
const weatherStormy = heatshrink.decompress(atob("iEQwYLIg/gAgUB///wAFBh/AgfwgED/wIBuEAj4OCv0AjgaCh/4AoX8gE4AoQpBnAdBF4IRBDQMH/kOHgY7DAo4AOA=="));
|
const weatherStormy = atob("EBCBAAAAAYAH4AwwOBBgGEAOQMJAgjmOGcgAgACAAAAAAAAA");
|
||||||
|
|
||||||
const sunSetDown = heatshrink.decompress(atob("iEQwIHEgOAAocT5EGtEEkF//wLDg1ggfACoo"));
|
const sunSetDown = atob("EBCBAAAAAAABgAAAAAATyAZoBCB//gAAAAAGYAPAAYAAAAAA");
|
||||||
const sunSetUp = heatshrink.decompress(atob("iEQwIHEgOAAocT5EGtEEkF//wRFgfAg1gBIY"));
|
const sunSetUp = atob("EBCBAAAAAAABgAAAAAATyAZoBCB//gAAAAABgAPABmAAAAAA");
|
||||||
|
|
||||||
let settings;
|
let settings = storage.readJSON("circlesclock.json", 1) || {
|
||||||
|
|
||||||
function loadSettings() {
|
|
||||||
settings = storage.readJSON("circlesclock.json", 1) || {
|
|
||||||
'minHR': 40,
|
'minHR': 40,
|
||||||
'maxHR': 200,
|
'maxHR': 200,
|
||||||
|
'confidence': 0,
|
||||||
'stepGoal': 10000,
|
'stepGoal': 10000,
|
||||||
'stepDistanceGoal': 8000,
|
'stepDistanceGoal': 8000,
|
||||||
'stepLength': 0.8,
|
'stepLength': 0.8,
|
||||||
'batteryWarn': 30,
|
'batteryWarn': 30,
|
||||||
'showWidgets': false,
|
'showWidgets': false,
|
||||||
'weatherCircleData': 'humidity',
|
'weatherCircleData': 'humidity',
|
||||||
|
'circleCount': 3,
|
||||||
'circle1': 'hr',
|
'circle1': 'hr',
|
||||||
'circle2': 'steps',
|
'circle2': 'steps',
|
||||||
'circle3': 'battery'
|
'circle3': 'battery',
|
||||||
};
|
'circle4': 'weather'
|
||||||
// Load step goal from pedometer widget as fallback
|
};
|
||||||
if (settings.stepGoal == undefined) {
|
// Load step goal from pedometer widget as fallback
|
||||||
const d = require('Storage').readJSON("wpedom.json", 1) || {};
|
if (settings.stepGoal == undefined) {
|
||||||
|
const d = storage.readJSON("wpedom.json", 1) || {};
|
||||||
settings.stepGoal = d != undefined && d.settings != undefined ? d.settings.goal : 10000;
|
settings.stepGoal = d != undefined && d.settings != undefined ? d.settings.goal : 10000;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
loadSettings();
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Read location from myLocation app
|
* Read location from myLocation app
|
||||||
|
@ -57,6 +51,7 @@ function getLocation() {
|
||||||
let location = getLocation();
|
let location = getLocation();
|
||||||
|
|
||||||
const showWidgets = settings.showWidgets || false;
|
const showWidgets = settings.showWidgets || false;
|
||||||
|
const circleCount = settings.circleCount || 3;
|
||||||
|
|
||||||
let hrtValue;
|
let hrtValue;
|
||||||
let now = Math.round(new Date().getTime() / 1000);
|
let now = Math.round(new Date().getTime() / 1000);
|
||||||
|
@ -71,21 +66,45 @@ const colorGreen = '#008000';
|
||||||
const colorBlue = '#0000ff';
|
const colorBlue = '#0000ff';
|
||||||
const colorYellow = '#ffff00';
|
const colorYellow = '#ffff00';
|
||||||
const widgetOffset = showWidgets ? 24 : 0;
|
const widgetOffset = showWidgets ? 24 : 0;
|
||||||
|
const dowOffset = circleCount == 3 ? 22 : 24; // dow offset relative to date
|
||||||
const h = g.getHeight() - widgetOffset;
|
const h = g.getHeight() - widgetOffset;
|
||||||
const w = g.getWidth();
|
const w = g.getWidth();
|
||||||
const hOffset = 30 - widgetOffset;
|
const hOffset = 30 - widgetOffset;
|
||||||
const h1 = Math.round(1 * h / 5 - hOffset);
|
const h1 = Math.round(1 * h / 5 - hOffset);
|
||||||
const h2 = Math.round(3 * h / 5 - hOffset);
|
const h2 = Math.round(3 * h / 5 - hOffset);
|
||||||
const h3 = Math.round(8 * h / 8 - hOffset - 3); // circle y position
|
const h3 = Math.round(8 * h / 8 - hOffset - 3); // circle y position
|
||||||
const circlePosX = [Math.round(w / 6), Math.round(3 * w / 6), Math.round(5 * w / 6)]; // cirle x positions
|
|
||||||
const radiusOuter = 25;
|
/*
|
||||||
const radiusInner = 20;
|
* circle x positions
|
||||||
const circleFont = "Vector:15";
|
* depending on circleCount
|
||||||
const circleFontBig = "Vector:16";
|
*
|
||||||
|
* | 1 2 3 4 5 6 |
|
||||||
|
* | (1) (2) (3) |
|
||||||
|
* => circles start at 1,3,5 / 6
|
||||||
|
*
|
||||||
|
* | 1 2 3 4 5 6 7 8 |
|
||||||
|
* | (1) (2) (3) (4) |
|
||||||
|
* => circles start at 1,3,5,7 / 8
|
||||||
|
*/
|
||||||
|
const parts = circleCount * 2;
|
||||||
|
const circlePosX = [
|
||||||
|
Math.round(1 * w / parts), // circle1
|
||||||
|
Math.round(3 * w / parts), // circle2
|
||||||
|
Math.round(5 * w / parts), // circle3
|
||||||
|
Math.round(7 * w / parts), // circle4
|
||||||
|
];
|
||||||
|
|
||||||
|
const radiusOuter = circleCount == 3 ? 25 : 20;
|
||||||
|
const radiusInner = circleCount == 3 ? 20 : 15;
|
||||||
|
const circleFontSmall = circleCount == 3 ? "Vector:14" : "Vector:10";
|
||||||
|
const circleFont = circleCount == 3 ? "Vector:15" : "Vector:11";
|
||||||
|
const circleFontBig = circleCount == 3 ? "Vector:16" : "Vector:12";
|
||||||
|
const iconOffset = circleCount == 3 ? 6 : 8;
|
||||||
|
const defaultCircleTypes = ["steps", "hr", "battery", "weather"];
|
||||||
|
|
||||||
|
|
||||||
function draw() {
|
function draw() {
|
||||||
g.clear(true);
|
g.clear(true);
|
||||||
|
|
||||||
if (!showWidgets) {
|
if (!showWidgets) {
|
||||||
/*
|
/*
|
||||||
* we are not drawing the widgets as we are taking over the whole screen
|
* we are not drawing the widgets as we are taking over the whole screen
|
||||||
|
@ -103,7 +122,7 @@ function draw() {
|
||||||
}
|
}
|
||||||
|
|
||||||
g.setColor(colorBg);
|
g.setColor(colorBg);
|
||||||
g.fillRect(0, widgetOffset, w, h);
|
g.fillRect(0, widgetOffset, w, h2 + 22);
|
||||||
|
|
||||||
// time
|
// time
|
||||||
g.setFont("Vector:50");
|
g.setFont("Vector:50");
|
||||||
|
@ -116,19 +135,19 @@ function draw() {
|
||||||
g.setFont("Vector:21");
|
g.setFont("Vector:21");
|
||||||
g.setFontAlign(-1, 0);
|
g.setFontAlign(-1, 0);
|
||||||
g.drawString(locale.date(new Date()), w > 180 ? 2 * w / 10 : w / 10, h2);
|
g.drawString(locale.date(new Date()), w > 180 ? 2 * w / 10 : w / 10, h2);
|
||||||
g.drawString(locale.dow(new Date()), w > 180 ? 2 * w / 10 : w / 10, h2 + 22);
|
g.drawString(locale.dow(new Date()), w > 180 ? 2 * w / 10 : w / 10, h2 + dowOffset);
|
||||||
|
|
||||||
drawCircle(1);
|
drawCircle(1);
|
||||||
drawCircle(2);
|
drawCircle(2);
|
||||||
drawCircle(3);
|
drawCircle(3);
|
||||||
|
if (circleCount >= 4) drawCircle(4);
|
||||||
}
|
}
|
||||||
|
|
||||||
const defaultCircleTypes = ["steps", "hr", "battery"];
|
|
||||||
|
|
||||||
function drawCircle(index) {
|
function drawCircle(index) {
|
||||||
let type = settings['circle' + index];
|
let type = settings['circle' + index];
|
||||||
if (!type) type = defaultCircleTypes[index - 1];
|
if (!type) type = defaultCircleTypes[index - 1];
|
||||||
const w = getCirclePosition(type);
|
const w = getCircleXPosition(type);
|
||||||
|
|
||||||
switch (type) {
|
switch (type) {
|
||||||
case "steps":
|
case "steps":
|
||||||
drawSteps(w);
|
drawSteps(w);
|
||||||
|
@ -146,8 +165,18 @@ function drawCircle(index) {
|
||||||
drawWeather(w);
|
drawWeather(w);
|
||||||
break;
|
break;
|
||||||
case "sunprogress":
|
case "sunprogress":
|
||||||
|
case "sunProgress":
|
||||||
drawSunProgress(w);
|
drawSunProgress(w);
|
||||||
break;
|
break;
|
||||||
|
case "temperature":
|
||||||
|
drawTemperature(w);
|
||||||
|
break;
|
||||||
|
case "pressure":
|
||||||
|
drawPressure(w);
|
||||||
|
break;
|
||||||
|
case "altitude":
|
||||||
|
drawAltitude(w);
|
||||||
|
break;
|
||||||
case "empty":
|
case "empty":
|
||||||
// we draw nothing here
|
// we draw nothing here
|
||||||
return;
|
return;
|
||||||
|
@ -166,133 +195,200 @@ let circlePositionsCache = [];
|
||||||
*/
|
*/
|
||||||
function getCirclePosition(type) {
|
function getCirclePosition(type) {
|
||||||
if (circlePositionsCache[type] >= 0) {
|
if (circlePositionsCache[type] >= 0) {
|
||||||
return circlePosX[circlePositionsCache[type]];
|
return circlePositionsCache[type];
|
||||||
}
|
}
|
||||||
for (let i = 1; i <= 3; i++) {
|
for (let i = 1; i <= circleCount; i++) {
|
||||||
const setting = settings['circle' + i];
|
const setting = settings['circle' + i];
|
||||||
if (setting == type) {
|
if (setting == type) {
|
||||||
circlePositionsCache[type] = i - 1;
|
circlePositionsCache[type] = i - 1;
|
||||||
return circlePosX[i - 1];
|
return i - 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
for (let i = 0; i < defaultCircleTypes.length; i++) {
|
for (let i = 0; i < defaultCircleTypes.length; i++) {
|
||||||
if (type == defaultCircleTypes[i] && (!settings || settings['circle' + (i + 1)] == undefined)) {
|
if (type == defaultCircleTypes[i] && (!settings || settings['circle' + (i + 1)] == undefined)) {
|
||||||
circlePositionsCache[type] = i;
|
circlePositionsCache[type] = i;
|
||||||
return circlePosX[i];
|
return i;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return undefined;
|
return undefined;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function getCircleXPosition(type) {
|
||||||
|
const circlePos = getCirclePosition(type);
|
||||||
|
if (circlePos != undefined) {
|
||||||
|
return circlePosX[circlePos];
|
||||||
|
}
|
||||||
|
return undefined;
|
||||||
|
}
|
||||||
|
|
||||||
function isCircleEnabled(type) {
|
function isCircleEnabled(type) {
|
||||||
return getCirclePosition(type) != undefined;
|
return getCirclePosition(type) != undefined;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function getCircleColor(type) {
|
||||||
|
const pos = getCirclePosition(type);
|
||||||
|
const color = settings["circle" + (pos + 1) + "color"];
|
||||||
|
if (color && color != "") return color;
|
||||||
|
}
|
||||||
|
|
||||||
|
function getCircleIconColor(type, color, percent) {
|
||||||
|
const pos = getCirclePosition(type);
|
||||||
|
const colorizeIcon = settings["circle" + (pos + 1) + "colorizeIcon"] == true;
|
||||||
|
if (colorizeIcon) {
|
||||||
|
return getGradientColor(color, percent);
|
||||||
|
} else {
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function getGradientColor(color, percent) {
|
||||||
|
if (isNaN(percent)) percent = 0;
|
||||||
|
if (percent > 1) percent = 1;
|
||||||
|
const colorList = [
|
||||||
|
'#00FF00', '#80FF00', '#FFFF00', '#FF8000', '#FF0000'
|
||||||
|
];
|
||||||
|
if (color == "green-red") {
|
||||||
|
const colorIndex = Math.round(colorList.length * percent);
|
||||||
|
return colorList[Math.min(colorIndex, colorList.length) - 1] || "#00ff00";
|
||||||
|
}
|
||||||
|
if (color == "red-green") {
|
||||||
|
const colorIndex = colorList.length - Math.round(colorList.length * percent);
|
||||||
|
return colorList[Math.min(colorIndex, colorList.length)] || "#ff0000";
|
||||||
|
}
|
||||||
|
return color;
|
||||||
|
}
|
||||||
|
|
||||||
|
function getImage(graphic, color) {
|
||||||
|
if (!color || color == "") {
|
||||||
|
return graphic;
|
||||||
|
} else {
|
||||||
|
return {
|
||||||
|
width: 16,
|
||||||
|
height: 16,
|
||||||
|
bpp: 1,
|
||||||
|
transparent: 0,
|
||||||
|
buffer: E.toArrayBuffer(graphic),
|
||||||
|
palette: new Uint16Array([colorBg, g.toColor(color)])
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function drawSteps(w) {
|
function drawSteps(w) {
|
||||||
if (!w) w = getCirclePosition("steps");
|
if (!w) w = getCircleXPosition("steps");
|
||||||
const steps = getSteps();
|
const steps = getSteps();
|
||||||
|
|
||||||
drawCircleBackground(w);
|
drawCircleBackground(w);
|
||||||
|
|
||||||
|
const color = getCircleColor("steps") || colorBlue;
|
||||||
|
|
||||||
|
let percent;
|
||||||
const stepGoal = settings.stepGoal || 10000;
|
const stepGoal = settings.stepGoal || 10000;
|
||||||
if (stepGoal > 0) {
|
if (stepGoal > 0) {
|
||||||
let percent = steps / stepGoal;
|
percent = steps / stepGoal;
|
||||||
if (stepGoal < steps) percent = 1;
|
if (stepGoal < steps) percent = 1;
|
||||||
drawGauge(w, h3, percent, colorBlue);
|
drawGauge(w, h3, percent, color);
|
||||||
}
|
}
|
||||||
|
|
||||||
drawInnerCircleAndTriangle(w);
|
drawInnerCircleAndTriangle(w);
|
||||||
|
|
||||||
writeCircleText(w, shortValue(steps));
|
writeCircleText(w, shortValue(steps));
|
||||||
|
|
||||||
g.drawImage(shoesIcon, w - 6, h3 + radiusOuter - 6);
|
g.drawImage(getImage(shoesIcon, getCircleIconColor("steps", color, percent)), w - iconOffset, h3 + radiusOuter - iconOffset);
|
||||||
}
|
}
|
||||||
|
|
||||||
function drawStepsDistance(w) {
|
function drawStepsDistance(w) {
|
||||||
if (!w) w = getCirclePosition("steps");
|
if (!w) w = getCircleXPosition("stepsDistance");
|
||||||
const steps = getSteps();
|
const steps = getSteps();
|
||||||
const stepDistance = settings.stepLength || 0.8;
|
const stepDistance = settings.stepLength || 0.8;
|
||||||
const stepsDistance = Math.round(steps * stepDistance);
|
const stepsDistance = Math.round(steps * stepDistance);
|
||||||
|
|
||||||
drawCircleBackground(w);
|
drawCircleBackground(w);
|
||||||
|
|
||||||
|
const color = getCircleColor("stepsDistance") || colorGreen;
|
||||||
|
|
||||||
|
let percent;
|
||||||
const stepDistanceGoal = settings.stepDistanceGoal || 8000;
|
const stepDistanceGoal = settings.stepDistanceGoal || 8000;
|
||||||
if (stepDistanceGoal > 0) {
|
if (stepDistanceGoal > 0) {
|
||||||
let percent = stepsDistance / stepDistanceGoal;
|
percent = stepsDistance / stepDistanceGoal;
|
||||||
if (stepDistanceGoal < stepsDistance) percent = 1;
|
if (stepDistanceGoal < stepsDistance) percent = 1;
|
||||||
drawGauge(w, h3, percent, colorGreen);
|
drawGauge(w, h3, percent, color);
|
||||||
}
|
}
|
||||||
|
|
||||||
drawInnerCircleAndTriangle(w);
|
drawInnerCircleAndTriangle(w);
|
||||||
|
|
||||||
writeCircleText(w, shortValue(stepsDistance));
|
writeCircleText(w, shortValue(stepsDistance));
|
||||||
|
|
||||||
g.drawImage(shoesIconGreen, w - 6, h3 + radiusOuter - 6);
|
g.drawImage(getImage(shoesIcon, getCircleIconColor("stepsDistance", color, percent)), w - iconOffset, h3 + radiusOuter - iconOffset);
|
||||||
}
|
}
|
||||||
|
|
||||||
function drawHeartRate(w) {
|
function drawHeartRate(w) {
|
||||||
if (!w) w = getCirclePosition("hr");
|
if (!w) w = getCircleXPosition("hr");
|
||||||
|
|
||||||
drawCircleBackground(w);
|
drawCircleBackground(w);
|
||||||
|
|
||||||
|
const color = getCircleColor("hr") || colorRed;
|
||||||
|
|
||||||
|
let percent;
|
||||||
if (hrtValue != undefined) {
|
if (hrtValue != undefined) {
|
||||||
const minHR = settings.minHR || 40;
|
const minHR = settings.minHR || 40;
|
||||||
const maxHR = settings.maxHR || 200;
|
const maxHR = settings.maxHR || 200;
|
||||||
const percent = (hrtValue - minHR) / (maxHR - minHR);
|
percent = (hrtValue - minHR) / (maxHR - minHR);
|
||||||
drawGauge(w, h3, percent, colorRed);
|
if (isNaN(percent)) percent = 0;
|
||||||
|
drawGauge(w, h3, percent, color);
|
||||||
}
|
}
|
||||||
|
|
||||||
drawInnerCircleAndTriangle(w);
|
drawInnerCircleAndTriangle(w);
|
||||||
|
|
||||||
writeCircleText(w, hrtValue != undefined ? hrtValue : "-");
|
writeCircleText(w, hrtValue != undefined ? hrtValue : "-");
|
||||||
|
|
||||||
g.drawImage(heartIcon, w - 6, h3 + radiusOuter - 6);
|
g.drawImage(getImage(heartIcon, getCircleIconColor("hr", color, percent)), w - iconOffset, h3 + radiusOuter - iconOffset);
|
||||||
}
|
}
|
||||||
|
|
||||||
function drawBattery(w) {
|
function drawBattery(w) {
|
||||||
if (!w) w = getCirclePosition("battery");
|
if (!w) w = getCircleXPosition("battery");
|
||||||
const battery = E.getBattery();
|
const battery = E.getBattery();
|
||||||
|
|
||||||
drawCircleBackground(w);
|
drawCircleBackground(w);
|
||||||
|
|
||||||
|
let color = getCircleColor("battery") || colorYellow;
|
||||||
|
|
||||||
|
let percent;
|
||||||
if (battery > 0) {
|
if (battery > 0) {
|
||||||
const percent = battery / 100;
|
percent = battery / 100;
|
||||||
drawGauge(w, h3, percent, colorYellow);
|
drawGauge(w, h3, percent, color);
|
||||||
}
|
}
|
||||||
|
|
||||||
drawInnerCircleAndTriangle(w);
|
drawInnerCircleAndTriangle(w);
|
||||||
|
|
||||||
let icon = powerIcon;
|
|
||||||
let color = colorFg;
|
|
||||||
if (Bangle.isCharging()) {
|
if (Bangle.isCharging()) {
|
||||||
color = colorGreen;
|
color = colorGreen;
|
||||||
icon = powerIconGreen;
|
|
||||||
} else {
|
} else {
|
||||||
if (settings.batteryWarn != undefined && battery <= settings.batteryWarn) {
|
if (settings.batteryWarn != undefined && battery <= settings.batteryWarn) {
|
||||||
color = colorRed;
|
color = colorRed;
|
||||||
icon = powerIconRed;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
writeCircleText(w, battery + '%');
|
writeCircleText(w, battery + '%');
|
||||||
|
|
||||||
g.drawImage(icon, w - 6, h3 + radiusOuter - 6);
|
g.drawImage(getImage(powerIcon, getCircleIconColor("battery", color, percent)), w - iconOffset, h3 + radiusOuter - iconOffset);
|
||||||
}
|
}
|
||||||
|
|
||||||
function drawWeather(w) {
|
function drawWeather(w) {
|
||||||
if (!w) w = getCirclePosition("weather");
|
if (!w) w = getCircleXPosition("weather");
|
||||||
const weather = getWeather();
|
const weather = getWeather();
|
||||||
const tempString = weather ? locale.temp(weather.temp - 273.15) : undefined;
|
const tempString = weather ? locale.temp(weather.temp - 273.15) : undefined;
|
||||||
const code = weather ? weather.code : -1;
|
const code = weather ? weather.code : -1;
|
||||||
|
|
||||||
drawCircleBackground(w);
|
drawCircleBackground(w);
|
||||||
|
|
||||||
|
const color = getCircleColor("weather") || colorYellow;
|
||||||
|
let percent;
|
||||||
const data = settings.weatherCircleData || "humidity";
|
const data = settings.weatherCircleData || "humidity";
|
||||||
switch (data) {
|
switch (data) {
|
||||||
case "humidity":
|
case "humidity":
|
||||||
const humidity = weather ? weather.hum : undefined;
|
const humidity = weather ? weather.hum : undefined;
|
||||||
if (humidity >= 0) {
|
if (humidity >= 0) {
|
||||||
drawGauge(w, h3, humidity / 100, colorYellow);
|
percent = humidity / 100;
|
||||||
|
drawGauge(w, h3, percent, color);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case "wind":
|
case "wind":
|
||||||
|
@ -303,7 +399,8 @@ function drawWeather(w) {
|
||||||
wind[1] = windAsBeaufort(wind[1]);
|
wind[1] = windAsBeaufort(wind[1]);
|
||||||
}
|
}
|
||||||
// wind goes from 0 to 12 (see https://en.wikipedia.org/wiki/Beaufort_scale)
|
// wind goes from 0 to 12 (see https://en.wikipedia.org/wiki/Beaufort_scale)
|
||||||
drawGauge(w, h3, wind[1] / 12, colorYellow);
|
percent = wind[1] / 12;
|
||||||
|
drawGauge(w, h3, percent, color);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -317,34 +414,26 @@ function drawWeather(w) {
|
||||||
|
|
||||||
if (code > 0) {
|
if (code > 0) {
|
||||||
const icon = getWeatherIconByCode(code);
|
const icon = getWeatherIconByCode(code);
|
||||||
if (icon) g.drawImage(icon, w - 6, h3 + radiusOuter - 10);
|
if (icon) g.drawImage(getImage(icon, getCircleIconColor("weather", color, percent)), w - iconOffset, h3 + radiusOuter - iconOffset);
|
||||||
|
} else {
|
||||||
|
g.drawString("?", w, h3 + radiusOuter);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
function drawSunProgress(w) {
|
function drawSunProgress(w) {
|
||||||
if (!w) w = getCirclePosition("sunprogress");
|
if (!w) w = getCircleXPosition("sunprogress");
|
||||||
const percent = getSunProgress();
|
const percent = getSunProgress();
|
||||||
|
|
||||||
drawCircleBackground(w);
|
drawCircleBackground(w);
|
||||||
|
|
||||||
drawGauge(w, h3, percent, colorYellow);
|
const color = getCircleColor("sunprogress") || colorYellow;
|
||||||
|
|
||||||
|
drawGauge(w, h3, percent, color);
|
||||||
|
|
||||||
drawInnerCircleAndTriangle(w);
|
drawInnerCircleAndTriangle(w);
|
||||||
|
|
||||||
let icon = powerIcon;
|
let icon = sunSetDown;
|
||||||
let color = colorFg;
|
|
||||||
if (isDay()) {
|
|
||||||
// day
|
|
||||||
color = colorFg;
|
|
||||||
icon = sunSetDown;
|
|
||||||
} else {
|
|
||||||
// night
|
|
||||||
color = colorGrey;
|
|
||||||
icon = sunSetUp;
|
|
||||||
}
|
|
||||||
g.setColor(color);
|
|
||||||
|
|
||||||
let text = "?";
|
let text = "?";
|
||||||
const times = getSunData();
|
const times = getSunData();
|
||||||
if (times != undefined) {
|
if (times != undefined) {
|
||||||
|
@ -359,16 +448,95 @@ function drawSunProgress(w) {
|
||||||
} else {
|
} else {
|
||||||
text = formatSeconds(sunRise - now);
|
text = formatSeconds(sunRise - now);
|
||||||
}
|
}
|
||||||
|
icon = sunSetUp;
|
||||||
} else {
|
} else {
|
||||||
// day, approx sunrise tomorrow:
|
// day, approx sunrise tomorrow:
|
||||||
text = formatSeconds(sunSet - now);
|
text = formatSeconds(sunSet - now);
|
||||||
|
icon = sunSetDown;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
writeCircleText(w, text);
|
writeCircleText(w, text);
|
||||||
|
|
||||||
g.drawImage(icon, w - 6, h3 + radiusOuter - 6);
|
g.drawImage(getImage(icon, getCircleIconColor("sunprogress", color, percent)), w - iconOffset, h3 + radiusOuter - iconOffset);
|
||||||
|
}
|
||||||
|
|
||||||
|
function drawTemperature(w) {
|
||||||
|
if (!w) w = getCircleXPosition("temperature");
|
||||||
|
|
||||||
|
getPressureValue("temperature").then((temperature) => {
|
||||||
|
drawCircleBackground(w);
|
||||||
|
|
||||||
|
const color = getCircleColor("temperature") || colorGreen;
|
||||||
|
|
||||||
|
let percent;
|
||||||
|
if (temperature) {
|
||||||
|
const min = -40;
|
||||||
|
const max = 85;
|
||||||
|
percent = (temperature - min) / (max - min);
|
||||||
|
drawGauge(w, h3, percent, color);
|
||||||
|
}
|
||||||
|
|
||||||
|
drawInnerCircleAndTriangle(w);
|
||||||
|
|
||||||
|
if (temperature)
|
||||||
|
writeCircleText(w, locale.temp(temperature));
|
||||||
|
|
||||||
|
g.drawImage(getImage(temperatureIcon, getCircleIconColor("temperature", color, percent)), w - iconOffset, h3 + radiusOuter - iconOffset);
|
||||||
|
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
function drawPressure(w) {
|
||||||
|
if (!w) w = getCircleXPosition("pressure");
|
||||||
|
|
||||||
|
getPressureValue("pressure").then((pressure) => {
|
||||||
|
drawCircleBackground(w);
|
||||||
|
|
||||||
|
const color = getCircleColor("pressure") || colorGreen;
|
||||||
|
|
||||||
|
let percent;
|
||||||
|
if (pressure && pressure > 0) {
|
||||||
|
const minPressure = 950;
|
||||||
|
const maxPressure = 1050;
|
||||||
|
percent = (pressure - minPressure) / (maxPressure - minPressure);
|
||||||
|
drawGauge(w, h3, percent, color);
|
||||||
|
}
|
||||||
|
|
||||||
|
drawInnerCircleAndTriangle(w);
|
||||||
|
|
||||||
|
if (pressure)
|
||||||
|
writeCircleText(w, Math.round(pressure));
|
||||||
|
|
||||||
|
g.drawImage(getImage(temperatureIcon, getCircleIconColor("pressure", color, percent)), w - iconOffset, h3 + radiusOuter - iconOffset);
|
||||||
|
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
function drawAltitude(w) {
|
||||||
|
if (!w) w = getCircleXPosition("altitude");
|
||||||
|
|
||||||
|
getPressureValue("altitude").then((altitude) => {
|
||||||
|
drawCircleBackground(w);
|
||||||
|
|
||||||
|
const color = getCircleColor("altitude") || colorGreen;
|
||||||
|
|
||||||
|
let percent;
|
||||||
|
if (altitude) {
|
||||||
|
const min = 0;
|
||||||
|
const max = 10000;
|
||||||
|
percent = (altitude - min) / (max - min);
|
||||||
|
drawGauge(w, h3, percent, color);
|
||||||
|
}
|
||||||
|
|
||||||
|
drawInnerCircleAndTriangle(w);
|
||||||
|
|
||||||
|
if (altitude)
|
||||||
|
writeCircleText(w, locale.distance(Math.round(altitude)));
|
||||||
|
|
||||||
|
g.drawImage(getImage(temperatureIcon, getCircleIconColor("altitude", color, percent)), w - iconOffset, h3 + radiusOuter - iconOffset);
|
||||||
|
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -410,7 +578,6 @@ function getWeatherIconByCode(code) {
|
||||||
default:
|
default:
|
||||||
return weatherRainy;
|
return weatherRainy;
|
||||||
}
|
}
|
||||||
break;
|
|
||||||
case 6:
|
case 6:
|
||||||
return weatherSnowy;
|
return weatherSnowy;
|
||||||
case 7:
|
case 7:
|
||||||
|
@ -426,11 +593,9 @@ function getWeatherIconByCode(code) {
|
||||||
default:
|
default:
|
||||||
return weatherCloudy;
|
return weatherCloudy;
|
||||||
}
|
}
|
||||||
break;
|
|
||||||
default:
|
default:
|
||||||
return undefined;
|
return undefined;
|
||||||
}
|
}
|
||||||
return undefined;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -456,7 +621,7 @@ function formatSeconds(s) {
|
||||||
function getSunData() {
|
function getSunData() {
|
||||||
if (location != undefined && location.lat != undefined) {
|
if (location != undefined && location.lat != undefined) {
|
||||||
// get today's sunlight times for lat/lon
|
// get today's sunlight times for lat/lon
|
||||||
return SunCalc.getTimes(new Date(), location.lat, location.lon);
|
return SunCalc ? SunCalc.getTimes(new Date(), location.lat, location.lon) : undefined;
|
||||||
}
|
}
|
||||||
return undefined;
|
return undefined;
|
||||||
}
|
}
|
||||||
|
@ -482,12 +647,12 @@ function getSunProgress() {
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// during night
|
// during night
|
||||||
if (sunSet < sunRise) {
|
if (now < sunRise) {
|
||||||
const upcomingSunRise = sunRise + 60 * 60 * 24;
|
const prevSunSet = sunSet - 60 * 60 * 24;
|
||||||
return 1 - (upcomingSunRise - now) / (upcomingSunRise - sunSet);
|
return 1 - (sunRise - now) / (sunRise - prevSunSet);
|
||||||
} else {
|
} else {
|
||||||
const lastSunSet = sunSet - 60 * 60 * 24;
|
const upcomingSunRise = sunRise + 60 * 60 * 24;
|
||||||
return (now - lastSunSet) / (sunRise - lastSunSet);
|
return (upcomingSunRise - now) / (upcomingSunRise - sunSet);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -496,6 +661,7 @@ function getSunProgress() {
|
||||||
* Draws the background and the grey circle
|
* Draws the background and the grey circle
|
||||||
*/
|
*/
|
||||||
function drawCircleBackground(w) {
|
function drawCircleBackground(w) {
|
||||||
|
g.clearRect(w - radiusOuter - 3, h3 - radiusOuter - 3, w + radiusOuter + 3, h3 + radiusOuter + 3);
|
||||||
// Draw rectangle background:
|
// Draw rectangle background:
|
||||||
g.setColor(colorBg);
|
g.setColor(colorBg);
|
||||||
g.fillRect(w - radiusOuter - 3, h3 - radiusOuter - 3, w + radiusOuter + 3, h3 + radiusOuter + 3);
|
g.fillRect(w - radiusOuter - 3, h3 - radiusOuter - 3, w + radiusOuter + 3, h3 + radiusOuter + 3);
|
||||||
|
@ -521,16 +687,17 @@ function radians(a) {
|
||||||
*/
|
*/
|
||||||
function drawGauge(cx, cy, percent, color) {
|
function drawGauge(cx, cy, percent, color) {
|
||||||
const offset = 15;
|
const offset = 15;
|
||||||
const end = 345;
|
const end = 360 - offset;
|
||||||
const radius = radiusInner + 3;
|
const radius = radiusInner + (circleCount == 3 ? 3 : 2);
|
||||||
const size = radiusOuter - radiusInner - 2;
|
const size = radiusOuter - radiusInner - 2;
|
||||||
|
|
||||||
if (percent <= 0) return;
|
if (percent <= 0) return; // no gauge needed
|
||||||
if (percent > 1) percent = 1;
|
if (percent > 1) percent = 1;
|
||||||
|
|
||||||
const startRotation = -offset;
|
const startRotation = -offset;
|
||||||
const endRotation = startRotation - ((end - offset) * percent);
|
const endRotation = startRotation - ((end - offset) * percent);
|
||||||
|
|
||||||
|
color = getGradientColor(color, percent);
|
||||||
g.setColor(color);
|
g.setColor(color);
|
||||||
|
|
||||||
for (let i = startRotation; i > endRotation - size; i -= size) {
|
for (let i = startRotation; i > endRotation - size; i -= size) {
|
||||||
|
@ -542,7 +709,8 @@ function drawGauge(cx, cy, percent, color) {
|
||||||
|
|
||||||
function writeCircleText(w, content) {
|
function writeCircleText(w, content) {
|
||||||
if (content == undefined) return;
|
if (content == undefined) return;
|
||||||
g.setFont(content.length < 4 ? circleFontBig : circleFont);
|
const font = String(content).length > 4 ? circleFontSmall : String(content).length > 3 ? circleFont : circleFontBig;
|
||||||
|
g.setFont(font);
|
||||||
|
|
||||||
g.setFontAlign(0, 0);
|
g.setFontAlign(0, 0);
|
||||||
g.setColor(colorFg);
|
g.setColor(colorFg);
|
||||||
|
@ -585,33 +753,67 @@ function enableHRMSensor() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
let pressureLocked = false;
|
||||||
|
let pressureCache;
|
||||||
|
|
||||||
|
function getPressureValue(type) {
|
||||||
|
return new Promise((resolve) => {
|
||||||
|
if (Bangle.getPressure) {
|
||||||
|
if (!pressureLocked) {
|
||||||
|
pressureLocked = true;
|
||||||
|
if (pressureCache && pressureCache[type]) {
|
||||||
|
resolve(pressureCache[type]);
|
||||||
|
}
|
||||||
|
Bangle.getPressure().then(function(d) {
|
||||||
|
pressureLocked = false;
|
||||||
|
if (d) {
|
||||||
|
pressureCache = d;
|
||||||
|
if (d[type]) {
|
||||||
|
resolve(d[type]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}).catch(() => {});
|
||||||
|
} else {
|
||||||
|
if (pressureCache && pressureCache[type]) {
|
||||||
|
resolve(pressureCache[type]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
Bangle.on('lock', function(isLocked) {
|
Bangle.on('lock', function(isLocked) {
|
||||||
if (!isLocked) {
|
if (!isLocked) {
|
||||||
|
draw();
|
||||||
if (isCircleEnabled("hr")) {
|
if (isCircleEnabled("hr")) {
|
||||||
enableHRMSensor();
|
enableHRMSensor();
|
||||||
}
|
}
|
||||||
draw();
|
|
||||||
} else {
|
} else {
|
||||||
Bangle.setHRMPower(0, "circleclock");
|
Bangle.setHRMPower(0, "circleclock");
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
let timerHrm;
|
||||||
Bangle.on('HRM', function(hrm) {
|
Bangle.on('HRM', function(hrm) {
|
||||||
if (isCircleEnabled("hr")) {
|
if (isCircleEnabled("hr")) {
|
||||||
|
if (hrm.confidence >= (settings.confidence || 0)) {
|
||||||
hrtValue = hrm.bpm;
|
hrtValue = hrm.bpm;
|
||||||
if (Bangle.isLCDOn())
|
if (Bangle.isLCDOn()) {
|
||||||
drawHeartRate();
|
drawHeartRate();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
// Let us wait before we overwrite "good" HRM values:
|
||||||
|
if (Bangle.isLCDOn()) {
|
||||||
|
if (timerHrm) clearTimeout(timerHrm);
|
||||||
|
timerHrm = setTimeout(() => {
|
||||||
|
hrtValue = '...';
|
||||||
|
drawHeartRate();
|
||||||
|
}, settings.hrmValidity * 1000 || 30000);
|
||||||
|
}
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
Bangle.setUI("clock");
|
|
||||||
Bangle.loadWidgets();
|
|
||||||
|
|
||||||
draw();
|
|
||||||
setInterval(draw, 60000);
|
|
||||||
|
|
||||||
Bangle.on('charging', function(charging) {
|
Bangle.on('charging', function(charging) {
|
||||||
if (isCircleEnabled("battery")) drawBattery();
|
if (isCircleEnabled("battery")) drawBattery();
|
||||||
});
|
});
|
||||||
|
@ -619,3 +821,10 @@ Bangle.on('charging', function(charging) {
|
||||||
if (isCircleEnabled("hr")) {
|
if (isCircleEnabled("hr")) {
|
||||||
enableHRMSensor();
|
enableHRMSensor();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Bangle.setUI("clock");
|
||||||
|
Bangle.loadWidgets();
|
||||||
|
|
||||||
|
draw();
|
||||||
|
setInterval(draw, 60000);
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
{ "id": "circlesclock",
|
{ "id": "circlesclock",
|
||||||
"name": "Circles clock",
|
"name": "Circles clock",
|
||||||
"shortName":"Circles clock",
|
"shortName":"Circles clock",
|
||||||
"version":"0.06",
|
"version":"0.09",
|
||||||
"description": "A clock with circles for different data at the bottom in a probably familiar style",
|
"description": "A clock with three or four circles for different data at the bottom in a probably familiar style",
|
||||||
"icon": "app.png",
|
"icon": "app.png",
|
||||||
"screenshots": [{"url":"screenshot-dark.png"}, {"url":"screenshot-light.png"}],
|
"screenshots": [{"url":"screenshot-dark.png"}, {"url":"screenshot-light.png"}, {"url":"screenshot-dark-4.png"}, {"url":"screenshot-light-4.png"}],
|
||||||
"type": "clock",
|
"type": "clock",
|
||||||
"tags": "clock",
|
"tags": "clock",
|
||||||
"supports" : ["BANGLEJS2"],
|
"supports" : ["BANGLEJS2"],
|
||||||
|
|
After Width: | Height: | Size: 3.9 KiB |
Before Width: | Height: | Size: 3.8 KiB After Width: | Height: | Size: 3.8 KiB |
After Width: | Height: | Size: 3.9 KiB |
Before Width: | Height: | Size: 3.7 KiB After Width: | Height: | Size: 3.8 KiB |
|
@ -7,65 +7,32 @@
|
||||||
storage.write(SETTINGS_FILE, settings);
|
storage.write(SETTINGS_FILE, settings);
|
||||||
}
|
}
|
||||||
|
|
||||||
const valuesCircleTypes = ["steps", "stepsDist", "hr", "battery", "weather", "sunprogress", "empty"];
|
const valuesCircleTypes = ["empty", "steps", "stepsDist", "hr", "battery", "weather", "sunprogress", "temperature", "pressure", "altitude"];
|
||||||
const namesCircleTypes = ["steps", "distance", "heart", "battery", "weather", "sun progress", "empty"];
|
const namesCircleTypes = ["empty", "steps", "distance", "heart", "battery", "weather", "sun", "temperature", "pressure", "altitude"];
|
||||||
|
|
||||||
const weatherData = ["humidity", "wind", "empty"];
|
const valuesColors = ["", "#ff0000", "#00ff00", "#0000ff", "#ffff00", "#ff00ff", "#00ffff", "#fff", "#000", "green-red", "red-green"];
|
||||||
|
const namesColors = ["default", "red", "green", "blue", "yellow", "magenta", "cyan", "white", "black", "green->red", "red->green"];
|
||||||
|
|
||||||
E.showMenu({
|
const weatherData = ["empty", "humidity", "wind"];
|
||||||
'': { 'title': 'circlesclock' },
|
|
||||||
'< Back': back,
|
function showMainMenu() {
|
||||||
'min heartrate': {
|
let menu ={
|
||||||
value: "minHR" in settings ? settings.minHR : 40,
|
'': { 'title': 'Circles clock' },
|
||||||
min: 0,
|
/*LANG*/'< Back': back,
|
||||||
max : 250,
|
/*LANG*/'circle count': {
|
||||||
step: 5,
|
value: "circleCount" in settings ? settings.circleCount : 3,
|
||||||
format: x => {
|
min: 3,
|
||||||
return x;
|
max : 4,
|
||||||
|
step: 1,
|
||||||
|
onchange: x => save('circleCount', x),
|
||||||
},
|
},
|
||||||
onchange: x => save('minHR', x),
|
/*LANG*/'circle 1': ()=>showCircleMenu(1),
|
||||||
},
|
/*LANG*/'circle 2': ()=>showCircleMenu(2),
|
||||||
'max heartrate': {
|
/*LANG*/'circle 3': ()=>showCircleMenu(3),
|
||||||
value: "maxHR" in settings ? settings.maxHR : 200,
|
/*LANG*/'circle 4': ()=>showCircleMenu(4),
|
||||||
min: 20,
|
/*LANG*/'heartrate': ()=>showHRMenu(),
|
||||||
max : 250,
|
/*LANG*/'steps': ()=>showStepMenu(),
|
||||||
step: 5,
|
/*LANG*/'battery warn': {
|
||||||
format: x => {
|
|
||||||
return x;
|
|
||||||
},
|
|
||||||
onchange: x => save('maxHR', x),
|
|
||||||
},
|
|
||||||
'step goal': {
|
|
||||||
value: "stepGoal" in settings ? settings.stepGoal : 10000,
|
|
||||||
min: 2000,
|
|
||||||
max : 50000,
|
|
||||||
step: 2000,
|
|
||||||
format: x => {
|
|
||||||
return x;
|
|
||||||
},
|
|
||||||
onchange: x => save('stepGoal', x),
|
|
||||||
},
|
|
||||||
'step length': {
|
|
||||||
value: "stepLength" in settings ? settings.stepLength : 0.8,
|
|
||||||
min: 0.1,
|
|
||||||
max : 1.5,
|
|
||||||
step: 0.01,
|
|
||||||
format: x => {
|
|
||||||
return x;
|
|
||||||
},
|
|
||||||
onchange: x => save('stepLength', x),
|
|
||||||
},
|
|
||||||
'step dist goal': {
|
|
||||||
value: "stepDistanceGoal" in settings ? settings.stepDistanceGoal : 8000,
|
|
||||||
min: 2000,
|
|
||||||
max : 30000,
|
|
||||||
step: 1000,
|
|
||||||
format: x => {
|
|
||||||
return x;
|
|
||||||
},
|
|
||||||
onchange: x => save('stepDistanceGoal', x),
|
|
||||||
},
|
|
||||||
'battery warn': {
|
|
||||||
value: "batteryWarn" in settings ? settings.batteryWarn : 30,
|
value: "batteryWarn" in settings ? settings.batteryWarn : 30,
|
||||||
min: 10,
|
min: 10,
|
||||||
max : 100,
|
max : 100,
|
||||||
|
@ -75,34 +42,138 @@
|
||||||
},
|
},
|
||||||
onchange: x => save('batteryWarn', x),
|
onchange: x => save('batteryWarn', x),
|
||||||
},
|
},
|
||||||
'show widgets': {
|
/*LANG*/'show widgets': {
|
||||||
value: "showWidgets" in settings ? settings.showWidgets : false,
|
value: "showWidgets" in settings ? settings.showWidgets : false,
|
||||||
format: () => (settings.showWidgets ? 'Yes' : 'No'),
|
format: () => (settings.showWidgets ? 'Yes' : 'No'),
|
||||||
onchange: x => save('showWidgets', x),
|
onchange: x => save('showWidgets', x),
|
||||||
},
|
},
|
||||||
'weather circle': {
|
/*LANG*/'weather circle': {
|
||||||
value: settings.weatherCircleData ? weatherData.indexOf(settings.weatherCircleData) : 0,
|
value: settings.weatherCircleData ? weatherData.indexOf(settings.weatherCircleData) : 1,
|
||||||
min: 0, max: 2,
|
min: 0, max: 2,
|
||||||
format: v => weatherData[v],
|
format: v => weatherData[v],
|
||||||
onchange: x => save('weatherCircleData', weatherData[x]),
|
onchange: x => save('weatherCircleData', weatherData[x]),
|
||||||
},
|
|
||||||
'left': {
|
|
||||||
value: settings.circle1 ? valuesCircleTypes.indexOf(settings.circle1) : 0,
|
|
||||||
min: 0, max: 6,
|
|
||||||
format: v => namesCircleTypes[v],
|
|
||||||
onchange: x => save('circle1', valuesCircleTypes[x]),
|
|
||||||
},
|
|
||||||
'middle': {
|
|
||||||
value: settings.circle2 ? valuesCircleTypes.indexOf(settings.circle2) : 2,
|
|
||||||
min: 0, max: 6,
|
|
||||||
format: v => namesCircleTypes[v],
|
|
||||||
onchange: x => save('circle2', valuesCircleTypes[x]),
|
|
||||||
},
|
|
||||||
'right': {
|
|
||||||
value: settings.circle3 ? valuesCircleTypes.indexOf(settings.circle3) : 3,
|
|
||||||
min: 0, max: 6,
|
|
||||||
format: v => namesCircleTypes[v],
|
|
||||||
onchange: x => save('circle3', valuesCircleTypes[x]),
|
|
||||||
}
|
}
|
||||||
});
|
};
|
||||||
|
E.showMenu(menu);
|
||||||
|
}
|
||||||
|
|
||||||
|
function showHRMenu() {
|
||||||
|
let menu = {
|
||||||
|
'': { 'title': /*LANG*/'Heartrate' },
|
||||||
|
/*LANG*/'< Back': ()=>showMainMenu(),
|
||||||
|
/*LANG*/'minimum': {
|
||||||
|
value: "minHR" in settings ? settings.minHR : 40,
|
||||||
|
min: 0,
|
||||||
|
max : 250,
|
||||||
|
step: 5,
|
||||||
|
format: x => {
|
||||||
|
return x + " bpm";
|
||||||
|
},
|
||||||
|
onchange: x => save('minHR', x),
|
||||||
|
},
|
||||||
|
/*LANG*/'maximum': {
|
||||||
|
value: "maxHR" in settings ? settings.maxHR : 200,
|
||||||
|
min: 20,
|
||||||
|
max : 250,
|
||||||
|
step: 5,
|
||||||
|
format: x => {
|
||||||
|
return x + " bpm";
|
||||||
|
},
|
||||||
|
onchange: x => save('maxHR', x),
|
||||||
|
},
|
||||||
|
/*LANG*/'min. confidence': {
|
||||||
|
value: "confidence" in settings ? settings.confidence : 0,
|
||||||
|
min: 0,
|
||||||
|
max : 100,
|
||||||
|
step: 10,
|
||||||
|
format: x => {
|
||||||
|
return x + "%";
|
||||||
|
},
|
||||||
|
onchange: x => save('confidence', x),
|
||||||
|
},
|
||||||
|
/*LANG*/'valid period': {
|
||||||
|
value: "hrmValidity" in settings ? settings.hrmValidity : 30,
|
||||||
|
min: 10,
|
||||||
|
max : 600,
|
||||||
|
step: 10,
|
||||||
|
format: x => {
|
||||||
|
return x + "s";
|
||||||
|
},
|
||||||
|
onchange: x => save('hrmValidity', x),
|
||||||
|
},
|
||||||
|
};
|
||||||
|
E.showMenu(menu);
|
||||||
|
}
|
||||||
|
|
||||||
|
function showStepMenu() {
|
||||||
|
let menu = {
|
||||||
|
'': { 'title': /*LANG*/'Steps' },
|
||||||
|
/*LANG*/'< Back': ()=>showMainMenu(),
|
||||||
|
/*LANG*/'goal': {
|
||||||
|
value: "stepGoal" in settings ? settings.stepGoal : 10000,
|
||||||
|
min: 2000,
|
||||||
|
max : 50000,
|
||||||
|
step: 2000,
|
||||||
|
format: x => {
|
||||||
|
return x;
|
||||||
|
},
|
||||||
|
onchange: x => save('stepGoal', x),
|
||||||
|
},
|
||||||
|
/*LANG*/'distance goal': {
|
||||||
|
value: "stepDistanceGoal" in settings ? settings.stepDistanceGoal : 8000,
|
||||||
|
min: 2000,
|
||||||
|
max : 30000,
|
||||||
|
step: 1000,
|
||||||
|
format: x => {
|
||||||
|
return x;
|
||||||
|
},
|
||||||
|
onchange: x => save('stepDistanceGoal', x),
|
||||||
|
},
|
||||||
|
/*LANG*/'step length': {
|
||||||
|
value: "stepLength" in settings ? settings.stepLength : 0.8,
|
||||||
|
min: 0.1,
|
||||||
|
max : 1.5,
|
||||||
|
step: 0.01,
|
||||||
|
format: x => {
|
||||||
|
return x;
|
||||||
|
},
|
||||||
|
onchange: x => save('stepLength', x),
|
||||||
|
}
|
||||||
|
};
|
||||||
|
E.showMenu(menu);
|
||||||
|
}
|
||||||
|
|
||||||
|
const defaultCircleTypes = ["steps", "hr", "battery", "weather"];
|
||||||
|
|
||||||
|
function showCircleMenu(circleId) {
|
||||||
|
const circleName = "circle" + circleId;
|
||||||
|
const colorKey = circleName + "color";
|
||||||
|
const colorizeIconKey = circleName + "colorizeIcon";
|
||||||
|
|
||||||
|
const menu = {
|
||||||
|
'': { 'title': /*LANG*/'Circle ' + circleId },
|
||||||
|
/*LANG*/'< Back': ()=>showMainMenu(),
|
||||||
|
/*LANG*/'data': {
|
||||||
|
value: settings[circleName]!=undefined ? valuesCircleTypes.indexOf(settings[circleName]) : valuesCircleTypes.indexOf(defaultCircleTypes[circleId -1]),
|
||||||
|
min: 0, max: valuesCircleTypes.length - 1,
|
||||||
|
format: v => namesCircleTypes[v],
|
||||||
|
onchange: x => save(circleName, valuesCircleTypes[x]),
|
||||||
|
},
|
||||||
|
/*LANG*/'color': {
|
||||||
|
value: settings[colorKey] ? valuesColors.indexOf(settings[colorKey]) : 0,
|
||||||
|
min: 0, max: valuesColors.length - 1,
|
||||||
|
format: v => namesColors[v],
|
||||||
|
onchange: x => save(colorKey, valuesColors[x]),
|
||||||
|
},
|
||||||
|
/*LANG*/'colorize icon': {
|
||||||
|
value: colorizeIconKey in settings ? settings[colorizeIconKey] : false,
|
||||||
|
format: () => (settings[colorizeIconKey] ? 'Yes' : 'No'),
|
||||||
|
onchange: x => save(colorizeIconKey, x),
|
||||||
|
},
|
||||||
|
};
|
||||||
|
E.showMenu(menu);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
showMainMenu();
|
||||||
});
|
});
|
||||||
|
|
|
@ -0,0 +1,27 @@
|
||||||
|
# Variable Analog Clock #
|
||||||
|
|
||||||
|
This app implements an analog clock with various faces, hands and colors to
|
||||||
|
choose from.
|
||||||
|
|
||||||
|
You have the choice between:
|
||||||
|
|
||||||
|
* 4 different clock faces     and
|
||||||
|
* 3 different clock hands (optionally with or without second hands)   
|
||||||
|
|
||||||
|
Additionally, you may use the currently configured global theme or configure
|
||||||
|
your own colors for clock fore- and background and second hands.
|
||||||
|
|
||||||
|
Just swipe up or down to switch from clock display to configuration screen
|
||||||
|
|
||||||
|
  
|
||||||
|
 
|
||||||
|
|
||||||
|
Chosen settings will be written to the Bangle.js's flash memory and restored
|
||||||
|
whenever the clock is started again.
|
||||||
|
|
||||||
|
This clock also acts as an example for the building blocks found in the author's
|
||||||
|
[GitHub repository](https://github.com/rozek/banglejs-2-activities)
|
||||||
|
|
||||||
|
## License ##
|
||||||
|
|
||||||
|
[MIT License](LICENSE)
|
|
@ -0,0 +1,5 @@
|
||||||
|
0.01: New app
|
||||||
|
0.20: Settings menu, different fonts, inverse fonts
|
||||||
|
0.21: Fixed settings menu, four more fonts
|
||||||
|
0.22: Changed timing code, original "Nunito" Font is back!
|
||||||
|
0.23: Customizer! Unused fonts no longer take up precious memory.
|
|
@ -1,49 +1,21 @@
|
||||||
const digits = [
|
var digits = [];
|
||||||
{width : 52 , height : 86 , bpp : 2, transparent : 1, buffer : E.toArrayBuffer(atob(" VVVVVVVVqlVVVVVVVVVVVVVaqqqqpVVVVVVVVVVWqqqqqqqVVVVVVVVVWqqqAKqqpVVVVVVVVaqgAAAACqpVVVVVVVaqAAAAAACqlVVVVVVaoAAAAAAACqVVVVVVaoAAAAAAAAKpVVVVVaoAAAAAAAAAqlVVVVaoAAAAAAAAACqVVVVWoAAAAAAAAAAKlVVVWoAAAAAAAAAAAqVVVWqAAAAAAAAAAAKpVVVqAAAAACgAAAAAqVVVagAAAAKqgAAAAKlVVagAAAAqqqgAAAAqVVWoAAAAKpaoAAAAKlVVqAAAAKlVagAAAAqVVqAAAACpVWoAAAAKlVagAAACpVVagAAACpVWoAAAAqVVWoAAAAqVVqAAAAqVVVagAAAKlVqAAAAKlVVWoAAAAqVagAAACpVVVqAAAAKlWoAAAAqVVVagAAACpVqAAAAKlVVWoAAAAqVagAAACpVVVqAAAAKlWoAAAAqVVVWoAAACpVqAAAAKlVVVqAAAAqVagAAAKlVVVagAAAKlWoAAACpVVVWoAAACpVqAAAAqVVVVqAAAAqVagAAAKlVVVagAAAKlWoAAACpVVVWoAAACpVqAAAAqVVVVqAAAAqVagAAACpVVVagAAAKlWoAAAAqVVVWoAAACpVqAAAAKlVVWoAAAAqVagAAACpVVVqAAAAKlWoAAAAqVVVagAAACpVqAAAAKlVVWoAAAAqVagAAACpVVVqAAAAKlVqAAAAqVVVagAAACpVagAAACpVVWoAAACpVWoAAAAqVVWoAAAAqVVqAAAAKlVVqAAAAKlVagAAAAqVVqAAAAKlVVqAAAAKpVqgAAACpVVagAAAAqqqgAAAAqVVVqAAAACqqgAAAAKlVVagAAAACqAAAAAKlVVWoAAAAAAAAAAACpVVVagAAAAAAAAAACpVVVWqAAAAAAAAAACqVVVVagAAAAAAAAAAqVVVVVqAAAAAAAAAAqVVVVVaoAAAAAAAAAqlVVVVVqgAAAAAAAAqlVVVVVWqgAAAAAAAqlVVVVVVaqAAAAAACqlVVVVVVVaqgAAAAqqlVVVVVVVVqqqqqqqqVVVVVVVVVVqqqqqqpVVVVVVVVVVVaqqqqVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVU= "))},
|
|
||||||
{width : 52 , height : 86 , bpp : 2, transparent : 1, buffer : E.toArrayBuffer(atob(" VVVVVVVVVVVVVVVVVVVVVVVVVaqqqVVVVVVVVVVVVVqqqqqVVVVVVVVVVVWqqqqqpVVVVVVVVVVaqgAAAqVVVVVVVVVVaqAAAACpVVVVVVVVVqoAAAAAqVVVVVVVVVqoAAAAAKlVVVVVVVWqgAAAAACpVVVVVVVaqgAAAAAAqVVVVVVVaqAAAAAAAKlVVVVVVaoAAAAAAACpVVVVVVqoAAAAAAAAqVVVVVVaoAAAAAAAAKlVVVVVagAAAAAAAACpVVVVVWoAAAAAAAAAqVVVVVVqAAAAAAAAAKlVVVVVagAAAAAAAACpVVVVVWoAAAAAAAAAqVVVVVVqAAAAAAAAAKlVVVVVagAAAgAAAACpVVVVVWoAACogAAAAqVVVVVVagAKqoAAAAKlVVVVVWqqqqagAAACpVVVVVVaqqpWoAAAAqVVVVVVVaqlVqAAAAKlVVVVVVVVVVagAAACpVVVVVVVVVVWoAAAAqVVVVVVVVVVVqAAAAKlVVVVVVVVVVagAAACpVVVVVVVVVVWoAAAAqVVVVVVVVVVVqAAAAKlVVVVVVVVVVagAAACpVVVVVVVVVVWoAAAAqVVVVVVVVVVVqAAAAKlVVVVVVVVVVagAAACpVVVVVVVVVVWoAAAAqVVVVVVVVVVVqAAAAKlVVVVVVVVVVagAAACpVVVVVVVVVVWoAAAAqVVVVVVVVVVVqAAAAKlVVVVVVVVVVagAAACpVVVVVVVVVVWoAAAAqVVVVVVVVVVVqAAAAKlVVVVVVVVVVagAAACpVVVVVVVVVVWoAAAAqVVVVVVVVVVVqAAAAKlVVVVVVVaqqqAAAAAqqqpVVVWqqqqgAAAAKqqqpVVWqqqqAAAAAAKqqqlVVqgAAAAAAAAAAACpVVqAAAAAAAAAAAAAKlVagAAAAAAAAAAAACpVWoAAAAAAAAAAAAAqVWoAAAAAAAAAAAAAKlVagAAAAAAAAAAAACpVWoAAAAAAAAAAAAAqVVqAAAAAAAAAAAAAKlVagAAAAAAAAAAAACpVWqAAAAAAAAAAAACqVVaqqqqqqqqqqqqqqVVVqqqqqqqqqqqqqqVVVWqqqqqqqqqqqqqVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVU= "))},
|
|
||||||
{width : 52 , height : 86 , bpp : 2, transparent : 1, buffer : E.toArrayBuffer(atob(" VVVVVVVWqVVVVVVVVVVVVVaqqqqqlVVVVVVVVVaqqqqqqqqVVVVVVVVqqqqoAqqqqVVVVVVWqqgAAAAAKqpVVVVVaqgAAAAAAAAqpVVVVaqAAAAAAAAACqlVVVWoAAAAAAAAAACpVVVWoAAAAAAAAAAAKlVVVqAAAAAAAAAAACqVVVagAAAAAAAAAAAKlVVWoAAAAAAAAAAAAqVVVqAAAAAAAAAAAAKlVVagAAAAAAAAAAAAqVVWoAAAKqqAAAAAAKlVVagACqqqqAAAAACpVVWqqqqqqqqAAAAAqVVVaqqqlVVqgAAAAKlVVVaqpVVVVqAAAACpVVVVVVVVVVagAAAAqVVVVVVVVVVVqAAAAKlVVVVVVVVVVagAAACpVVVVVVVVVVWoAAAAqVVVVVVVVVVVqAAAAKlVVVVVVVVVVqAAAACpVVVVVVVVVVagAAAAqVVVVVVVVVVagAAAAqVVVVVVVVVVaoAAAAKlVVVVVVVVVaoAAAACpVVVVVVVVVaoAAAACpVVVVVVVVVWoAAAACqVVVVVVVVVWoAAAAAqVVVVVVVVVWqAAAAAqVVVVVVVVVWqAAAAAqlVVVVVVVVWqAAAAAKlVVVVVVVVWqAAAAAKlVVVVVVVVWqAAAAAKpVVVVVVVVWqAAAAAKpVVVVVVVVWqAAAAAKpVVVVVVVVWqAAAAAKpVVVVVVVVWqAAAAAKpVVVVVVVVWqAAAAAKpVVVVVVVVWqAAAAAKpVVVVVVVVWqAAAAAKpVVVVVVVVWqAAAAAqpVVVVVVVVWqAAAAACpVVVVVVVVWqAAAAAKlVVVVVVVVVqAAAAAACqqqqpVVVVqAAAAAAKqqqqqpVVVqgAAAAAAKqqqqqpVVagAAAAAAAAAAACqVVWoAAAAAAAAAAAACpVWoAAAAAAAAAAAAAqVVqAAAAAAAAAAAAAKlVagAAAAAAAAAAAACpVWoAAAAAAAAAAAAAqVVqAAAAAAAAAAAAAKlVWoAAAAAAAAAAAACpVVqAAAAAAAAAAAAAqVVaoAAAAAAAAAAAAqVVVqqqqqqqqqqqqqqlVVWqqqqqqqqqqqqqlVVVaqqqqqqqqqqqqVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVU= "))},
|
|
||||||
{width : 52 , height : 86 , bpp : 2, transparent : 1, buffer : E.toArrayBuffer(atob(" VVVVVVVapVVVVVVVVVVVVVaqqqqqlVVVVVVVVVaqqqqqqqqVVVVVVVWqqqqgCqqqpVVVVVVaqqgAAAAAKqpVVVVVaqgAAAAAAACqpVVVVaoAAAAAAAAACqlVVVaoAAAAAAAAAACqVVVWoAAAAAAAAAAAKlVVVqAAAAAAAAAAAAqVVVagAAAAAAAAAAAKlVVWoAAAAAAAAAAAAqVVVqAAAAAAAAAAAAKlVVagAAAAAAAAAAAAqVVVqAAAKqqgAAAAAKlVVaoAKqqqqgAAAACpVVVqqqqqqqqAAAAAqVVVWqqqlVVaoAAAAKlVVVaqlVVVVqAAAACpVVVVVVVVVVWoAAAAqVVVVVVVVVVVqAAAAKlVVVVVVVVVVagAAACpVVVVVVVVVVWoAAAAqVVVVVVVVVVaoAAAAqVVVVVVVVaqqqAAAAKlVVVVVVaqqqoAAAAKlVVVVVVaqqqgAAAAKpVVVVVVaqgAAAAAAKpVVVVVVaoAAAAAAAKpVVVVVVWoAAAAAAACpVVVVVVVqAAAAAAACpVVVVVVVagAAAAAAAqVVVVVVVWoAAAAAAACpVVVVVVVqAAAAAAAAqpVVVVVVagAAAAAAACqlVVVVVWoAAAAAAAACqVVVVVVaoAAAAAAAAKpVVVVVWqqqqgAAAAAqVVVVVVWqqqqgAAAACpVVVVVVaqqqqgAAAAqVVVVVVVVVVaqAAAAKlVVVVVVVVVVagAAAAqVVVVVVVVVVVqAAAAKlVVVVVVVVVVagAAACpVVVVVVVVVVWoAAAAqVVVVlVVVVVVqAAAAKlVVaqqVVVVVqAAAACpVVaqqqpVVWqgAAAAqVVaqKqqqqqqgAAAAKlVaoAAqqqqqAAAAACpVaoAAACqqoAAAAACpVWoAAAAAAAAAAAAAqVVqAAAAAAAAAAAAAKlVagAAAAAAAAAAAAKlVWoAAAAAAAAAAAAKpVVqAAAAAAAAAAAACpVVagAAAAAAAAAAAKpVVVqAAAAAAAAAAAKqVVVaqAAAAAAAAAAKpVVVVqqAAAAAAAACqpVVVVVqqoAAAAACqqpVVVVVWqqqqqqqqqqlVVVVVVVqqqqqqqqpVVVVVVVVVWqqqqqpVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVU= "))},
|
|
||||||
{width : 52 , height : 86 , bpp : 2, transparent : 1, buffer : E.toArrayBuffer(atob(" VVVVVVVVVVVVVVVVVVVVVVVVVVVaqqlVVVVVVVVVVVVVqqqqlVVVVVVVVVVVVqqqqqVVVVVVVVVVVVqgAAKpVVVVVVVVVVVqgAAAqVVVVVVVVVVVqgAAACpVVVVVVVVVVqgAAAAqVVVVVVVVVVagAAAAKlVVVVVVVVVagAAAACpVVVVVVVVVaoAAAAAqVVVVVVVVVWoAAAAAKlVVVVVVVVWoAAAAACpVVVVVVVVWqAAAAAAqVVVVVVVVVqAAAAAAKlVVVVVVVVqAAAAAACpVVVVVVVVqgAAAAAAqVVVVVVVVagAAAAAAKlVVVVVVVagAAAAAACpVVVVVVVaoAAAAAAAqVVVVVVVaoAAAAAAAKlVVVVVVWoAAAAAAACpVVVVVVWoAAAAAAAAqVVVVVVWqAAAAAAAAKlVVVVVVqAAAAAAAACpVVVVVVqAAAAAAAAAqVVVVVVqgAAAAAAAAKlVVVVVagAAAgAAAACpVVVVVagAACogAAAAqVVVVVaoAACqoAAAAKlVVVVWoAAAqagAAACpVVVVWoAAAqWoAAAAqVVVVWqAAAqlqAAAAKlVVVVqAAAKlagAAACpVVVVqAAAKlWoAAAAqVVVVqgAAKpVqAAAAKlVVVagAACpVagAAACpVVVagAACpVWoAAAAqVVVaoAAAqVVqAAAAKlVVWoAAACqqqAAAAAqpVVqAAAAqqqgAAAAKqpVqAAAAAqqAAAAAAKqpagAAAAAAAAAAAAACqWoAAAAAAAAAAAAAACpqAAAAAAAAAAAAAAAqagAAAAAAAAAAAAAAKmoAAAAAAAAAAAAAACpqAAAAAAAAAAAAAAAqagAAAAAAAAAAAAAAKlqAAAAAAAAAAAAAACpaqAAAAAAAAAAAAACpVqqqqqqqgAAAAACqqVVqqqqqqqgAAAAKqqVVVqqqqqqoAAAACqpVVVVVVVVVagAAACpVVVVVVVVVVWoAAAAqVVVVVVVVVVVqAAAAKlVVVVVVVVVVagAAACpVVVVVVVVVVVqAAACpVVVVVVVVVVVagAAAqVVVVVVVVVVVVqgACqVVVVVVVVVVVVaqqqqlVVVVVVVVVVVVaqqqVVVVVVVVVVVVVVqqqVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVU= "))},
|
|
||||||
{width : 52 , height : 86 , bpp : 2, transparent : 1, buffer : E.toArrayBuffer(atob(" VVVVVVVVVVVVVVVVVVVVVaqqqqqqqqpVVVVVVaqqqqqqqqqqqlVVVVaqqqqqqqqqqqqVVVVaqgAAAAAAAACqpVVVaoAAAAAAAAAAAqlVVWoAAAAAAAAAAACpVVVqAAAAAAAAAAAAqVVVagAAAAAAAAAAAKlVVWoAAAAAAAAAAAAqVVVqAAAAAAAAAAAAKlVVagAAAAAAAAAAAKlVVWoAAAAAAAAAAACpVVVqAAAAAAAAAAAAqVVVagAAAAAAAAAAKqVVVWoAAAACqqqqqqqlVVVqAAAAKqqqqqqqVVVVagAAACqqqqqqlVVVVWoAAACpVVVVVVVVVVVqAAAAqVVVVVVVVVVVagAAAKlVVVVVVVVVVWoAAACpVVVVVVVVVVVqAAAAqVVVVVVVVVVVagAAACqqqqqVVVVVVWoAAAAqqqqqqlVVVVVqAAAAAqqqqqqlVVVVagAAAAAAAAAqqVVVVWoAAAAAAAAAAKpVVVVqAAAAAAAAAAAqlVVVagAAAAAAAAAACqVVVWoAAAAAAAAAAAKpVVVqAAAAAAAAAAAAqlVVagAAAAAAAAAAACpVVWoAAAAAAAAAAAAKlVVqAAAAAAAAAAAACpVVagAAAACoAAAAAAKlVWoAAACqqqAAAAACpVVqAAAKqqqqAAAAAqVVWqgqqqpWqoAAAAKlVVqqqqpVVVqAAAACpVVWqqqlVVVWoAAAAqVVVVaVVVVVVqAAAACpVVVVVVVVVVWoAAAAqVVVVVVVVVVVqAAAAKlVVVVVVVVVVagAAAKlVVWqpVVVVVagAAACpVVaqqqVVVVaoAAAAqVVaqqqqlVVqoAAAAKlVWoACqqqqqoAAAACpVWoAAAqqqqgAAAAAqVVqAAAAKqqAAAAAAqVVqAAAAAAAAAAAAAKlVagAAAAAAAAAAAAKlVWoAAAAAAAAAAAACpVVqAAAAAAAAAAAACpVVagAAAAAAAAAAACqVVVqAAAAAAAAAAACqVVVaoAAAAAAAAAAKqVVVVqgAAAAAAAAAKqVVVVWqoAAAAAAAAqpVVVVVaqqgAAAAAqqpVVVVVVaqqqqqqqqqlVVVVVVVWqqqqqqqqVVVVVVVVVVaqqqqqVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVU= "))},
|
|
||||||
{width : 52 , height : 86 , bpp : 2, transparent : 1, buffer : E.toArrayBuffer(atob(" VVVVVVVVVVqVVVVVVVVVVVVVVqqqqqpVVVVVVVVVVqqqqqqqqVVVVVVVVWqqqqAqqqqlVVVVVVWqqAAAAACqqlVVVVVaqAAAAAAAAqpVVVVVaqAAAAAAAAAKlVVVVaoAAAAAAAAACqVVVVqoAAAAAAAAAAKlVVVaoAAAAAAAAAACpVVVagAAAAAAAAAAAqVVVaoAAAAAAAAAAAKlVVaoAAAAAAAAAAACpVVWoAAAAAAAAAAAAqVVWoAAAAACqqqAAAqVVVqAAAAAKqqqqoAqlVVqAAAAAqqqqqqqqlVVagAAAAqpVVVqqqlVVagAAAAqlVVVVWqVVVWoAAAAqlVVVVVVVVVVqAAAAKlVVVVVVVVVVagAAAKlVVVVVVVVVVagAAACpVaqqqVVVVVWoAAAAqVqqqqqVVVVVqAAAAqWqqqqqqVVVVagAAAImqgAAAqpVVVWoAAAAoqAAAAAqlVVVqAAAAIqAAAAACqlVVqAAAAAIAAAAAAKpVVagAAAAAAAAAAAAKlVWoAAAAAAAAAAAACqVVqAAAAAAAAAAAAAKlVagAAAAAAAAAAAAAqVWoAAAAAAAAAAAAAKlVqAAAAAACqgAAAACpVagAAAAAKqqgAAAAKlWoAAAAAKqqqAAAACpVagAAAACpVaoAAAAqVWoAAAACpVVqAAAAKlVqAAAAAqVVWoAAACpVagAAAAqVVVqAAAAKlWoAAAAKlVVagAAACpVqAAAACpVVWoAAAAqVagAAAAqVVVqAAAAKlVqAAAAKlVVagAAAKlVagAAACpVVWoAAACpVWoAAAAKlVVqAAAAqVVagAAACpVVqAAAAKlVWoAAAAKlVqgAAACpVVqAAAACqqqgAAAAqVVWoAAAAKqqgAAAAqVVVqAAAAAKqAAAAAKlVVWoAAAAAAAAAAAKlVVVqgAAAAAAAAAACpVVVWoAAAAAAAAAACpVVVVagAAAAAAAAACqVVVVWqAAAAAAAAACqVVVVVaqAAAAAAAACqVVVVVVqoAAAAAAACqVVVVVVVqoAAAAAAKqVVVVVVVWqqAAAACqqVVVVVVVVWqqqqqqqpVVVVVVVVVWqqqqqqlVVVVVVVVVVVqqqqpVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVU= "))},
|
|
||||||
{width : 52 , height : 86 , bpp : 2, transparent : 1, buffer : E.toArrayBuffer(atob(" VVVVVVVVVVVVVVVVVVVVqqqqqqqqqqqlVVVVqqqqqqqqqqqqqqVVVqqqqqqqqqqqqqqpVVqqAAAAAAAAAAAKqlVqgAAAAAAAAAAAACqVagAAAAAAAAAAAAAKlWoAAAAAAAAAAAAAAqVqAAAAAAAAAAAAAAKlagAAAAAAAAAAAAACpWoAAAAAAAAAAAAAAqVqAAAAAAAAAAAAAAKlagAAAAAAAAAAAAACpWqAAAAAAAAAAAAAAqVaqgAAAAAAAAAAAAqVVqqqqqqqqAAAAAAKlVWqqqqqqqqAAAAACpVVVaqqqqqqAAAAACpVVVVVVVVVVqAAAAAqVVVVVVVVVVqAAAAAqVVVVVVVVVVqgAAAAKlVVVVVVVVVagAAAAKlVVVVVVVVVagAAAACpVVVVVVVVVWoAAAACpVVVVVVVVVWoAAAACqVVVVVVVVVVqAAAAAqVVVVVVVVVVqAAAAAqVVVVVVVVVVagAAAAKlVVVVVVVVVagAAAAKlVVVVVVVVVaoAAAACpVVVVVVVVVWoAAAACpVVVVVVVVVWoAAAAAqVVVVVVVVVVqAAAAAqVVVVVVVVVVqAAAAAKlVVVVVVVVVagAAAAKlVVVVVVVVVagAAAAKpVVVVVVVVVaoAAAACpVVVVVVVVVWoAAAACpVVVVVVVVVWoAAAAAqVVVVVVVVVVqAAAAAqVVVVVVVVVVqAAAAAKlVVVVVVVVVagAAAAKlVVVVVVVVVagAAAACpVVVVVVVVVWoAAAACpVVVVVVVVVWoAAAAAqVVVVVVVVVWqAAAAAqVVVVVVVVVVqAAAAAqlVVVVVVVVVqAAAAAKlVVVVVVVVVagAAAAKlVVVVVVVVVagAAAACpVVVVVVVVVWoAAAACpVVVVVVVVVWoAAAAAqVVVVVVVVVVqAAAAAqVVVVVVVVVVqAAAAAKlVVVVVVVVVagAAAAKlVVVVVVVVVWoAAAAKpVVVVVVVVVVqAAAACpVVVVVVVVVVqAAAACpVVVVVVVVVVWoAAACqVVVVVVVVVVVqAAACqVVVVVVVVVVVaoAACqVVVVVVVVVVVVqqqqqVVVVVVVVVVVVWqqqqVVVVVVVVVVVVVWqqpVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVU= "))},
|
|
||||||
{width : 52 , height : 86 , bpp : 2, transparent : 1, buffer : E.toArrayBuffer(atob(" VVVVVVVVqVVVVVVVVVVVVVWqqqqqpVVVVVVVVVVqqqqqqqqlVVVVVVVWqqqqAqqqqlVVVVVVaqoAAAAACqqVVVVVVaqAAAAAAAAKqVVVVVaoAAAAAAAAAqpVVVVaoAAAAAAAAAAqlVVVaoAAAAAAAAAACqVVVaoAAAAAAAAAAAKlVVWoAAAAAAAAAAAAqVVWoAAAAAAAAAAAAKlVVqAAAAAAAAAAAAAqVVagAAAACqqAAAAAKlVagAAAAKqqqAAAACpVWoAAAAKqqqoAAAAqVVqAAAAKpVVqAAAAKlVagAAACpVVWoAAAAqVWoAAACpVVVqAAAAKlVqAAAAqVVVagAAAKlVagAAAKlVVWoAAACpVWoAAACpVVVqAAAAqVVagAAAKlVVagAAAKlVWoAAACqVVagAAACpVVqAAAAKqqqoAAACpVVWoAAAAqqqoAAAAqVVVqgAAAAqqgAAAAqVVVWqAAAAAAAAAAAqlVVVaoAAAAAAAAAAqlVVVVqAAAAAAAAAAqlVVVVWoAAAAAAAAAKlVVVVVqAAAAAAAAAKlVVVVVqAAAAAAAAAAKlVVVVqgAAAAAAAAAKqVVVWqgAAAAAAAAAAKpVVVqgAAAAAAAAAAAqlVVqAAAAAAAAAAAACqVVqgAAAAKqqAAAAAKlVagAAAAqqqqAAAAAqVWoAAAAqqqqqAAAAKlWoAAAAqlVVqoAAACpVqAAAAKlVVVqAAAAKlagAAAKlVVVWoAAACpWoAAACpVVVVqAAAAqVqAAACpVVVVagAAAKlqAAAAKlVVVWoAAACpagAAACpVVVVqAAAAqVqAAAAKlVVVqAAAAKlagAAACqVVWqgAAACpWoAAAAKqqqqgAAAAqVqAAAAAqqqqAAAAAKlagAAAAAqqoAAAAAKlVqAAAAAAAAAAAAACpVagAAAAAAAAAAAACpVVqAAAAAAAAAAAAAqVVaoAAAAAAAAAAAAqVVVqgAAAAAAAAAAAqlVVWqAAAAAAAAAACqlVVVaqAAAAAAAAACqlVVVVqqAAAAAAAAKqVVVVVVqqoAAAAAKqqVVVVVVVqqqqqqqqqpVVVVVVVVqqqqqqqqlVVVVVVVVVWqqqqqlVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVU= "))},
|
|
||||||
{width : 52 , height : 86 , bpp : 2, transparent : 1, buffer : E.toArrayBuffer(atob(" VVVVVVValVVVVVVVVVVVVVWqqqqqVVVVVVVVVVVqqqqqqqVVVVVVVVVWqqqgKqqqVVVVVVVVWqoAAAAAqqVVVVVVVaqAAAAAAAqpVVVVVVaqAAAAAAAAqpVVVVVaoAAAAAAAACqVVVVVWoAAAAAAAAACpVVVVWoAAAAAAAAAAqlVVVWqAAAAAAAAAACqVVVVqAAAAAAAAAAAKpVVVqAAAAAAAAAAAAqVVVagAAAAKqgAAAACpVVagAAAAqqqgAAAAqVVWoAAAAKqqoAAAACpVVqAAAAKlVagAAAAqVVqAAAAKpVWqAAAAKlVagAAACpVVagAAACpVWoAAACpVVVqAAAAKlVqAAAAqVVVagAAACpVagAAAKlVVWoAAAAqVWoAAACpVVVqAAAACpVqAAAAqVVVagAAAAqVagAAACpVVagAAAAKlWoAAAAqVVWoAAAACpVqAAAACpVWoAAAAAqVagAAAAqlWqAAAAAKlVqAAAACqqqAAAAACpVagAAAAKqqAAAAAAqVWoAAAAAKoAAAAAAKlVagAAAAAAAAAAAACpVWoAAAAAAAAAAAAAqVVagAAAAAAAAAAAAKlVWqAAAAAAAAAAAACpVVagAAAAAACAAAAAqVVVqAAAAAAKiAAAAKlVVaqAAAAAKigAAACpVVVqoAAAAKpiAAAAqVVVVqoAAAqpagAAAKlVVVWqqqqqpagAAACpVVVVWqqqqlWoAAACpVVVVVWqqqVVqAAAAqVVVVVVVVVVVqAAAAKlVVVVVVVVVVqgAAACpVVVVVVVVVVqgAAACpVVVaqlVVVVqgAAAAqVVVqqqqVVWqgAAAAKlVVqqqqqqqqgAAAAKlVVagAKqqqqAAAAACpVVagAAAqqoAAAAACpVVWoAAAAAAAAAAACqVVVqAAAAAAAAAAAAqVVVagAAAAAAAAAAAqVVVWoAAAAAAAAAAAqlVVVqAAAAAAAAAAAqlVVVagAAAAAAAAAAqlVVVWoAAAAAAAAACqlVVVVagAAAAAAAACqlVVVVWqoAAAAAAAqqVVVVVVaqqAAAAAKqqVVVVVVVaqqqqqqqqpVVVVVVVVWqqqqqqqVVVVVVVVVVVqqqqqlVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVU= "))},
|
|
||||||
{width : 25 , height : 86 , bpp : 2, transparent : 1, buffer : E.toArrayBuffer(atob(" VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVaqlVVVVWqqqlVVVWqqqqlVVWqgAKqVVWqAAAKlVWqAAAAqVVqAAAAKlVagAAAAqVWoAAAAKlVqAAAACpVagAAAAqVWoAAAAKlVqAAAACpVagAAACpVWqAAAAqVVagAAAqlVVqgAAqlVVaqqqqlVVVaqqqlVVVVaqqVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVqqqVVVVVqqqqVVVWqqqqpVVVqgAAqlVVqAAACqVVqgAAAKlVagAAAAqVWoAAAAKlVqAAAACpVagAAAAqVWoAAAAKlVqAAAACpVagAAAAqVWoAAAAqVVagAAAKlVWqAAAKlVVaqACqpVVVqqqqpVVVWqqqlVVVVVqpVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV "))}
|
|
||||||
];
|
|
||||||
|
|
||||||
var drawTimeout;
|
var drawTimeout;
|
||||||
|
var fontName="";
|
||||||
function queueDraw() {
|
var settings = require('Storage').readJSON("contourclock.json", true) || {};
|
||||||
if (drawTimeout) clearTimeout(drawTimeout);
|
if (settings.fontIndex==undefined) {
|
||||||
drawTimeout = setTimeout(function() {
|
settings.fontIndex=0;
|
||||||
drawTimeout = undefined;
|
require('Storage').writeJSON("myapp.json", settings);
|
||||||
draw();
|
|
||||||
}, 60000 - (Date.now() % 60000));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function draw() {
|
function draw() {
|
||||||
var x = g.getWidth()/2;
|
|
||||||
var y = g.getHeight()/2-31;
|
|
||||||
g.reset();
|
|
||||||
var date = new Date();
|
var date = new Date();
|
||||||
var timeStr = require("locale").time(date,1);
|
|
||||||
// draw time
|
|
||||||
g.clearRect(0,y,g.getWidth()-1,y+73+24+18);
|
|
||||||
//use custom font spacing for overlapping digits
|
|
||||||
g.drawImage(digits[parseInt(date.getHours()/10)],0,y);
|
|
||||||
g.drawImage(digits[parseInt(date.getHours()%10)],37,y);
|
|
||||||
g.drawImage(digits[10],74,y);
|
|
||||||
g.drawImage(digits[parseInt(date.getMinutes()/10)],86,y);
|
|
||||||
g.drawImage(digits[parseInt(date.getMinutes()%10)],123,y);
|
|
||||||
// Draw day of the week
|
// Draw day of the week
|
||||||
y += 73;
|
g.setFont("Teletext10x18Ascii");
|
||||||
g.setFontAlign(0,-1).setFont("Teletext10x18Ascii");
|
g.clearRect(0,138,g.getWidth()-1,176);
|
||||||
g.drawString(require("locale").dow(date).toUpperCase(),x,y);
|
g.setFontAlign(0,1).drawString(require("locale").dow(date).toUpperCase(),g.getWidth()/2,g.getHeight()-18);
|
||||||
// Draw Date
|
// Draw Date
|
||||||
y += 24;
|
g.setFontAlign(0,1).drawString(require('locale').date(new Date(),1),g.getWidth()/2,g.getHeight());
|
||||||
g.drawString(require('locale').date(new Date(),1),x,y);
|
require('contourclock').drawClock(settings.fontIndex);
|
||||||
queueDraw();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
require("FontTeletext10x18Ascii").add(Graphics);
|
require("FontTeletext10x18Ascii").add(Graphics);
|
||||||
|
@ -52,3 +24,6 @@ g.clear();
|
||||||
Bangle.loadWidgets();
|
Bangle.loadWidgets();
|
||||||
Bangle.drawWidgets();
|
Bangle.drawWidgets();
|
||||||
draw();
|
draw();
|
||||||
|
setTimeout(function() {
|
||||||
|
setInterval(draw,60000);
|
||||||
|
}, 60000 - Date.now() % 60000);
|
||||||
|
|
After Width: | Height: | Size: 3.3 KiB |
After Width: | Height: | Size: 12 KiB |
|
@ -0,0 +1,43 @@
|
||||||
|
(function(back) {
|
||||||
|
Bangle.removeAllListeners('drag');
|
||||||
|
Bangle.setUI("");
|
||||||
|
var settings = require('Storage').readJSON('contourclock.json', true) || {};
|
||||||
|
if (settings.fontIndex==undefined) {
|
||||||
|
settings.fontIndex=0;
|
||||||
|
require('Storage').writeJSON("myapp.json", settings);
|
||||||
|
}
|
||||||
|
savedIndex=settings.fontIndex;
|
||||||
|
saveListener = setWatch(function() { //save changes and return to settings menu
|
||||||
|
require('Storage').writeJSON('contourclock.json', settings);
|
||||||
|
Bangle.removeAllListeners('swipe');
|
||||||
|
Bangle.removeAllListeners('lock');
|
||||||
|
clearWatch(saveListener);
|
||||||
|
g.clear();
|
||||||
|
back();
|
||||||
|
}, BTN, { repeat:false, edge:'falling' });
|
||||||
|
lockListener = Bangle.on('lock', function () { //discard changes and return to clock
|
||||||
|
settings.fontIndex=savedIndex;
|
||||||
|
require('Storage').writeJSON('contourclock.json', settings);
|
||||||
|
Bangle.removeAllListeners('swipe');
|
||||||
|
Bangle.removeAllListeners('lock');
|
||||||
|
clearWatch(saveListener);
|
||||||
|
g.clear();
|
||||||
|
load();
|
||||||
|
});
|
||||||
|
swipeListener = Bangle.on('swipe', function (direction) {
|
||||||
|
var fontName = require('contourclock').drawClock(settings.fontIndex+direction);
|
||||||
|
if (fontName) {
|
||||||
|
settings.fontIndex+=direction;
|
||||||
|
g.clearRect(0,0,g.getWidth()-1,16);
|
||||||
|
g.setFont('6x8:2x2').setFontAlign(0,-1).drawString(fontName,g.getWidth()/2,0);
|
||||||
|
} else {
|
||||||
|
require('contourclock').drawClock(settings.fontIndex);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
g.reset();
|
||||||
|
g.clear();
|
||||||
|
g.setFont('6x8:2x2').setFontAlign(0,-1);
|
||||||
|
g.drawString(require('contourclock').drawClock(settings.fontIndex),g.getWidth()/2,0);
|
||||||
|
g.drawString('Swipe - change',g.getWidth()/2,g.getHeight()-36);
|
||||||
|
g.drawString('BTN - save',g.getWidth()/2,g.getHeight()-18);
|
||||||
|
})
|
|
@ -0,0 +1,70 @@
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<link rel="stylesheet" href="../../css/spectre.min.css">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<form>
|
||||||
|
<input type="checkbox" id="BarlowCond">
|
||||||
|
<label for="BarlowCond">Barlow Condensed</label><br>
|
||||||
|
<input type="checkbox" id="BebasNeue">
|
||||||
|
<label for="BebasNeue">Bebas Neue</label><br>
|
||||||
|
<input type="checkbox" id="Dekko">
|
||||||
|
<label for="Dekko">Dekko</label><br>
|
||||||
|
<input type="checkbox" id="DinAlternate">
|
||||||
|
<label for="DinAlternate">Din Alternate</label><br>
|
||||||
|
<input type="checkbox" id="Dosis">
|
||||||
|
<label for="Dosis">Dosis</label><br>
|
||||||
|
<input type="checkbox" id="Impact">
|
||||||
|
<label for="Impact">Impact</label><br>
|
||||||
|
<input type="checkbox" id="Nunito">
|
||||||
|
<label for="Nunito">Nunito</label><br>
|
||||||
|
<input type="checkbox" id="OpenSansEC">
|
||||||
|
<label for="OpenSansEC">Open Sans Extra Condensed</label><br>
|
||||||
|
<input type="checkbox" id="Phosphate">
|
||||||
|
<label for="Phosphate">Phosphate</label><br>
|
||||||
|
<input type="checkbox" id="Quicksand">
|
||||||
|
<label for="Quicksand">Quicksand</label><br>
|
||||||
|
<input type="checkbox" id="SairaCond">
|
||||||
|
<label for="SairaCond">Saira Condensed</label><br>
|
||||||
|
<input type="checkbox" id="SairaEC">
|
||||||
|
<label for="SairaEC">Saira Extra Condensed</label><br>
|
||||||
|
<input type="checkbox" id="Teko">
|
||||||
|
<label for="Teko">Teko</label><br>
|
||||||
|
<input type="checkbox" id="Yumaro">
|
||||||
|
<label for="Yumaro">Yumaro</label><br>
|
||||||
|
<input type="checkbox" id="YuseiMagic">
|
||||||
|
<label for="YuseiMagic">Yusei Magic</label><br>
|
||||||
|
<p>Click <button id="upload" class="btn btn-primary">Upload</button></p>
|
||||||
|
<script src="../../core/lib/customize.js"></script>
|
||||||
|
<script>
|
||||||
|
FontList = ["BarlowCond", "BebasNeue", "Dekko", "DinAlternate", "Dosis",
|
||||||
|
"Impact", "Nunito", "OpenSansEC", "Phosphate", "Quicksand", "SairaCond", "SairaEC",
|
||||||
|
"Yumaro", "YuseiMagic"]
|
||||||
|
// When the 'upload' button is clicked...
|
||||||
|
document.getElementById("upload").addEventListener("click", function() {
|
||||||
|
var n=0;
|
||||||
|
var fonts = [];
|
||||||
|
for (fontName of FontList) {
|
||||||
|
if (document.getElementById(fontName).checked==true) {
|
||||||
|
var f = new Object();
|
||||||
|
f.name="contourclock-"+n+".json";
|
||||||
|
f.url="font-"+fontName+".json";
|
||||||
|
//fonts.push({name:"contourclock-"+n+".json", url:"font-"+fontName+".json"});
|
||||||
|
fonts.push(f);
|
||||||
|
//console.log("contourclock-"+n+".json <- font-"+fontName+".json");
|
||||||
|
n++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//console.log(fonts[0]);
|
||||||
|
sendCustomizedApp(storage=fonts);
|
||||||
|
/*sendCustomizedApp({
|
||||||
|
storage:[
|
||||||
|
{name:"myapp.app.js", url:"app.js", content:app},
|
||||||
|
]
|
||||||
|
});*/
|
||||||
|
});
|
||||||
|
|
||||||
|
</script>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
|
@ -0,0 +1,17 @@
|
||||||
|
{
|
||||||
|
"name":"BarlowCond",
|
||||||
|
"size":"100",
|
||||||
|
"characters":[
|
||||||
|
{"width" : "61", "buffer":"VVVVVVX//////1VVVVVVVVVVVVf///////9VVVVVVVVVVX/wAAAAAA/9VVVVVVVVVX/AAAAAAAAP9VVVVVVVVfwAAAAAAAAAP9VVVVVVVfwAAAAAAAAAAP1VVVVVV/AAAAAAAAAAAAPVVVVVV/AAAAAAAAAAAAA9VVVVV8AAAAAAAAAAAAAD1VVVVfAAAAAAAAAAAAAAPVVVVfAAAAAAAAAAAAAAA9VVVfAAAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAAAA9XwAAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAAPXwAAAAAAAA/AAAAAAAAD3wAAAAAAAA/8AAAAAAAA98AAAAAAAA9XwAAAAAAAD/AAAAAAAAPV8AAAAAAAA/wAAAAAAAPVfAAAAAAAAP8AAAAAAAD1XwAAAAAAAD/AAAAAAAA9VfAAAAAAAA/wAAAAAAAPVXwAAAAAAAP8AAAAAAAD1V8AAAAAAAD/AAAAAAAA9VfAAAAAAAA/wAAAAAAAPVXwAAAAAAAP8AAAAAAAD1V8AAAAAAAD/AAAAAAAA9VfAAAAAAAA/wAAAAAAAPVXwAAAAAAAP8AAAAAAAD1V8AAAAAAAD/AAAAAAAA9VfAAAAAAAA/wAAAAAAAPVXwAAAAAAAP8AAAAAAAD1V8AAAAAAAD/AAAAAAAA9VfAAAAAAAA/wAAAAAAAPVXwAAAAAAAP8AAAAAAAD1V8AAAAAAAD/AAAAAAAA9VfAAAAAAAA/wAAAAAAAPVXwAAAAAAAP8AAAAAAAD1V8AAAAAAAD/AAAAAAAA9VfAAAAAAAA/wAAAAAAAPVXwAAAAAAAP8AAAAAAAD1V8AAAAAAAD/AAAAAAAA9VfAAAAAAAA/wAAAAAAAPVXwAAAAAAAP8AAAAAAAD1V8AAAAAAAD/AAAAAAAA9VfAAAAAAAA/wAAAAAAAPVXwAAAAAAAP8AAAAAAAD1V8AAAAAAAD/AAAAAAAA9VfAAAAAAAA/wAAAAAAAPVXwAAAAAAAP8AAAAAAAD1V8AAAAAAAD/AAAAAAAA9VfAAAAAAAA/wAAAAAAAPVXwAAAAAAAP8AAAAAAAD1V8AAAAAAAD/AAAAAAAA9VfAAAAAAAA/wAAAAAAAPVXwAAAAAAAP8AAAAAAAD1V8AAAAAAAD/AAAAAAAA9VfAAAAAAAA/wAAAAAAAPVXwAAAAAAAP8AAAAAAAD1V8AAAAAAAD/AAAAAAAA9VfAAAAAAAA/wAAAAAAAPVXwAAAAAAAP8AAAAAAAD1V8AAAAAAAD/AAAAAAAA9VfAAAAAAAA/wAAAAAAAPVXwAAAAAAAP8AAAAAAAD1V8AAAAAAAD/AAAAAAAA9V8AAAAAAAA/wAAAAAAAPVfAAAAAAAAP8AAAAAAAA9XwAAAAAAAD/AAAAAAAAPXwAAAAAAAD3wAAAAAAAA/wAAAAAAAA9fAAAAAAAADwAAAAAAAAPXwAAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAAAA9VVfAAAAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAAAAPVVVfAAAAAAAAAAAAAAAPVVVV8AAAAAAAAAAAAAAD1VVVXwAAAAAAAAAAAAAD1VVVVfAAAAAAAAAAAAAD1VVVVV8AAAAAAAAAAAAD1VVVVVXwAAAAAAAAAAAP1VVVVVVfwAAAAAAAAAAP1VVVVVVV/wAAAAAAAAA/VVVVVVVVV/wAAAAAAAD/VVVVVVVVVV/////////9VVVVVVVVVVV////////1VVVVVQ=="},
|
||||||
|
{"width" : "40", "buffer":"VVVVVVVVVVVVVVVVV/////////1VV///////////Vf/8AAAAAAAAD3/8AAAAAAAAAA//AAAAAAAAAAAP8AAAAAAAAAAAD/AAAAAAAAAAAA/wAAAAAAAAAAAP8AAAAAAAAAAAD/AAAAAAAAAAAA/wAAAAAAAAAAAP8AAAAAAAAAAAD/AAAAAAAAAAAA/wAAAAAAAAAAAP8AAAAAAAAAAAD/AAAAAAAAAAAA/wAAAAAAAAAAAP8AAAAAAAAAAAD/AAAAAAAAAAAA/wAAAAAAAAAAAP8AAAAAAAAAAAD/AAAAAAAAAAAA/wAAAAAAAAAAAP8AAAAAAAAAAAD////wAAAAAAAA9f///AAAAAAAAPVVVV8AAAAAAAD1VVVfAAAAAAAA9VVVXwAAAAAAAPVVVV8AAAAAAAD1VVVfAAAAAAAA9VVVXwAAAAAAAPVVVV8AAAAAAAD1VVVfAAAAAAAA9VVVXwAAAAAAAPVVVV8AAAAAAAD1VVVfAAAAAAAA9VVVXwAAAAAAAPVVVV8AAAAAAAD1VVVfAAAAAAAA9VVVXwAAAAAAAPVVVV8AAAAAAAD1VVVfAAAAAAAA9VVVXwAAAAAAAPVVVV8AAAAAAAD1VVVfAAAAAAAA9VVVXwAAAAAAAPVVVV8AAAAAAAD1VVVfAAAAAAAA9VVVXwAAAAAAAPVVVV8AAAAAAAD1VVVfAAAAAAAA9VVVXwAAAAAAAPVVVV8AAAAAAAD1VVVfAAAAAAAA9VVVXwAAAAAAAPVVVV8AAAAAAAD1VVVfAAAAAAAA9VVVXwAAAAAAAPVVVV8AAAAAAAD1VVVfAAAAAAAA9VVVXwAAAAAAAPVVVV8AAAAAAAD1VVVfAAAAAAAA9VVVXwAAAAAAAPVVVV8AAAAAAAD1VVVfAAAAAAAA9VVVXwAAAAAAAPVVVV8AAAAAAAD1VVVfAAAAAAAA9VVVXwAAAAAAAPVVVV8AAAAAAAD1VVVfAAAAAAAA9VVVXwAAAAAAAPVVVV8AAAAAAAD1VVVfAAAAAAAA9VVVXwAAAAAAAPVVVV8AAAAAAAD1VVVfAAAAAAAA9VVVXwAAAAAAAPVVVV8AAAAAAAD1VVVfAAAAAAAA9VVVXwAAAAAAAPVVVV8AAAAAAAD1VVVfAAAAAAAA9VVVXwAAAAAAAPVVVV8AAAAAAAD1VVVfAAAAAAAA9VVVXwAAAAAAAPVVVV8AAAAAAAD1VVVfAAAAAAAA9VVVXwAAAAAAAPVVVV8AAAAAAAD1VVVfAAAAAAAA9VVVXwAAAAAAAPVVVV8AAAAAAAD1VVVfAAAAAAAA9VVVX/////////VVVVf////////Q=="},
|
||||||
|
{"width" : "63", "buffer":"VVVVVVVV/////9VVVVVVVVVVVVVV///////9VVVVVVVVVVVV//AAAAAD/1VVVVVVVVVVf/AAAAAAAD/VVVVVVVVVX/AAAAAAAAAP9VVVVVVVV/wAAAAAAAAAA/VVVVVVVX8AAAAAAAAAAAD1VVVVVV/AAAAAAAAAAAAA/VVVVVV8AAAAAAAAAAAAAP1VVVVfwAAAAAAAAAAAAAA9VVVVfAAAAAAAAAAAAAAA9VVVV8AAAAAAAAAAAAAAAPVVVXwAAAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAAA9fAAAAAAAAD/AAAAAAAAA98AAAAAAAAP/wAAAAAAAA98AAAAAAAA9V8AAAAAAAA98AAAAAAAA9V8AAAAAAAA98AAAAAAAA9VfAAAAAAAA98AAAAAAAA9VfAAAAAAAA98AAAAAAAA9VfAAAAAAAA98AAAAAAAA9VfAAAAAAAA98AAAAAAAA9VfAAAAAAAA98AAAAAAAA9V8AAAAAAAA98AAAAAAAA9V8AAAAAAAA98AAAAAAAA9V8AAAAAAAA9f////////1XwAAAAAAAA9X////////VXwAAAAAAAA9VVVVVVVVVVXwAAAAAAAA9VVVVVVVVVVfAAAAAAAAD1VVVVVVVVVVfAAAAAAAAD1VVVVVVVVVV8AAAAAAAAD1VVVVVVVVVV8AAAAAAAAD1VVVVVVVVVXwAAAAAAAAPVVVVVVVVVVfAAAAAAAAAPVVVVVVVVVVfAAAAAAAAAPVVVVVVVVVV8AAAAAAAAA9VVVVVVVVVXwAAAAAAAAA9VVVVVVVVVXwAAAAAAAAD1VVVVVVVVVfAAAAAAAAAD1VVVVVVVVV8AAAAAAAAAPVVVVVVVVVXwAAAAAAAAAPVVVVVVVVVfAAAAAAAAAA9VVVVVVVVVfAAAAAAAAAD1VVVVVVVVV8AAAAAAAAAD1VVVVVVVVXwAAAAAAAAAPVVVVVVVVVfAAAAAAAAAA9VVVVVVVVV8AAAAAAAAAD1VVVVVVVVXwAAAAAAAAAD1VVVVVVVVfAAAAAAAAAAPVVVVVVVVV8AAAAAAAAAA9VVVVVVVVV8AAAAAAAAAD1VVVVVVVVXwAAAAAAAAAD1VVVVVVVVfAAAAAAAAAAPVVVVVVVVV8AAAAAAAAAA9VVVVVVVVXwAAAAAAAAAD1VVVVVVVVfAAAAAAAAAAPVVVVVVVVV8AAAAAAAAAA9VVVVVVVVXwAAAAAAAAAD1VVVVVVVVfAAAAAAAAAAPVVVVVVVVVfAAAAAAAAAA9VVVVVVVVV8AAAAAAAAAD1VVVVVVVVXwAAAAAAAAAPVVVVVVVVVfAAAAAAAAAA9VVVVVVVVV8AAAAAAAAAD1VVVVVVVVXwAAAAAAAAAD1VVVVVVVVfAAAAAAAAAAA////////VfAAAAAAAAAAAP///////9fAAAAAAAAAAAAAAAAAAA/fAAAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAAPf////////////////////X///////////////////9"},
|
||||||
|
{"width" : "61", "buffer":"VVVVVVVVVVVVVVVVVVVVVf//////////////////Vf//////////////////9XwAAAAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAA9f///////AAAAAAAAAAA9V///////8AAAAAAAAAAPVVVVVVVVXwAAAAAAAAAD1VVVVVVVXwAAAAAAAAAD1VVVVVVVXwAAAAAAAAAD1VVVVVVVXwAAAAAAAAAD1VVVVVVVXwAAAAAAAAAD1VVVVVVVXwAAAAAAAAAD1VVVVVVVXwAAAAAAAAAD1VVVVVVVXwAAAAAAAAAD1VVVVVVVXwAAAAAAAAAD1VVVVVVVXwAAAAAAAAAD1VVVVVVVXwAAAAAAAAAD1VVVVVVVXwAAAAAAAAAD1VVVVVVVXwAAAAAAAAAA9VVVVVVVXwAAAAAAAAAA9VVVVVVVXwAAAAAAAAAA9VVVVVVVXwAAAAAAAAAAD1VVVVVVV8AAAAAAAAAAAP1VVVVVVXwAAAAAAAAAAA/1VVVVVV8AAAAAAAAAAAA/VVVVVVXwAAAAAAAAAAAA9VVVVVVfAAAAAAAAAAAAD1VVVVVV8AAAAAAAAAAAAPVVVVVVXwAAAAAAAAAAAA9VVVVVVfAAAAAAAAAAAAD1VVVVVV8AAAAAAAAAAAA9VVVVVVXwAAAAAAAAAAAD1VVVVVVfAAD8AAAAAAAA9VVVVVVV8AD/wAAAAAAAPVVVVVVVXwP1fAAAAAAAA9VVVVVVVf/1V8AAAAAAAPVVVVVVVV/VVXwAAAAAAD1VVVVVVVVVVV8AAAAAAA9VVVVVVVVVVVfAAAAAAAPVVVVVVVVVVVXwAAAAAAD1VVVVVVVVVVV8AAAAAAA9VVVVVVVVVVVfAAAAAAAD1VVVVVVVVVVXwAAAAAAA9VVVVVVVVVVV8AAAAAAAPVVVVVVVVVVVfAAAAAAAD1VVVVVVVVVVXwAAAAAAA9VVVVVVVVVVV8AAAAAAAPf////////VVfAAAAAAAD/////////9VXwAAAAAAA/wAAAAAAAPVV8AAAAAAAP8AAAAAAAD1VfAAAAAAAD/AAAAAAAA9VXwAAAAAAA/wAAAAAAAPVV8AAAAAAAP8AAAAAAAD1VfAAAAAAAD/AAAAAAAA9VXwAAAAAAA/wAAAAAAAD1XwAAAAAAAP8AAAAAAAA9V8AAAAAAAD/AAAAAAAAD/8AAAAAAAD3wAAAAAAAAP8AAAAAAAA98AAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAAPVVXwAAAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAAD1VVXwAAAAAAAAAAAAAAD1VVVfAAAAAAAAAAAAAAA9VVVV/AAAAAAAAAAAAAD9VVVVX8AAAAAAAAAAAAD9VVVVVX8AAAAAAAAAAAD1VVVVVVfwAAAAAAAAAAP1VVVVVVVf8AAAAAAAAA/1VVVVVVVV//AAAAAAAP/VVVVVVVVVVf////////9VVVVVVVVVVVX///////VVVVVVQ=="},
|
||||||
|
{"width" : "73", "buffer":"VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf////////9VVVVVVVVVVVVVVf/////////VVVVVVVVVVVVVVXwAAAAAAAD1VVVVVVVVVVVVVXwAAAAAAAA9VVVVVVVVVVVVVV8AAAAAAAAPVVVVVVVVVVVVVVfAAAAAAAAD1VVVVVVVVVVVVVfAAAAAAAAA9VVVVVVVVVVVVVXwAAAAAAAA9VVVVVVVVVVVVVV8AAAAAAAAPVVVVVVVVVVVVVV8AAAAAAAAD1VVVVVVVVVVVVVfAAAAAAAAD1VVVVVVVVVVVVVXwAAAAAAAA9VVVVVVVVVVVVVXwAAAAAAAAPVVVVVVVVVVVVVV8AAAAAAAAD1VVVVVVVVVVVVVfAAAAAAAAD1VVVVVVVVVVVVVfAAAAAAAAA9VVVVVVVVVVVVVXwAAAAAAAAPVVVVVVVVVVVVVV8AAAAAAAAPVVVVVVVVVVVVVV8AAAAAAAAD1VVVVVVVVVVVVVfAAAAAAAAA9VVVVVVVVVVVVVXwAAAAAAAA9VVVVVVVVVVVVVV8AAAAAAAAPVVVVVVVVVVVVVV8AAAAAAAAD1VVVVVVVVVVVVVfAAAAAAAAD1VVVVVVVVVVVVVfAAAAAAAAA9VVVVVVVVVVVVVXwAAAAAAAAPVVVVVVVVVVVVVV8AAAAAAAAD1VVVVVVVVVVVVVfAAAAAAAAD1VVVVVVVVVVVVVfAAAAAAAAA9VVVVVVVVVVVVVXwAAAAAAAAPVVVVVVVVVVVVVV8AAAAAAAAPVVVVVVVVVVVVVV8AAAAAAAAD1VVVVVVVVVVVVVfAAAAAAAAA9VVVVVVVVVVVVVXwAAAAAAAA9VVVVVVVVVVVVVXwAAAAAAAAPVVVVVVVVVVVVVV8AAAAAAAAD1VVVVVVVVVVVVVfAAAAAAAAA9VVVVVVVVVVVVVfAAAAAAAAA9VVVVVVVVVVVVVXwAAAAAAAAPV////////9VVVV8AAAAAAAAPV/////////1VVV8AAAAAAAAD1fAAAAAAAA9VVVfAAAAAAAAA9XwAAAAAAAPVVVXwAAAAAAAAPV8AAAAAAAD1VVXwAAAAAAAAPVfAAAAAAAA9VVV8AAAAAAAAD1XwAAAAAAAPVVVfAAAAAAAAA9V8AAAAAAAD1VVfAAAAAAAAA9VfAAAAAAAA9VVXwAAAAAAAAPVXwAAAAAAAPVVV8AAAAAAAAD1V8AAAAAAAD1VVfAAAAAAAAA9VfAAAAAAAA9VVfAAAAAAAAAD//AAAAAAAAD/9XwAAAAAAAAAP/AAAAAAAAAP/18AAAAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAAAAAP////////////8AAAAAAAAA//V////////////wAAAAAAAA//VVVVVVVVVVVVVfAAAAAAAA9VVVVVVVVVVVVVVXwAAAAAAAPVVVVVVVVVVVVVVV8AAAAAAAD1VVVVVVVVVVVVVVfAAAAAAAA9VVVVVVVVVVVVVVXwAAAAAAAPVVVVVVVVVVVVVVV8AAAAAAAD1VVVVVVVVVVVVVVfAAAAAAAA9VVVVVVVVVVVVVVXwAAAAAAAPVVVVVVVVVVVVVVV8AAAAAAAD1VVVVVVVVVVVVVVfAAAAAAAA9VVVVVVVVVVVVVVXwAAAAAAAPVVVVVVVVVVVVVVV8AAAAAAAD1VVVVVVVVVVVVVVfAAAAAAAA9VVVVVVVVVVVVVVXwAAAAAAAPVVVVVVVVVVVVVVV8AAAAAAAD1VVVVVVVVVVVVVVfAAAAAAAA9VVVVVVVVVVVVVVXwAAAAAAAPVVVVVVVVVVVVVVV8AAAAAAAD1VVVVVVVVVVVVVVfAAAAAAAA9VVVVVVVVVVVVVVXwAAAAAAAPVVVVVVVVVVVVVVV8AAAAAAAD1VVVVVVVVVVVVVVf////////1VVVVVVVVVVVVVVV////////1VVQ=="},
|
||||||
|
{"width" : "61", "buffer":"VVVVVVVVVVVVVVVVVVVVX///////////////////3////////////////////8AAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAA/wAAAAAAAA///////////8AAAAAAAA///////////fAAAAAAAA9VVVVVVVVVVXwAAAAAAAPVVVVVVVVVVV8AAAAAAAD1VVVVVVVVVVfAAAAAAAA9VVVVVVVVVVXwAAAAAAAPVVVVVVVVVVV8AAAAAAAD1VVVVVVVVVVfAAAAAAAA9VVVVVVVVVVXwAAAAAAAPVVVVVVVVVVV8AAAAAAAD1VVVVVVVVVVfAAAAAAAA9VVVVVVVVVVXwAAAAAAAPVVVVVVVVVVV8AAAAAAAD1VVf1VVVVVVfAAAAAAAA9V/////VVVVXwAAAAAAAPX//A///VVVV8AAAAAAAA/8AAAAD/VVVfAAAAAAAADwAAAAAD9VVXwAAAAAAAAAAAAAAAD1VV8AAAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAD3wAAAAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAA/wAAAAAAAAPwAAAAAAAAP8AAAAAAAAP/AAAAAAAAD/AAAAAAAAPV8AAAAAAAA//////////VXwAAAAAAAPf////////VV8AAAAAAAD1VVVVVVVVVVfAAAAAAAA9VVVVVVVVVVXwAAAAAAAPVVVVVVVVVVV8AAAAAAAD1VVVVVVVVVVfAAAAAAAA9VVVVVVVVVVXwAAAAAAAPX///////9VV8AAAAAAAD3////////9VfAAAAAAAA/wAAAAAAAPVXwAAAAAAAP8AAAAAAAD1V8AAAAAAAD/AAAAAAAAPVfAAAAAAAA/wAAAAAAAD1XwAAAAAAAP8AAAAAAAA9XwAAAAAAAD/AAAAAAAAD/wAAAAAAAA/wAAAAAAAAPwAAAAAAAAPfAAAAAAAAAAAAAAAAAAD3wAAAAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAD3wAAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAAA9XwAAAAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAAAA9VVfAAAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAAA9VVVfAAAAAAAAAAAAAAAPVVVV8AAAAAAAAAAAAAA/VVVVX8AAAAAAAAAAAAA/VVVVVfwAAAAAAAAAAAD9VVVVVVfwAAAAAAAAAAD9VVVVVVV/wAAAAAAAAA/1VVVVVVVV/8AAAAAAAD/1VVVVVVVVV/////////9VVVVVVVVVVVf///////1VVVVVQ=="},
|
||||||
|
{"width" : "62", "buffer":"VVVVVVVf/////VVVVVVVVVVVVVX///////9VVVVVVVVVVVf/8AAAAAP/1VVVVVVVVVf/AAAAAAAA/9VVVVVVVVX8AAAAAAAAAD/VVVVVVVX8AAAAAAAAAAA/VVVVVVV/AAAAAAAAAAAAPVVVVVV/AAAAAAAAAAAAAP1VVVVXwAAAAAAAAAAAAAP1VVVV8AAAAAAAAAAAAAAD1VVVfAAAAAAAAAAAAAAAPVVVXwAAAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAAAAAPVVXwAAAAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAAAA9fAAAAAAAAA8AAAAAAAAD18AAAAAAAAP8AAAAAAAAPXwAAAAAAAD18AAAAAAAA9fAAAAAAAAPV8AAAAAAAD18AAAAAAAA9XwAAAAAAAPXwAAAAAAAPVfAAAAAAAA9fAAAAAAAA9V8AAAAAAAD18AAAAAAAD1XwAAAAAAAPXwAAAAAAAPVfAAAAAAAA9fAAAAAAAA9V8AAAAAAAD18AAAAAAAD1X/////////XwAAAAAAAPVV////////1fAAAAAAAA9VVVVVVVVVVV8AAAAAAAD1VVX1VVVVVVXwAAAAAAAPVf////1VVVVfAAAAAAAA9f//D//9VVVV8AAAAAAAD38AAAAD/VVVXwAAAAAAAD8AAAAAA/1VVfAAAAAAAADAAAAAAAP1VV8AAAAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAAAAAA9XwAAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAAAAAD3wAAAAAAAAPwAAAAAAAAPfAAAAAAAAD/wAAAAAAAA98AAAAAAAA9XwAAAAAAAD3wAAAAAAAD1XwAAAAAAAPfAAAAAAAAPVfAAAAAAAA98AAAAAAAD1V8AAAAAAAD3wAAAAAAAPVXwAAAAAAAD/AAAAAAAA9VfAAAAAAAAP8AAAAAAAD1V8AAAAAAAA/wAAAAAAAPVXwAAAAAAAD/AAAAAAAA9VfAAAAAAAAP8AAAAAAAD1V8AAAAAAAA/wAAAAAAAPVXwAAAAAAAD/AAAAAAAA9VfAAAAAAAAP8AAAAAAAD1V8AAAAAAAA/wAAAAAAAPVXwAAAAAAAD/AAAAAAAA9VfAAAAAAAAP8AAAAAAAD1V8AAAAAAAA/wAAAAAAAPVXwAAAAAAAD/AAAAAAAAPVfAAAAAAAAPfAAAAAAAA9XwAAAAAAAA98AAAAAAAA/8AAAAAAAAD3wAAAAAAAA/AAAAAAAAA9fAAAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAAAAD1VVXwAAAAAAAAAAAAAAAPVVVXwAAAAAAAAAAAAAAD1VVVXwAAAAAAAAAAAAAA9VVVVX8AAAAAAAAAAAAA/VVVVVX8AAAAAAAAAAAAP1VVVVVV/AAAAAAAAAAAP1VVVVVVV/wAAAAAAAAAP9VVVVVVVVf/AAAAAAAA/9VVVVVVVVVX/////////9VVVVVVVVVVVf///////1VVVVVU="},
|
||||||
|
{"width" : "60", "buffer":"VVVVVVVVVVVVVVVVVVVVf//////////////////9////////////////////8AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAP8AAAAAAD//AAAAAAAAAP8AAAAAAP//wAAAAAAAAP8AAAAAA9VV8AAAAAAAAP8AAAAAA9VV8AAAAAAAAP8AAAAAA9VV8AAAAAAAAP8AAAAAA9VV8AAAAAAAA98AAAAAA9VXwAAAAAAAA9///////9VXwAAAAAAAA9f//////1VfAAAAAAAAD1VVVVVVVVVfAAAAAAAAD1VVVVVVVVVfAAAAAAAAD1VVVVVVVVVfAAAAAAAAD1VVVVVVVVV8AAAAAAAAPVVVVVVVVVV8AAAAAAAAPVVVVVVVVVV8AAAAAAAA9VVVVVVVVVXwAAAAAAAA9VVVVVVVVVXwAAAAAAAA9VVVVVVVVVXwAAAAAAAA9VVVVVVVVVXwAAAAAAAD1VVVVVVVVVfAAAAAAAAD1VVVVVVVVVfAAAAAAAAD1VVVVVVVVVfAAAAAAAAPVVVVVVVVVV8AAAAAAAAPVVVVVVVVVV8AAAAAAAAPVVVVVVVVVV8AAAAAAAA9VVVVVVVVVXwAAAAAAAA9VVVVVVVVVXwAAAAAAAA9VVVVVVVVVXwAAAAAAAD1VVVVVVVVVfAAAAAAAAD1VVVVVVVVVfAAAAAAAAD1VVVVVVVVVfAAAAAAAAD1VVVVVVVVV8AAAAAAAAPVVVVVVVVVV8AAAAAAAAPVVVVVVVVVV8AAAAAAAAPVVVVVVVVVV8AAAAAAAA9VVVVVVVVVXwAAAAAAAA9VVVVVVVVVXwAAAAAAAA9VVVVVVVVVXwAAAAAAAD1VVVVVVVVVfAAAAAAAAD1VVVVVVVVVfAAAAAAAAD1VVVVVVVVVfAAAAAAAAPVVVVVVVVVV8AAAAAAAAPVVVVVVVVVV8AAAAAAAAPVVVVVVVVVV8AAAAAAAAPVVVVVVVVVXwAAAAAAAA9VVVVVVVVVXwAAAAAAAA9VVVVVVVVVXwAAAAAAAA9VVVVVVVVVXwAAAAAAAD1VVVVVVVVVfAAAAAAAAD1VVVVVVVVVfAAAAAAAAD1VVVVVVVVVfAAAAAAAAPVVVVVVVVVV8AAAAAAAAPVVVVVVVVVV8AAAAAAAAPVVVVVVVVVV8AAAAAAAAPVVVVVVVVVXwAAAAAAAA9VVVVVVVVVXwAAAAAAAA9VVVVVVVVVXwAAAAAAAD1VVVVVVVVVfAAAAAAAAD1VVVVVVVVVfAAAAAAAAD1VVVVVVVVVfAAAAAAAAD1VVVVVVVVVfAAAAAAAAPVVVVVVVVVV8AAAAAAAAPVVVVVVVVVV8AAAAAAAAPVVVVVVVVVV8AAAAAAAA9VVVVVVVVVXwAAAAAAAA9VVVVVVVVVXwAAAAAAAA9VVVVVVVVVXwAAAAAAAD1VVVVVVVVVfAAAAAAAAD1VVVVVVVVVfAAAAAAAAD1VVVVVVVVVfAAAAAAAAD1VVVVVVVVV8AAAAAAAAPVVVVVVVVVV8AAAAAAAAPVVVVVVVVVV8AAAAAAAAPVVVVVVVVVV8AAAAAAAA9VVVVVVVVVV8AAAAAAAA9VVVVVVVVVV/////////1VVVVVVVVVVf////////VVVVVVVV"},
|
||||||
|
{"width" : "60", "buffer":"VVVVVVf//////9VVVVVVVVVVVf////////9VVVVVVVVVX/wAAAAAAD/1VVVVVVVVfwAAAAAAAAD/VVVVVVVX8AAAAAAAAAAP1VVVVVVfwAAAAAAAAAAA/VVVVVV8AAAAAAAAAAAAP1VVVVXwAAAAAAAAAAAAA9VVVVfAAAAAAAAAAAAAAPVVVV8AAAAAAAAAAAAAAD1VVXwAAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAAA9VVfAAAAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAP8AAAAAAAAD8AAAAAAAAP8AAAAAAAAP/AAAAAAAAP8AAAAAAAA9XwAAAAAAAP8AAAAAAAD1XwAAAAAAAP8AAAAAAAD1XwAAAAAAAP8AAAAAAAD1XwAAAAAAAP8AAAAAAAD1XwAAAAAAAP8AAAAAAAD1XwAAAAAAAP8AAAAAAAD1XwAAAAAAAP8AAAAAAAD1XwAAAAAAAP8AAAAAAAD1XwAAAAAAAP8AAAAAAAD1XwAAAAAAAPfAAAAAAAD1XwAAAAAAAPfAAAAAAAD1XwAAAAAAA9fAAAAAAAD1XwAAAAAAA9fAAAAAAAA9fAAAAAAAA9XwAAAAAAAP8AAAAAAAA9XwAAAAAAADwAAAAAAAD1XwAAAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAAD1VVV8AAAAAAAAAAAAAAPVVVVfAAAAAAAAAAAAAA9VVVVXwAAAAAAAAAAAAD1VVVVXwAAAAAAAAAAAAD1VVVVfAAAAAAAAAAAAAA9VVVV8AAAAAAAAAAAAAAPVVVXwAAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAAA9VVfAAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAAAD1XwAAAAAAADwAAAAAAAD1fAAAAAAAAP8AAAAAAAA9fAAAAAAAA9fAAAAAAAA9fAAAAAAAA9XwAAAAAAA9fAAAAAAAD1XwAAAAAAAP8AAAAAAAD1XwAAAAAAAP8AAAAAAAD1XwAAAAAAAP8AAAAAAAD1XwAAAAAAAP8AAAAAAAD1XwAAAAAAAP8AAAAAAAD1XwAAAAAAAP8AAAAAAAD1XwAAAAAAAP8AAAAAAAD1XwAAAAAAAP8AAAAAAAD1XwAAAAAAAP8AAAAAAAD1XwAAAAAAAP8AAAAAAAD1XwAAAAAAAP8AAAAAAAD1XwAAAAAAAP8AAAAAAAD1XwAAAAAAAP8AAAAAAAA9XwAAAAAAAP8AAAAAAAAP/AAAAAAAAPfAAAAAAAAD8AAAAAAAAPfAAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAA9XwAAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAA9VVfAAAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAAD1VVV8AAAAAAAAAAAAAAPVVVVfAAAAAAAAAAAAAA/VVVVfAAAAAAAAAAAAAD1VVVVX8AAAAAAAAAAAAP1VVVVV/AAAAAAAAAAAA/VVVVVVXwAAAAAAAAAAD1VVVVVVV/AAAAAAAAAA/VVVVVVVVf8AAAAAAAAP9VVVVVVVVV/8AAAAAAP/VVVVVVVVVVX////////1VVVVVVVVVVVX//////1VVVVVV"},
|
||||||
|
{"width" : "62", "buffer":"VVVVVVVf/////1VVVVVVVVVVVVX////////VVVVVVVVVVVX/8AAAAAD/9VVVVVVVVVf/AAAAAAAAP/VVVVVVVVX/AAAAAAAAAA/1VVVVVVX8AAAAAAAAAAAP9VVVVVV/AAAAAAAAAAAAD9VVVVVfAAAAAAAAAAAAAA9VVVVXwAAAAAAAAAAAAAA9VVVV8AAAAAAAAAAAAAAA9VVVfAAAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAAA9XwAAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAAAAAD3wAAAAAAAADwAAAAAAAAPfAAAAAAAAA/wAAAAAAAA98AAAAAAAAPXwAAAAAAAD3wAAAAAAAA9XwAAAAAAAPfAAAAAAAAPVfAAAAAAAA98AAAAAAAA9V8AAAAAAAD3wAAAAAAAD1XwAAAAAAAPfAAAAAAAAPVfAAAAAAAAP8AAAAAAAA9V8AAAAAAAA/wAAAAAAAD1XwAAAAAAAD/AAAAAAAAPVfAAAAAAAAP8AAAAAAAA9V8AAAAAAAA/wAAAAAAAD1XwAAAAAAAD/AAAAAAAAPVfAAAAAAAAP8AAAAAAAA9V8AAAAAAAA/wAAAAAAAD1XwAAAAAAAD/AAAAAAAAPVfAAAAAAAAP8AAAAAAAA9V8AAAAAAAA/wAAAAAAAD1XwAAAAAAAD/AAAAAAAAPVfAAAAAAAAPfAAAAAAAA9V8AAAAAAAA98AAAAAAAA9fAAAAAAAAD3wAAAAAAAA/wAAAAAAAAPfAAAAAAAAA8AAAAAAAAA98AAAAAAAAAAAAAAAAAAD3wAAAAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAAAAA9XwAAAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAAAAAPVV/AAAAAAAAAAAAAAAAA9VV/AAAAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAAAPVVVfwAAAAAPAAAAAAAAA9VVVf/AAAAP/AAAAAAAAD1VVVX//wP/9fAAAAAAAAPVVVVVf///9V8AAAAAAAA9VVVVVVX9VVXwAAAAAAAD1VVVVVVVVVVfAAAAAAAAPV////////9V8AAAAAAAA9f////////9XwAAAAAAAD18AAAAAAAD1fAAAAAAAAPfAAAAAAAAPV8AAAAAAAA98AAAAAAAA9XwAAAAAAAD3wAAAAAAAD1fAAAAAAAAPfAAAAAAAAPV8AAAAAAAA98AAAAAAAA9XwAAAAAAAD3wAAAAAAAD1fAAAAAAAAPfAAAAAAAAD3wAAAAAAAA9fAAAAAAAAD8AAAAAAAAD18AAAAAAAADAAAAAAAAAPXwAAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAAAAA9XwAAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAAAAPVVXwAAAAAAAAAAAAAAAA9VVfAAAAAAAAAAAAAAAAPVVVfAAAAAAAAAAAAAAAA9VVVfAAAAAAAAAAAAAAAPVVVV8AAAAAAAAAAAAAAD1VVVV/AAAAAAAAAAAAAA9VVVVV/AAAAAAAAAAAAA/VVVVVVfwAAAAAAAAAAAP1VVVVVVfwAAAAAAAAAAP1VVVVVVVX/AAAAAAAAAP9VVVVVVVVX/wAAAAAAA/9VVVVVVVVVVf////////9VVVVVVVVVVVX///////1VVVVVU="},
|
||||||
|
{"width" : "27", "buffer":"VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf//VVVVVf////VVVV/wAA/1VVfwAAAA/VV/AAAAAP1V8AAAAAD1XwAAAAAA9fAAAAAAAPfAAAAAAAPfAAAAAAAP8AAAAAAAP8AAAAAAAP8AAAAAAAP8AAAAAAAP8AAAAAAAP8AAAAAAAP8AAAAAAAP8AAAAAAAP8AAAAAAAPfAAAAAAAPfAAAAAAAPXwAAAAAA9XwAAAAAA9V8AAAAAD1VfwAAAA/VVX/AAAP9VVVf////VVVVV///1VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV///1VVVVf////VVVX/AAAP9VVfwAAAA/VV8AAAAAD1XwAAAAAA9XwAAAAAAPfAAAAAAAPfAAAAAAAPfAAAAAAAP8AAAAAAAP8AAAAAAAP8AAAAAAAP8AAAAAAAP8AAAAAAAP8AAAAAAAP8AAAAAAAP8AAAAAAAPfAAAAAAAPfAAAAAAAPfAAAAAAAPXwAAAAAA9V8AAAAAD1V/AAAAAP1VXwAAAA/VVV/wAA/1VVVf////VVVVVf//VVV"}
|
||||||
|
]
|
||||||
|
}
|
|
@ -0,0 +1,17 @@
|
||||||
|
{
|
||||||
|
"name":"BebasNeue",
|
||||||
|
"size":"98",
|
||||||
|
"characters":[
|
||||||
|
{"width" : "47", "buffer":"VVVVf//////VVVVVVVVf///////1VVVVVVf8AAAAAAP9VVVVVX8AAAAAAAD9VVVVV8AAAAAAAAA/VVVV/AAAAAAAAAA/VVVXwAAAAAAAAAAPVVV8AAAAAAAAAAA9VVfAAAAAAAAAAAA9VXwAAAAAAAAAAAA9VfAAAAAAAAAAAAD1V8AAAAAAAAAAAAPVfAAAAAAAAAAAAAPV8AAAAAP/wAAAAA9fAAAAAD//wAAAAA98AAAAA9VXwAAAAD3wAAAAPVVXwAAAAPfAAAAD1VVXwAAAA98AAAA9VVVXwAAAA/wAAAD1VVVfAAAAD/AAAAPVVVV8AAAAP8AAAA9VVVXwAAAA/wAAAPVVVVXwAAAD/AAAA9VVVVfAAAAP8AAAD1VVVV8AAAA/wAAAPVVVVXwAAAD/AAAA9VVVVfAAAAP8AAAD1VVVV8AAAA/wAAAPVVVVXwAAAD/AAAA9VVVVfAAAAP8AAAD1VVVV8AAAA/wAAAPVVVVXwAAAD/AAAA9VVVVfAAAAP8AAAD1VVVV8AAAA/wAAAPVVVVXwAAAD/AAAA9VVVVfAAAAP8AAAD1VVVV8AAAA/wAAAPVVVVXwAAAD/AAAA9VVVVfAAAAP8AAAD1VVVV8AAAA/wAAAPVVVVXwAAAD/AAAA9VVVVfAAAAP8AAAD1VVVV8AAAA/wAAAPVVVVXwAAAD/AAAA9VVVVfAAAAP8AAAD1VVVV8AAAA/wAAAPVVVVXwAAAD/AAAA9VVVVfAAAAP8AAAD1VVVV8AAAA/wAAAPVVVVXwAAAD/AAAA9VVVVfAAAAP8AAAD1VVVV8AAAA/wAAAPVVVVXwAAAD/AAAA9VVVVfAAAAP8AAAD1VVVV8AAAA/wAAAPVVVVXwAAAD/AAAA9VVVVfAAAAP8AAAD1VVVV8AAAA/wAAAPVVVVXwAAAD/AAAA9VVVVfAAAAP8AAAD1VVVV8AAAA/wAAAPVVVVXwAAAD/AAAA9VVVVfAAAAP8AAAD1VVVV8AAAA/wAAAPVVVVXwAAAD/AAAA9VVVVfAAAAP8AAAD1VVVV8AAAA/wAAAPVVVVXwAAAD/AAAA9VVVVfAAAAP8AAAD1VVVV8AAAA/wAAAPVVVVXwAAAD/AAAA9VVVVfAAAAP8AAAD1VVVV8AAAA/wAAAPVVVVXwAAAD/AAAA9VVVVfAAAAP8AAAD1VVVV8AAAA/wAAAD1VVVXwAAAD/AAAAPVVVV8AAAAP8AAAA9VVVXwAAAA/wAAAD1VVVfAAAAD/AAAAD1VVXwAAAA98AAAAPVVVfAAAAD3wAAAAP1VfwAAAAPfAAAAAP//8AAAAA9fAAAAAD/8AAAAAD18AAAAAAAAAAAAA9XwAAAAAAAAAAAAD1XwAAAAAAAAAAAA9VfAAAAAAAAAAAAD1VfAAAAAAAAAAAA9VVfAAAAAAAAAAAPVVV8AAAAAAAAAAA9VVV8AAAAAAAAAAPVVVV/AAAAAAAAAP1VVVV/AAAAAAAAD9VVVVVfwAAAAAAD9VVVVVVf////////VVVVVVVX///////VVVVQ" },
|
||||||
|
{"width" : "33", "buffer":"VVVVVVV///9VVVVVVX////VVVVVVXwAAPVVVVVVfAAAPVVVVVVfAAAPVVVVVV8AAAPVVVVVV8AAAPVVVVVXwAAAPVVVVVfAAAAPVVVVX8AAAAPVVVVfwAAAAPVVVf8AAAAAPf///wAAAAAP///wAAAAAAP8AAAAAAAAAP8AAAAAAAAAP8AAAAAAAAAP8AAAAAAAAAP8AAAAAAAAAP8AAAAAAAAAP8AAAAAAAAAP8AAAAAAAAAP8AAAAAAAAAP/////AAAAAP/////wAAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV8AAAAPVVVVV//////VVVVVf////9A=" },
|
||||||
|
{"width" : "47", "buffer":"VVVVX//////1VVVVVVVX///////9VVVVVVX/AAAAAAD/VVVVVV/AAAAAAAA/VVVVV/AAAAAAAAAPVVVVfwAAAAAAAAAPVVVV8AAAAAAAAAAPVVVfAAAAAAAAAAAPVVXwAAAAAAAAAAAPVVfAAAAAAAAAAAA9VXwAAAAAAAAAAAA9VfAAAAAAAAAAAAD1XwAAAAAAAAAAAAPVfAAAAAP/wAAAAAPV8AAAAD//8AAAAA9fAAAAA9VX8AAAAD18AAAAPVVV8AAAAPXwAAAD1VVV8AAAAPfAAAAPVVVXwAAAA98AAAD1VVVfAAAAD3wAAAPVVVVfAAAAPfAAAA9VVVV8AAAA98AAAD1VVVXwAAAD/AAAAPVVVVfAAAAP8AAAA9VVVV8AAAA/wAAAD1VVVXwAAAD/AAAAPVVVVfAAAAP8AAAA9VVVV8AAAA/wAAAD1VVVXwAAAD/AAAAPVVVV8AAAAP8AAAA9VVVXwAAAA/wAAAD1VVVfAAAAPf/////VVVV8AAAA9/////9VVVfAAAAD1VVVVVVVVV8AAAAPVVVVVVVVVXwAAAD1VVVVVVVVV8AAAAPVVVVVVVVVXwAAAA9VVVVVVVVV8AAAAPVVVVVVVVVfAAAAA9VVVVVVVVV8AAAAD1VVVVVVVVfAAAAA9VVVVVVVVXwAAAAD1VVVVVVVVfAAAAA9VVVVVVVVXwAAAAPVVVVVVVVV8AAAAA9VVVVVVVVfAAAAAPVVVVVVVVV8AAAAA9VVVVVVVVfAAAAAPVVVVVVVVXwAAAAD1VVVVVVVV8AAAAA9VVVVVVVVfAAAAAD1VVVVVVVXwAAAAA9VVVVVVVV8AAAAAPVVVVVVVVfAAAAAD1VVVVVVVXwAAAAA9VVVVVVVV8AAAAAD1VVVVVVVXwAAAAA9VVVVVVVV8AAAAAPVVVVVVVVfAAAAAD1VVVVVVVXwAAAAA9VVVVVVVVfAAAAAPVVVVVVVVXwAAAAD1VVVVVVVV8AAAAA9VVVVVVVVXwAAAAPVVVVVVVVV8AAAAD1VVVVVVVVXwAAAAPVVVVVVVVV8AAAAD1VVVVVVVVXwAAAA9VVVVVVVVV8AAAAPVVVVVVVVVXwAAAA9VVVVVVVVVfAAAAPVVVVVVVVVXwAAAA9VVVVVVVVVfAAAAPVVVVVVVVVV8AAAA9VVVVVVVVVfAAAAPVVVVVVVVVV8AAAA9VVVVVVVVVXwAAAD1VVVVVVVVVfAAAAPVVVVVVVVVV8AAAA9VVVVVVVVVXwAAAD1VVVVVVVVVfAAAA9VVVVVVVVVV8AAAA/////////9XwAAAA/////////9fAAAAAAAAAAAAAD3wAAAAAAAAAAAAAPfAAAAAAAAAAAAAA98AAAAAAAAAAAAAD3wAAAAAAAAAAAAAPfAAAAAAAAAAAAAA98AAAAAAAAAAAAAD3wAAAAAAAAAAAAAPfAAAAAAAAAAAAAA98AAAAAAAAAAAAAD3wAAAAAAAAAAAAAPfAAAAAAAAAAAAAA9///////////////1//////////////9Q" },
|
||||||
|
{"width" : "47", "buffer":"VVVVf//////VVVVVVVVf///////1VVVVVVf8AAAAAAP9VVVVVX8AAAAAAAD9VVVVV8AAAAAAAAA9VVVVfAAAAAAAAAA9VVVXwAAAAAAAAAA9VVV8AAAAAAAAAAA9VVXwAAAAAAAAAAA9VV8AAAAAAAAAAAD1VXwAAAAAAAAAAAD1V8AAAAAAAAAAAAPVXwAAAAAAAAAAAAPVfAAAAAP/AAAAAA9XwAAAAP//wAAAAD1fAAAAD9VfwAAAAPV8AAAA9VVXwAAAA9XwAAAD1VVXwAAAA98AAAA9VVVfAAAAD3wAAAD1VVV8AAAAPfAAAAPVVVV8AAAA98AAAA9VVVXwAAAD3wAAAPVVVVfAAAAPfAAAA9VVVV8AAAA98AAAD1VVVXwAAAD3wAAAPVVVVfAAAAPfAAAA9VVVV8AAAA98AAAD1VVVXwAAAD3/////VVVVfAAAAPX////9VVVV8AAAA9VVVVVVVVVXwAAAD1VVVVVVVVVfAAAAPVVVVVVVVVV8AAAA9VVVVVVVVVXwAAAD1VVVVVVVVV8AAAA9VVVVVVVVVXwAAAD1VVVVVVVVV8AAAAPVVVVVVVVVfAAAAA9VVVVVVVVXwAAAAPVVVVVV///8AAAAA9VVVVVX///AAAAAPVVVVVVfAAAAAAAA9VVVVVV8AAAAAAAPVVVVVVXwAAAAAAP1VVVVVVfAAAAAAD9VVVVVVV8AAAAAA9VVVVVVVXwAAAAAPVVVVVVVVfAAAAAAP1VVVVVVV8AAAAAAP1VVVVVVXwAAAAAAD1VVVVVVfAAAAAAAD1VVVVVV8AAAAAAAD1VVVVVXwAAAAAAAD1VVVVVf//wAAAAAPVVVVVV///8AAAAAPVVVVVVVVX8AAAAA9VVVVVVVVV8AAAAD1VVVVVVVVV8AAAAD1VVVVVVVVV8AAAAPVVVVVVVVVXwAAAA9VVVVVVVVVXwAAAD1VVVVVVVVVfAAAAPVVVVVVVVVV8AAAAPVVVVVVVVVXwAAAA9VVVVVVVVVfAAAAD1VVVVVVVVV8AAAAP/////1VVVXwAAAA//////VVVVfAAAAD/AAAA9VVVV8AAAAP8AAAD1VVVXwAAAA/wAAAPVVVVfAAAAD/AAAA9VVVV8AAAAP8AAAD1VVVXwAAAA/wAAAPVVVVfAAAAD/AAAA9VVVV8AAAAP8AAAD1VVVXwAAAA/wAAAPVVVVfAAAAD/AAAA9VVVV8AAAAP8AAAA9VVVXwAAAA/wAAAD1VVVfAAAAPfAAAAPVVVXwAAAA98AAAAPVVV8AAAAD18AAAAPVVfAAAAAPXwAAAAP//wAAAAD1fAAAAAP/8AAAAAPV8AAAAAAAAAAAAA9V8AAAAAAAAAAAAD1XwAAAAAAAAAAAA9VXwAAAAAAAAAAAD1VfAAAAAAAAAAAA9VVfAAAAAAAAAAAPVVVfAAAAAAAAAAA9VVV/AAAAAAAAAAPVVVV/AAAAAAAAAD1VVVVfwAAAAAAAD9VVVVVf8AAAAAAD/VVVVVVX////////VVVVVVVV///////VVVVQ" },
|
||||||
|
{"width" : "54", "buffer":"VVVVVVVVVf/////VVVVVVVVVVVV//////1VVVVVVVVVVV8AAAAD1VVVVVVVVVVV8AAAAD1VVVVVVVVVVXwAAAAD1VVVVVVVVVVXwAAAAD1VVVVVVVVVVfAAAAAD1VVVVVVVVVVfAAAAAD1VVVVVVVVVV8AAAAAD1VVVVVVVVVV8AAAAAD1VVVVVVVVVV8AAAAAD1VVVVVVVVVXwAAAAAD1VVVVVVVVVXwAAAAAD1VVVVVVVVVfAAAAAAD1VVVVVVVVVfAAAAAAD1VVVVVVVVVfAAAAAAD1VVVVVVVVV8AAAAAAD1VVVVVVVVV8AAAAAAD1VVVVVVVVXwAAAAAAD1VVVVVVVVXwAAAAAAD1VVVVVVVVXwAAAAAAD1VVVVVVVVfAAAAAAAD1VVVVVVVVfAAAAAAAD1VVVVVVVV8AAAAAAAD1VVVVVVVV8AAAAAAAD1VVVVVVVXwAAAAAAAD1VVVVVVVXwAAAAAAAD1VVVVVVVfAAAAAAAAD1VVVVVVVfAAAAAAAAD1VVVVVVVfAAAAAAAAD1VVVVVVV8AAAAAAAAD1VVVVVVV8AAAAAAAAD1VVVVVVXwAAAAAAAAD1VVVVVVXwAAAAAAAAD1VVVVVVfAAAAMAAAAD1VVVVVVfAAAA/AAAAD1VVVVVVfAAAD3wAAAD1VVVVVV8AAAD3wAAAD1VVVVVV8AAAPXwAAAD1VVVVVXwAAAPXwAAAD1VVVVVXwAAAPXwAAAD1VVVVVXwAAA9XwAAAD1VVVVVfAAAA9XwAAAD1VVVVVfAAAD1XwAAAD1VVVVV8AAAD1XwAAAD1VVVVV8AAAD1XwAAAD1VVVVXwAAAPVXwAAAD1VVVVXwAAAPVXwAAAD1VVVVXwAAA9VXwAAAD1VVVVfAAAA9VXwAAAD1VVVVfAAAA9VXwAAAD1VVVV8AAAD1VXwAAAD1VVVV8AAAD1VXwAAAD1VVVV8AAAPVVXwAAAD1VVVXwAAAPVVXwAAAD1VVVXwAAA9VVXwAAAD1VVVfAAAA9VVXwAAAD1VVVfAAAA9VVXwAAAD1VVV8AAAD1VVXwAAAD1VVV8AAAD1VVXwAAAD1VVXwAAAD1VVXwAAAD1VVXwAAAPVVVXwAAAD1VVXwAAAPVVVXwAAAD1VVfAAAA9VVVXwAAAD1VVfAAAA9VVVXwAAAD1VV8AAAAP////AAAAA//98AAAAD///8AAAAAP/98AAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAA9/////////8AAAAAP/9f/////////AAAAA//1VVVVVVVVVXwAAAD1VVVVVVVVVVVXwAAAD1VVVVVVVVVVVXwAAAD1VVVVVVVVVVVXwAAAD1VVVVVVVVVVVXwAAAD1VVVVVVVVVVVXwAAAD1VVVVVVVVVVVXwAAAD1VVVVVVVVVVVXwAAAD1VVVVVVVVVVVXwAAAD1VVVVVVVVVVVXwAAAD1VVVVVVVVVVVXwAAAD1VVVVVVVVVVVXwAAAD1VVVVVVVVVVVXwAAAD1VVVVVVVVVVVXwAAAD1VVVVVVVVVVVXwAAAD1VVVVVVVVVVVX/////1VVVVVVVVVVVV/////1VV" },
|
||||||
|
{"width" : "47", "buffer":"V/////////////1Vf/////////////1V8AAAAAAAAAAAAPVXwAAAAAAAAAAAA9VfAAAAAAAAAAAAD1V8AAAAAAAAAAAAPVXwAAAAAAAAAAAA9VfAAAAAAAAAAAAD1V8AAAAAAAAAAAAPVXwAAAAAAAAAAAA9VfAAAAAAAAAAAAD1V8AAAAAAAAAAAAPVXwAAAAAAAAAAAA9VfAAAAAAAAAAAAD1V8AAAAP////////VXwAAAD////////9VfAAAA9VVVVVVVVVV8AAAD1VVVVVVVVVXwAAAPVVVVVVVVVV8AAAA9VVVVVVVVVXwAAAD1VVVVVVVVVfAAAAPVVVVVVVVVV8AAAA9VVVVVVVVVXwAAAD1VVVVVVVVVfAAAAPVVVVVVVVVV8AAAD1VVVVVVVVVXwAAAPVVVVVVVVVVfAAAA9VVVVVVVVVV8AAAD1VVVVVVVVVXwAAAPVVVVVVVVVVfAAAA9VX///1VVVV8AAAD1X/////VVVXwAAAPX/AAAD/1VVfAAAA9/AAAAAP1VV8AAAA/AAAAAAD1VXwAAAAwAAAAAAD1VfAAAAAAAAAAAAD1V8AAAAAAAAAAAAPVXwAAAAAAAAAAAAPVfAAAAAAAAAAAAA9XwAAAAAAAAAAAAA9fAAAAAAAAAAAAAD18AAAAAAAAAAAAAPXwAAAAAAAAAAAAAPfAAAAAD//AAAAAA98AAAAA///AAAAAD3wAAAAPVVfAAAAAPfAAAAD1VVfAAAAA98AAAA9VVVfAAAAA/wAAAD1VVVfAAAAD/AAAAPVVVV8AAAAP8AAAD1VVVXwAAAA/wAAAPVVVVfAAAAD/AAAA9VVVV8AAAAP/////1VVVXwAAAA//////VVVVfAAAAD1VVVVVVVVV8AAAAPVVVVVVVVVXwAAAA9VVVVVVVVVfAAAAD1VVVVVVVVV8AAAAPVVVVVVVVVXwAAAA9VVVVVVVVVfAAAAD1VVVVVVVVV8AAAAPVVVVVVVVVXwAAAA9VVVVVVVVVfAAAAD1VVVVVVVVV8AAAAP/////1VVVXwAAAA//////VVVVfAAAAD/AAAA9VVVV8AAAAP8AAAD1VVVXwAAAA/wAAAPVVVVfAAAAD/AAAA9VVVV8AAAAP8AAAD1VVVXwAAAA/wAAAPVVVVfAAAAD/AAAA9VVVV8AAAAP8AAAD1VVVXwAAAA/wAAAPVVVVfAAAAD/AAAA9VVVV8AAAAP8AAAA9VVVXwAAAD3wAAAD1VVVfAAAAPfAAAAPVVVXwAAAA98AAAAPVVV8AAAAD18AAAAPVVfAAAAAPXwAAAAP//wAAAAD1fAAAAAP/8AAAAAPV8AAAAAAAAAAAAA9V8AAAAAAAAAAAAPVXwAAAAAAAAAAAA9VXwAAAAAAAAAAAD1VfAAAAAAAAAAAA9VVfAAAAAAAAAAAPVVVfAAAAAAAAAAA9VVVfAAAAAAAAAAPVVVVfAAAAAAAAAP1VVVVfwAAAAAAAD9VVVVVf8AAAAAAD9VVVVVVX////////VVVVVVVV///////VVVVQ" },
|
||||||
|
{"width" : "47", "buffer":"VVVVf//////1VVVVVVVf///////9VVVVVVf8AAAAAAD/VVVVVX8AAAAAAAA/VVVVV8AAAAAAAAAPVVVVfAAAAAAAAAAPVVVXwAAAAAAAAAAPVVV8AAAAAAAAAAAPVVfAAAAAAAAAAAA9VV8AAAAAAAAAAAA9VfAAAAAAAAAAAAD1V8AAAAAAAAAAAAD1XwAAAAAAAAAAAAPV8AAAAAD/8AAAAAPXwAAAAD///AAAAA9fAAAAA/VV/AAAAD3wAAAAPVVVfAAAAPfAAAAD1VVV8AAAAP8AAAAPVVVV8AAAA/wAAAA9VVVXwAAAD/AAAAPVVVVfAAAAP8AAAA9VVVVfAAAA/wAAAD1VVVV8AAAD/AAAAPVVVVXwAAAP8AAAA9VVVVfAAAA/wAAAD1VVVV//////AAAAPVVVVX/////8AAAA9VVVVVVVVVXwAAAD1VVVVVVVVVfAAAAPVVVVVVVVVV8AAAA9VVVVVVVVVXwAAAD1VVVVVVVVVfAAAAPVVVVVVVVVV8AAAA9VVVVVVVVVXwAAAD1VVf//VVVVfAAAAPVV////9VVV8AAAA9V/8AAP/VVXwAAAD1/wAAAA/VVfAAAAPfwAAAAAPVV8AAAAPwAAAAAAPVXwAAAAMAAAAAAAPVfAAAAAAAAAAAAAPV8AAAAAAAAAAAAA9XwAAAAAAAAAAAAA9fAAAAAAAAAAAAAD18AAAAAAAAAAAAAD3wAAAAAAAAAAAAAPfAAAAAAAAAAAAAA98AAAAAA/8AAAAAA/wAAAAA///AAAAAD/AAAAAP1V/AAAAAP8AAAAD1VVfAAAAA/wAAAA9VVVfAAAAD/AAAAD1VVV8AAAAP8AAAAPVVVV8AAAA/wAAAD1VVVXwAAAD/AAAAPVVVVfAAAAP8AAAA9VVVV8AAAA/wAAAD1VVVXwAAAD/AAAAPVVVVfAAAAP8AAAA9VVVV8AAAA/wAAAD1VVVXwAAAD/AAAAPVVVVfAAAAP8AAAA9VVVV8AAAA/wAAAD1VVVXwAAAD/AAAAPVVVVfAAAAP8AAAA9VVVV8AAAA/wAAAD1VVVXwAAAD/AAAAPVVVVfAAAAP8AAAA9VVVV8AAAA/wAAAD1VVVXwAAAD/AAAAPVVVVfAAAAP8AAAA9VVVV8AAAA/wAAAD1VVVXwAAAD/AAAAPVVVVfAAAAP8AAAA9VVVV8AAAA/wAAAD1VVVXwAAAD/AAAAPVVVVfAAAAP8AAAA9VVVV8AAAA/wAAAA9VVVfAAAAD/AAAAD1VVV8AAAAP8AAAAD1VVfAAAAA98AAAAD1VXwAAAAPXwAAAAD//8AAAAA9fAAAAAD//AAAAAD18AAAAAAAAAAAAA9V8AAAAAAAAAAAAD1XwAAAAAAAAAAAAPVXwAAAAAAAAAAAD1VfAAAAAAAAAAAAPVVfAAAAAAAAAAAD1VVfAAAAAAAAAAA9VVVfAAAAAAAAAAPVVVVfAAAAAAAAAD1VVVVfwAAAAAAAD9VVVVVf8AAAAAAD/VVVVVVX////////VVVVVVVV///////VVVVQ" },
|
||||||
|
{"width" : "48", "buffer":"f//////////////9f///////////////8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP//////////AAAAAPf/////////wAAAAPVVVVVVVVVV8AAAA9VVVVVVVVVV8AAAA9VVVVVVVVVV8AAAA9VVVVVVVVVXwAAAD1VVVVVVVVVXwAAAD1VVVVVVVVVXwAAAD1VVVVVVVVVfAAAAD1VVVVVVVVVfAAAAPVVVVVVVVVVfAAAAPVVVVVVVVVVfAAAAPVVVVVVVVVV8AAAAPVVVVVVVVVV8AAAA9VVVVVVVVVV8AAAA9VVVVVVVVVV8AAAD1VVVVVVVVVXwAAAD1VVVVVVVVVXwAAAD1VVVVVVVVVfAAAAD1VVVVVVVVVfAAAAD1VVVVVVVVVfAAAAPVVVVVVVVVVfAAAAPVVVVVVVVVV8AAAA9VVVVVVVVVV8AAAA9VVVVVVVVVV8AAAA9VVVVVVVVVXwAAAA9VVVVVVVVVXwAAAD1VVVVVVVVVXwAAAD1VVVVVVVVVXwAAAD1VVVVVVVVVfAAAAD1VVVVVVVVVfAAAAPVVVVVVVVVVfAAAAPVVVVVVVVVV8AAAAPVVVVVVVVVV8AAAA9VVVVVVVVVV8AAAA9VVVVVVVVVV8AAAA9VVVVVVVVVXwAAAA9VVVVVVVVVXwAAAD1VVVVVVVVVXwAAAD1VVVVVVVVVfAAAAD1VVVVVVVVVfAAAAPVVVVVVVVVVfAAAAPVVVVVVVVVV8AAAAPVVVVVVVVVV8AAAAPVVVVVVVVVV8AAAA9VVVVVVVVVV8AAAA9VVVVVVVVVXwAAAA9VVVVVVVVVXwAAAD1VVVVVVVVVXwAAAD1VVVVVVVVVfAAAAD1VVVVVVVVVfAAAAD1VVVVVVVVVfAAAAPVVVVVVVVVVfAAAAPVVVVVVVVVV8AAAAPVVVVVVVVVV8AAAA9VVVVVVVVVV8AAAA9VVVVVVVVVXwAAAA9VVVVVVVVVXwAAAA9VVVVVVVVVXwAAAD1VVVVVVVVVXwAAAD1VVVVVVVVVfAAAAD1VVVVVVVVVfAAAAPVVVVVVVVVVfAAAAPVVVVVVVVVV8AAAAPVVVVVVVVVV8AAAAPVVVVVVVVVV8AAAA9VVVVVVVVVXwAAAA9VVVVVVVVVXwAAAA9VVVVVVVVVXwAAAA9VVVVVVVVVXwAAAD1VVVVVVVVVfAAAAD1VVVVVVVVVfAAAAD1VVVVVVVVVfAAAAPVVVVVVVVVV8AAAAPVVVVVVVVVV8AAAAPVVVVVVVVVV8AAAAPVVVVVVVVVV8AAAA9VVVVVVVVVXwAAAA9VVVVVVVVVXwAAAA9VVVVVVVVVXwAAAD1VVVVVVVVVfAAAAD1VVVVVVVVVfAAAAD1VVVVVVVVVf/////1VVVVVVVVVX/////VVVVVVVV" },
|
||||||
|
{"width" : "49", "buffer":"VVVVX//////9VVVVVVVVf///////9VVVVVVV/wAAAAAAP9VVVVVV/AAAAAAAAP1VVVVV8AAAAAAAAAPVVVVV8AAAAAAAAAA9VVVV8AAAAAAAAAAD1VVV8AAAAAAAAAAAPVVV8AAAAAAAAAAAA9VVfAAAAAAAAAAAAPVVfAAAAAAAAAAAAA9VXwAAAAAAAAAAAAPVXwAAAAAAAAAAAAA9V8AAAAAD/wAAAAAPVfAAAAAP//wAAAAD1fAAAAAP1V/AAAAAPXwAAAAPVVV8AAAAD18AAAAPVVVXwAAAA9fAAAAD1VVV8AAAAPXwAAAD1VVVXwAAAD18AAAA9VVVV8AAAA9fAAAAPVVVVfAAAAPXwAAAD1VVVXwAAAD18AAAA9VVVV8AAAAPfAAAAPVVVVfAAAAD3wAAAD1VVVXwAAAA98AAAA9VVVV8AAAAPfAAAAPVVVVfAAAAD3wAAAD1VVVXwAAAA98AAAA9VVVV8AAAA9fAAAAPVVVVfAAAAPXwAAAD1VVVXwAAAD18AAAA9VVVV8AAAA9fAAAAPVVVVfAAAAPXwAAAD1VVVXwAAAD18AAAAPVVVXwAAAA9XwAAAD1VVV8AAAA9V8AAAAPVVV8AAAAPVfAAAAA9VX8AAAAD1V8AAAAD//8AAAAD1VfAAAAAP/wAAAAA9VV8AAAAAAAAAAAA9VVfAAAAAAAAAAAA9VVV8AAAAAAAAAAA/VVVX8AAAAAAAAAA/VVVVfwAAAAAAAAA9VVVVVfAAAAAAAAA9VVVVV/AAAAAAAAAD9VVVV/AAAAAAAAAAP1VVV8AAAAAAAAAAAPVVV8AAAAAAAAAAAA9VVfAAAAAAAAAAAAPVVfAAAAAAAAAAAAA9VfAAAAAA/8AAAAAD1XwAAAAD//8AAAAA9V8AAAAD9VfwAAAAPV8AAAAD1VVfAAAAA9fAAAAD1VVV8AAAAPXwAAAD1VVVfAAAAD18AAAA9VVVV8AAAA98AAAAPVVVVfAAAAD/AAAAPVVVVXwAAAA/wAAAD1VVVV8AAAAP8AAAA9VVVVfAAAAD/AAAAPVVVVV8AAAA/wAAAD1VVVVfAAAAP8AAAA9VVVVXwAAAD/AAAAPVVVVV8AAAA/wAAAD1VVVVfAAAAP8AAAA9VVVVXwAAAD/AAAAPVVVVV8AAAA/wAAAD1VVVVfAAAAP8AAAA9VVVVXwAAAD/AAAAPVVVVV8AAAA/wAAAD1VVVVfAAAAP8AAAA9VVVVfAAAAD/AAAAPVVVVXwAAAA/wAAAA9VVVV8AAAAP8AAAAPVVVVfAAAAD/AAAAD1VVVXwAAAA/wAAAAPVVVXwAAAAPfAAAAA9VVXwAAAAPXwAAAAD1VXwAAAAD18AAAAAP//wAAAAA9fAAAAAA//wAAAAAPV8AAAAAAAAAAAAAPVfAAAAAAAAAAAAAD1V8AAAAAAAAAAAAD1VfAAAAAAAAAAAAA9VV8AAAAAAAAAAAA9VVfAAAAAAAAAAAAPVVV8AAAAAAAAAAAPVVVXwAAAAAAAAAAPVVVVfwAAAAAAAAA/VVVVV/AAAAAAAAD/VVVVVV/wAAAAAAP9VVVVVVX////////1VVVVVVVV///////VVVVUA==" },
|
||||||
|
{"width" : "48", "buffer":"VVVVX//////1VVVVVVVV////////VVVVVVVf8AAAAAAP9VVVVVV/AAAAAAAA/1VVVVXwAAAAAAAAD9VVVVfAAAAAAAAAAPVVVV8AAAAAAAAAAD1VVXwAAAAAAAAAAD1VVfAAAAAAAAAAAA9VVfAAAAAAAAAAAAPVV8AAAAAAAAAAAAPVV8AAAAAAAAAAAAD1XwAAAAAAAAAAAAD1XwAAAAA//AAAAAA9XwAAAAD//8AAAAA9fAAAAAPVV/AAAAA9fAAAAA9VVXwAAAA9fAAAAD1VVXwAAAAPfAAAAPVVVV8AAAAPfAAAAPVVVV8AAAAPfAAAAPVVVVfAAAAP8AAAAPVVVVfAAAAP8AAAAPVVVVfAAAAP8AAAAPVVVVfAAAAP8AAAAPVVVVfAAAAP8AAAAPVVVVfAAAAP8AAAAPVVVVfAAAAP8AAAAPVVVVfAAAAP8AAAAPVVVVfAAAAP8AAAAPVVVVfAAAAP8AAAAPVVVVfAAAAP8AAAAPVVVVfAAAAP8AAAAPVVVVfAAAAP8AAAAPVVVVfAAAAP8AAAAPVVVVfAAAAP8AAAAPVVVVfAAAAP8AAAAPVVVVfAAAAP8AAAAPVVVVfAAAAP8AAAAPVVVVfAAAAP8AAAAPVVVVfAAAAP8AAAAPVVVVfAAAAP8AAAAPVVVVfAAAAP8AAAAPVVVVfAAAAP8AAAAPVVVV8AAAAP8AAAAPVVVV8AAAAPfAAAAD1VVXwAAAAPfAAAAA9VVXwAAAAPfAAAAAPVV/AAAAAPfAAAAAD//8AAAAAPfAAAAAA//AAAAAAPfAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAPXwAAAAAAAAAAAAAPXwAAAAAAAAAAAAAPV8AAAAAAAAAAAAAPV8AAAAAAAAAAAAAPVfAAAAAAAAAAAAAPVfAAAAAAAAwAAAAPVXwAAAAAAD8AAAAPVV/AAAAAA/fAAAAPVVfwAAAAD9fAAAAPVVV/wAAD/VfAAAAPVVVf////9VfAAAAPVVVVf//9VVfAAAAPVVVVVVVVVVfAAAAPVVVVVVVVVVfAAAAPVVVVVVVVVVfAAAAPVVVVVVVVVVfAAAAPVVVVVVVVVVfAAAAPVVVVVVVVVVfAAAAPVVVVVVVVVVfAAAAPf////1VVVVfAAAAPf////9VVVVfAAAAPfAAAA9VVVVfAAAAPfAAAA9VVVVfAAAAPfAAAA9VVVVfAAAAPfAAAA9VVVVfAAAAPfAAAA9VVVV8AAAAPfAAAAPVVVV8AAAAPfAAAAPVVVV8AAAAPfAAAAPVVVXwAAAAPfAAAAD1VVXwAAAA9XwAAAA9VV/AAAAA9XwAAAAP//8AAAAA9XwAAAAD//AAAAAA9XwAAAAAAAAAAAAD1V8AAAAAAAAAAAAD1V8AAAAAAAAAAAAPVVfAAAAAAAAAAAAPVVfAAAAAAAAAAAAPVVXwAAAAAAAAAAA9VVV8AAAAAAAAAAD1VVV/AAAAAAAAAAPVVVVfwAAAAAAAAA9VVVVV/AAAAAAAAP1VVVVVf8AAAAAAD/VVVVVVV////////1VVVVVVVX//////9VVVV" },
|
||||||
|
{"width" : "15", "buffer":"VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/////////8AAAP8AAAP8AAAP8AAAP8AAAP8AAAP8AAAP8AAAP8AAAP8AAAP8AAAP8AAAP8AAAP//////////VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/////////8AAAP8AAAP8AAAP8AAAP8AAAP8AAAP8AAAP8AAAP8AAAP8AAAP8AAAP8AAAP8AAAP/////f////A=" }
|
||||||
|
]
|
||||||
|
}
|
|
@ -0,0 +1,17 @@
|
||||||
|
{
|
||||||
|
"name":"Dekko",
|
||||||
|
"size":"100",
|
||||||
|
"characters":[
|
||||||
|
{"width" : "72", "buffer":"VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/1VVVVVVVVVVVVVVVVVVVf/////9VVVVVVVVVVVVVVVV///wAP//9VVVVVVVVVVVVVVf/wAAAAAD/1VVVVVVVVVVVVX/AAAAAAAAD/VVVVVVVVVVVV/wAAAAAAAAAP9VVVVVVVVVVX8AAAAAAAAAAA/VVVVVVVVVVfAAAAAAAAAAAAD1VVVVVVVVX8AAAAAAAAAAAAA9VVVVVVVVfwAAAAAAAAAAAAAP1VVVVVVV8AAAAAAAAAAAAAAD1VVVVVVXwAAAAAAAAAAAAAAA9VVVVVVfAAAAAAAAAAAAAAAAPVVVVVVfAAAAAAAAAAAAAAAAD1VVVVV8AAAAAAAAAAAAAAAAD1VVVVXwAAAAAAAADAAAAAAAA9VVVVXwAAAAAAD///8AAAAAAPVVVVfAAAAAAP//9//8AAAAAPVVVV8AAAAAD/9VVVX/wAAAAPVVVV8AAAAA/1VVVVVX8AAAAD1VVXwAAAAP9VVVVVVVfwAAAD1VVXwAAAA/VVVVVVVVX8AAAA9VVfAAAAD1VVVVVVVVVfAAAA9VVfAAAAPVVVVVVVVVVXwAAAPVVfAAAA9VVVVVVVVVVV8AAAPVV8AAAD1VVVVVVVVVVV8AAAPVV8AAAPVVVVVVVVVVVVfAAAPVV8AAA9VVVVVVVVVVVVXwAAD1XwAAA9VVVVVVVVVVVVXwAAD1XwAAD1VVVVVVVVVVVVV8AAD1XwAAPVVVVVVVVVVVVVV8AAD1XwAAPVVVVVVVVVVVVVVfAAA9fAAA9VVVVVVVVVVVVVVfAAA9fAAA9VVVVVVVVVVVVVVfAAA9fAAA9VVVVVVVVVVVVVVXwAA9fAAD1VVVVVVVVVVVVVVXwAA9fAAD1VVVVVVVVVVVVVVXwAA9fAAD1VVVVVVVVVVVVVVV8AA98AAPVVVVVVVVVVVVVVVV8AA98AAPVVVVVVVVVVVVVVVV8AAP8AAPVVVVVVVVVVVVVVVV8AAP8AAPVVVVVVVVVVVVVVVV8AAP8AAPVVVVVVVVVVVVVVVV8AAP8AAPVVVVVVVVVVVVVVVVfAAP8AAPVVVVVVVVVVVVVVVVfAAP8AAPVVVVVVVVVVVVVVVVfAAP8AAPVVVVVVVVVVVVVVVVfAAP8AAPVVVVVVVVVVVVVVVVfAAP8AAPVVVVVVVVVVVVVVVVfAAP8AAPVVVVVVVVVVVVVVVVfAAP8AAPVVVVVVVVVVVVVVVV8AAP8AAPVVVVVVVVVVVVVVVV8AAP8AAPVVVVVVVVVVVVVVVV8AAP8AAPVVVVVVVVVVVVVVVV8AAP8AAPVVVVVVVVVVVVVVVV8AA98AAD1VVVVVVVVVVVVVVV8AA98AAD1VVVVVVVVVVVVVVXwAA98AAD1VVVVVVVVVVVVVVXwAA98AAA9VVVVVVVVVVVVVVXwAA9fAAA9VVVVVVVVVVVVVVXwAA9fAAA9VVVVVVVVVVVVVVfAAA9fAAAPVVVVVVVVVVVVVVfAAD1fAAAD1VVVVVVVVVVVVV8AAD1fAAAD1VVVVVVVVVVVVV8AAD1XwAAA9VVVVVVVVVVVVXwAAD1XwAAA9VVVVVVVVVVVVXwAAPVXwAAAPVVVVVVVVVVVVfAAAPVV8AAAD1VVVVVVVVVVV8AAAPVV8AAAD1VVVVVVVVVVV8AAA9VVfAAAA9VVVVVVVVVVXwAAA9VVfAAAAPVVVVVVVVVVfAAAA9VVfAAAAD1VVVVVVVVV8AAAD1VVXwAAAA/VVVVVVVVfwAAAD1VVXwAAAAP1VVVVVVV/AAAAPVVVV8AAAAA9VVVVVVfwAAAAPVVVV8AAAAAP9VVVVf/AAAAA9VVVVfAAAAAD/9VV//wAAAAD1VVVVXwAAAAAD////wAAAAAD1VVVVXwAAAAAAD//AAAAAAAPVVVVVV8AAAAAAAAAAAAAAAA9VVVVVVfAAAAAAAAAAAAAAAA9VVVVVVXwAAAAAAAAAAAAAAD1VVVVVVV8AAAAAAAAAAAAAAPVVVVVVVVfAAAAAAAAAAAAAA9VVVVVVVVfwAAAAAAAAAAAAD1VVVVVVVVV8AAAAAAAAAAAA/VVVVVVVVVVfwAAAAAAAAAAD9VVVVVVVVVVX8AAAAAAAAAA/VVVVVVVVVVVVfwAAAAAAAAP9VVVVVVVVVVVVX/wAAAAAAD/VVVVVVVVVVVVVVf/8AAAA//1VVVVVVVVVVVVVVVf//////9VVVVVVVVVVVVVVVVVX////VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV" },
|
||||||
|
{"width" : "22", "buffer":"VVVVVVVVVVV//VVVVV///VVVV8AD9VVX8AAD1VX8AAA9VXwAAAD1XwAAAA9XwAAAAPV8AAAAD18AAAAA98AAAAAPfAAAAAD/AAAAAA/wAAAAAP8AAAAAD3/AAAAA9f/8AAAPVX/wAAD1VVfAAA9VVXwAAPVVV8AAD1VVfAAA9VVXwAAPVVV8AAD1VVfAAA9VVXwAA9VVV8AAPVVVfAAD1VVXwAA9VVV8AAPVVVfAAD1VVXwAA9VVV8AAPVVVfAAD1VVXwAA9VVV8AAPVVV8AAD1VVfAAA9VVXwAAPVVV8AAPVVVfAAD1VVXwAA9VVV8AAPVVVfAAD1VVXwAA9VVV8AAPVVVfAAD1VVXwAA9VVV8AAPVVVfAAD1VVXwAA9VVV8AAPVVVfAAD1VVfAAA9VVXwAAPVVV8AAD1VVfAAA9VVXwAAPVVV8AAD1VVfAAA9VVXwAAPVVV8AAD1VVfAAD1VVXwAA9VVV8AAPVVVfAAD1VVXwAA9VVV8AAPVVVfAAD1VVXwAA9VVV8AAPVVVfAAD1VVXwAA9VVV8AAPVVV8AAD1VVfAAA9VVXwAAPVVV8AAD1VVfAAA9VVXwAAD1VV8AAA9VVfAAAPVVXwAAD1VVfAAA9VVXwAAPVVV8AAD1VVfAAA9VVXwAAPVVV8AAD1VVfAAA9VVXwAAPVVVfAAPVVVXwAD1VVVfwD1VVVV//9VVVVV/1VVVVVVVVVVVVVVVVVVVVVVVQ==" },
|
||||||
|
{"width" : "53", "buffer":"VVVVVVVVVVVVVVVVVVVVVVVf///1VVVVVVVVVVVV/////9VVVVVVVVVVV/8AAAD/VVVVVVVVVV/wAAAAA/1VVVVVVVV/wAAAAAAP1VVVVVVVfwAAAAAAAD9VVVVVVXwAAAAAAAAD9VVVVVV8AAAAAAAAAD1VVVVVfAAAAAAAAAAD1VVVVXwAAAAAAAAAAD1VVVVfAAAAAAAAAAAD1VVVXwAAAAAAAAAAAPVVVVfAAAAAAAAAAAAPVVVXwAAAAAAAAAAAA9VVVfAAAAAAAAAAAAA9VVV8AAAAA//wAAAAD1VVfAAAAD////AAAAPVVV8AAAA/1VX/AAAA9VVXwAAAPVVVVfAAAD1VVfAAAD1VVVVfAAAD1VV8AAA9VVVVVfAAAPVVXwAAPVVVVVVfAAA9VVfAAD1VVVVVV8AAD1VVfAAPVVVVVVXwAAPVVV8AD1VVVVVVfAAA9VVXwA9VVVVVVV8AAD1VVXwD1VVVVVVXwAA9VVVf/9VVVVVVVfAAD1VVVf/VVVVVVVXwAAPVVVVVVVVVVVVVfAAA9VVVVVVVVVVVVV8AAD1VVVVVVVVVVVVXwAA9VVVVVVVVVVVVVfAAD1VVVVVVVVVVVVXwAAPVVVVVVVVVVVVVfAAA9VVVVVVVVVVVVV8AAD1VVVVVVVVVVVVfAAA9VVVVVVVVVVVVV8AAD1VVVVVVVVVVVVfAAAPVVVVVVVVVVVVV8AAD1VVVVVVVVVVVVXwAAPVVVVVVVVVVVVV8AAA9VVVVVVVVVVVVXwAAPVVVVVVVVVVVVV8AAA9VVVVVVVVVVVVXwAAD1VVVVVVVVVVVV8AAA9VVVVVVVVVVVVXwAAD1VVVVVVVVVVVV8AAA9VVVVVVVVVVVVXwAAD1VVVVVVVVVVVVfAAAPVVVVVVVVVVVVXwAAD1VVVVVVVVVVVVfAAAPVVVVVVVVVVVVXwAAD1VVVVVVVVVVVVfAAAPVVVVVVVVVVVVXwAAD1VVVVVVVVVVVVfAAAPVVVVVVVVVVVVXwAAD1VVVVVVVVVVVVfAAAPVVVVVVVVVVVVXwAAA9VVVVVVVVVVVVfAAAPVVVVVVVVVVVVXwAAA9VVVVVVVVVVVVfAAAPVVVVVVVVVVVVV8AAA9VVVVVVVVVVVVfAAAPVVVVVVVVVVVVV8AAA9VVVVVVVVVVVVfAAAPVVVVVVVVVVVVV8AAA9VVVVVVVVVVVVfAAAPVVVVVVVVVVVVV8AAA9VVVVVVVVVVVVfAAAPVVVVVVVVVVVVV8AAA9VVVVVVVVVVVVfAAAPVVVVVVVVVVVVV8AAD1VVVVVVVVVVVVfAAAPVVVVVVVVVVVVXwAAA9VVVVVVVVVVVVfAAAPVVVVVVVVVVVVXwAAD1VVVVVV/1VVVV8AAAPVVVVVf//1VVVXwAAD1VVV///wD1VVV8AAAPVf///8AAPVVVfAAAAP///wAAAAPVVV8AAAAP8AAAAAAA9VVfAAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAD1VV8AAAAAAAAAAAAA/VVXwAAAAA////////VVVX/D///////////1VVVX/////1VVVVVVVVVVVVfVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVU=" },
|
||||||
|
{"width" : "58", "buffer":"VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV////1VVVVVVVVVVVVV//////1VVVVVVVVVVVf/8AAAA/1VVVVVVVVVX/8AAAAAA/1VVVVVVVVf/AAAAAAAA/VVVVVVVV/wAAAAAAAAD1VVVVVVX/AAAAAAAAAAPVVVVVVX8AAAAAAAAAAA9VVVVVXwAAAAAAAAAAAPVVVVVXwAAAAAAAAAAAD1VVVVXwAAAAAAAAAAAAPVVVVXwAAAAAAAAAAAAD1VVVV8AAAAAAAAAAAAA9VVVVfAAAAAAAAAAAAAPVVVVfAAAAAAAAAAAAAD1VVVXwAAAAAD///wAAA9VVVV8AAAAA/////AAAPVVVVfAAAAP/1VVV8AAD1VVVXwAAA/9VVVVfAAA9VVVVfAAD/VVVVVfAAAPVVVVXwAP9VVVVVXwAAPVVVVVfwP1VVVVVXwAAD1VVVVV//VVVVVVV8AAD1VVVVVV/VVVVVVV8AAD1VVVVVVVVVVVVVVfAAD1VVVVVVVVVVVVVVfAAA9VVVVVVVVVVVVVVfAAA9VVVVVVVVVVVVVVfAAA9VVVVVVVVVVVVVVfAAA9VVVVVVVVVVVVVVfAAA9VVVVVVVVVVVVVVfAAA9VVVVVVVVVVVVVVfAAA9VVVVVVVVVVVVVVfAAA9VVVVVVVVVVVVVVfAAA9VVVVVVVVVVVVVVfAAA9VVVVVVVVVVVVVV/AAA9VVVVVVVVVVVVVV/AAA9VVVVVVVVVVVVVf8AAA9VVVVVVVVVVVVV/8AAAPVVVVVVVVVVVVX/AAAAA/VVVVVVVVVVVf8AAAAAD/VVVVVVVVVVfwAAAAAAD/VVVVVVVVVfAAAAAAAAD9VVVVVVVVfAAAAAAAAAD1VVVVVVVfAAAAAAAAAAPVVVVVVVfAAAAAAAAAAA9VVVVVVXwAAAAAAAAAAPVVVVVVV8AAAAAAAAAAA9VVVVVV8AAAAAAAAAAAD1VVVVVfAAAAAAAAAAAA9VVVVVXwAAAAAAAAAAAPVVVVVV8AAAAAAAAAAAA9VVVVVfAAAAAAAAAAAAPVVVVVXwAAAAAAAAAAAA9VVVVVfAAAD//wAAAAAPVVVVVXwAAP///8AAAAD1VVVVVf///1VV/wAAAA9VVVVVV///VVVVfAAAAPVVVVVVVVVVVVVV8AAAA9VVVVVVVVVVVVVXwAAAPVVVVVVVVVVVVVVfAAAD1VVVVVVVVVVVVVV8AAA9VVVVVVVVVVVVVVXwAAPVVVVVVVVVVVVVVV8AAD1VVVVVVVVVVVVVVfAAA9VVVVVVVVVVVVVVXwAAPVVVVVVVVVVVVVVV8AAD1VVVVVVVVVVVVVVfAAA9VVVVVVVVVVVVVVfAAA9VVVVVVVVVVVVVVXwAAPVVVVVVVVVVVVVVV8AAD1VVVVVVVVVVVVVV8AAA9VVVVVVVVVVVVVV8AAAPVVVVVVVVVVVVVV8AAAD1VVVVVVVVVVVVV8AAAA9VVVVVVVVVVVVX8AAAA9VVVVVVVVVVVVf8AAAAPVV//1VVVVVVX/wAAAAPVV///9VVVVX//AAAAAD1VfAA///////wAAAAAA9VXwAAP////wAAAAAAA9VXwAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAAD1VV8AAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAP1VVXwAAAAAAAAAAAAAP1VVV8AAAAAAAAAAAAA/VVVVfAAAAAAAAAAAAD/VVVVV8AAAAAAAAAAD/9VVVVVfAAAAAAAAAP//1VVVVVX8AAAAA/////1VVVVVVVf/////////VVVVVVVVVVf////9VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVQ==" },
|
||||||
|
{"width" : "51", "buffer":"VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV/9VVVVVVVVVVVVVVX//VVVVVVVVVVVVVVfAD1VVVVVVVVVVVVV8AA9VVVVVVVVVVVVV8AA9VVVVVVVVVVVVV8AA9VVVVVVVVVVVVV8AAPVVVVVVVVVVVVXwAAPVVVVVVVVVVVVXwAAPVVVVVVVVVVVVXwAAPVVVVVVVVVVVVXwAAPVVVVVVVVVVVVXwAAPVVVVVVVVVVVVXwAAPVX/1VVVVVVVVXwAAPV//9VVVVVVVVXwAAPX8A9VVVVVVVVXwAAPXwAPVVVVVVVVXwAAPXwAPVVVVVVVVXwAAPfAAPVVVVVVVVXwAAPfAAPVVVVVVVVXwAAPfAAD1VVVVVVVXwAAPfAAD1VVVVVVVXwAAPfAAD1VVVVVVVXwAA9fAAD1VVVVVVVXwAA9fAAD1VVVVVVVXwAA9fAAD1VVVVVVVXwAA9fAAD1VVVVVVVXwAA98AAD1VVVVVVVXwAA98AAD1VVVVVVVXwAA98AAD1VVVVVVVXwAA98AAD1VVVVVVVXwAA98AAD1VVVVVVVXwAA98AAD1VVVVVVVXwAA98AAD1VVVVVVVXwAA98AAD1VVVVVVVXwAA98AAD1VVVVVVVXwAA98AAD1VVVVVVVXwAA98AAD1VVVVVVVXwAA98AAPVVVVVVVVXwAA98AAD1VVVVVVVXwAA98AAD1VVVVVVVXwAA98AAD1VVVVVVVXwAA98AAD1VVVVVVVXwAA98AAD1VVVVVVVXwAA98AAA9VVVVVVVXwAA98AAA9VVVVVVVXwAA9fAAAPVVVVVVVfAAA9fAAAD9VVVVVVfAAA9fAAAA/1VVVVVfAAA9fAAAAD/1VVVVfAAA9fAAAAAP/////8AAA9XwAAAAAP////wAAA9XwAAAAAAAAAAAAAA9XwAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAA9V8AAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAPVVfAAAAAAAAAAAAAPVVX8AAAAAAAAAAAAPVVV/wAAAAAAAAAAA9VVVX/wAAAAAAAAAA9VVVVf///AAAAAAAD1VVVVVf//////AAAD1VVVVVVVV////wAAD1VVVVVVVVVVVV8AAD1VVVVVVVVVVVV8AAD1VVVVVVVVVVVV8AAD1VVVVVVVVVVVV8AAD1VVVVVVVVVVVV8AAD1VVVVVVVVVVVV8AAD1VVVVVVVVVVVV8AAD1VVVVVVVVVVVV8AAD1VVVVVVVVVVVV8AAD1VVVVVVVVVVVV8AAD1VVVVVVVVVVVV8AAD1VVVVVVVVVVVV8AAD1VVVVVVVVVVVV8AAD1VVVVVVVVVVVV8AAD1VVVVVVVVVVVV8AAA9VVVVVVVVVVVV8AAA9VVVVVVVVVVVV8AAA9VVVVVVVVVVVV8AAA9VVVVVVVVVVVV8AAA9VVVVVVVVVVVV8AAA9VVVVVVVVVVVV8AAA9VVVVVVVVVVVV8AAA9VVVVVVVVVVVV8AAA9VVVVVVVVVVVV8AAD1VVVVVVVVVVVV8AAD1VVVVVVVVVVVV8AAD1VVVVVVVVVVVV8AAPVVVVVVVVVVVVVfAAPVVVVVVVVVVVVVfAD9VVVVVVVVVVVVVX//1VVVVVVVVVVVVVV/9VVVVVVVVVVVVVVVVVVV" },
|
||||||
|
{"width" : "61", "buffer":"VVVVVVVVVVVVVVVX//1VVVVVVVX////////////1VVVVX///////////wAA/VVVVX//wAAAAAAAAAAAA9VVVXwAAAAAAAAAAAAAAPVVVV8AAAAAAAAAAAAAAA9VVV8AAAAAAAAAAAAAAAPVVVfAAAAAAAAAAAAAAAD1VVXwAAAAAAAAAAAAAAAPVVXwAAAAAAAAAAAAAAAD1VV8AAAAAAAAAAAAAAAA9VVfAAAAAAAAAAAAAAAAPVVXwAAAAAAAAAAAAAAAD1VV8AAAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAAA9VVfAAAD////////wAAAPVVXwAAD//////////AAPVVV8AAD1VVVVVVVV////VVVfAAA9VVVVVVVVVX//1VVXwAAPVVVVVVVVVVVVVVVV8AAD1VVVVVVVVVVVVVVVfAAA9VVVVVVVVVVVVVVVXwAA9VVVVVVVVVVVVVVVV8AAPVVVVVVVVVVVVVVVVfAAD1VVVVVVVVVVVVVVVfAAA9VVVVVVVVVVVVVVVXwAAPVVVVVVVVVVVVVVVV8AAD1VVVVVVVVVVVVVVVfAAA9VVVVVVVVVVVVVVVXwAAPVVVVVVVVVVVVVVVV8AAPVVVVVVVVVVVVVVVVfAAD1VVVVVVVVVVVVVVVXwAA9VVVVVVVVVVVVVVVV8AAPVVVVVVVVVVVVVVVVfAAD1VVVVVVVVVVVVVVVXwAA9VX///1VVVVVVVVVV8AAPVf/////VVVVVVVVVfAAD1/wAAA//VVVVVVVVXwAAP/AAAAAD/VVVVVVVV8AAA8AAAAAAD9VVVVVVVfAAAAAAAAAAAD1VVVVVVXwAAAAAAAAAAAPVVVVVVV8AAAAAAAAAAAA9VVVVVVfAAAAAAAAAAAAD1VVVVVXwAAAAAAAAAAAAPVVVVVV8AAAAAAAAAAAAD1VVVVVfAAAAAAAAAAAAAPVVVVVfAAAAAAAAAAAAAD1VVVVXwAAAAAAAAAAAAAPVVVVV8AAAAAAAAAAAAAD1VVVVfAAAAAAAAAAAAAAPVVVVXwAAAAAAAAAAAAAD1VVVV8AAAAA///AAAAAA9VVVVXwAAAP////AAAAAD1VVVV8AAA/9VVX8AAAAA9VVVVf8AD/VVVVXwAAAAPVVVVVf//9VVVVVfAAAAD1VVVVVf/1VVVVVV8AAAA9VVVVVVVVVVVVVVXwAAAPVVVVVVVVVVVVVVVfAAAA9VVVVVVVVVVVVVVV8AAAPVVVVVVVVVVVVVVVXwAAD1VVVVVVVVVVVVVVV8AAA9VVVVVVVVVVVVVVVXwAAPVVVVVVVVVVVVVVVV8AAD1VVVVVVVVVVVVVVVfAAA9VVVVVVVVVVVVVVVV8AAPVVVVVVVVVVVVVVVVfAAD1VVVVVVVVVVVVVVVXwAA9VVVVVVVVVVVVVVVV8AAPVVVVVVVVVVVVVVVVfAAD1VVVVVVVVVVVVVVVfAAA9VVVVVVVVVVVVVVVXwAAPVVVVVVVVVVVVVVVV8AAD1VVVVVVVVVVVVVVV8AAD1VVVVVVVVVVVVVVV8AAA9VVVV/VVVVVVVVVV8AAAPVVVX//VVVVVVVVV8AAAD1VVX8D/VVVVVVVX8AAAA9VVXwAD/VVVVVV/8AAAA9VVV8AAD/VVVX//wAAAAPVVVfAAAD/////8AAAAAD1VVfAAAAD///wAAAAAAD1VVXwAAAAAAAAAAAAAAA9VVV8AAAAAAAAAAAAAAA9VVVfAAAAAAAAAAAAAAA9VVVXwAAAAAAAAAAAAAAPVVVV8AAAAAAAAAAAAAAPVVVVfAAAAAAAAAAAAAAPVVVVXwAAAAAAAAAAAAAPVVVVVfAAAAAAAAAAAAAPVVVVVXwAAAAAAAAAAAAPVVVVVVfAAAAAAAAAAAA/VVVVVVV/AAAAAAAAAAD/VVVVVVVX/wAAAAAAAA/9VVVVVVVVX/8AAAAAAP/1VVVVVVVVVV///AAD//9VVVVVVVVVVVVf//////VVVVVVVVVVVVVVVX//1VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVQ==" },
|
||||||
|
{"width" : "66", "buffer":"VVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/VVVVVVVVVVVVVVVVVVVV//1VVVVVVVVVVVVVVVVVVXwA9VVVVVVVVVVVVVVVVVVfAA9VVVVVVVVVVVVVVVVVV8AAPVVVVVVVVVVVVVVVVVV8AAPVVVVVVVVVVVVVVVVVXwAAPVVVVVVVVVVVVVVVVVfAAAPVVVVVVVVVVVVVVVVVfAAAPVVVVVVVVVVVVVVVVV8AAAPVVVVVVVVVVVVVVVVV8AAAPVVVVVVVVVVVVVVVVXwAAAPVVVVVVVVVVVVVVVVXwAAAPVVVVVVVVVVVVVVVVfAAAAPVVVVVVVVVVVVVVVVfAAAA9VVVVVVVVVVVVVVVV8AAAA9VVVVVVVVVVVVVVVV8AAAA9VVVVVVVVVVVVVVVXwAAAD1VVVVVVVVVVVVVVVXwAAAD1VVVVVVVVVVVVVVVfAAAAPVVVVVVVVVVVVVVVVfAAAAPVVVVVVVVVVVVVVVVfAAAAPVVVVVVVVVVVVVVVV8AAAA9VVVVVVVVVVVVVVVV8AAAA9VVVVVVVVVVVVVVVXwAAAD1VVVVVVVVVVVVVVVXwAAAD1VVVVVVVVVVVVVVVXwAAAPVVVVVVVVVVVVVVVVfAAAAPVVVVVVVVVVVVVVVVfAAAA9VVVVVVVVVVVVVVVVfAAAA9VVVVVVVVVVVVVVVV8AAAD1VVVVVVVVVVVVVVVV8AAAD1VVVVVVVVVVVVVVVXwAAAPVVVVVVVVVVVVVVVVXwAAAPVVVVVVVVVVVVVVVVXwAAA9VVVVVVVVVVVVVVVVfAAAA9VVVVVVVVVVVVVVVVfAAAD1VVVVVVVVVVVVVVVVfAAAD1VVVVVVVVVVVVVVVVfAAAPVVVVVVVVVVVVVVVVV8AAAPVVVVVVVVVVVVVVVVV8AAA9VVVVVVVVVVVVVVVVV8AAA9VVVVVVVVVVVVVVVVXwAAD1VVVVVVVVX///1VVVXwAAD1VVVVVVVX/////1VVXwAAPVVVVVVVV/8AAAP9VVXwAAPVVVVVVVX8AAAAAP1VfAAA9VVVVVVV/AAAAAAD9VfAAA9VVVVVVX8AAAAAAAPVfAAA9VVVVVVfAAAAAAAAPVfAAD1VVVVVV8AAAAAAAAD1fAAD1VVVVVXwAAAAAAAAA98AAD1VVVVVXwAAAAAAAAA98AAD1VVVVVfAAAAAAAAAA98AAPVVVVVV8AAAAAAAAAAP8AAPVVVVVV8AAAAAAAAAAP8AAPVVVVVXwAAAAAAAAAAP8AAPVVVVVXwAAAAAAAAAAP8AAPVVVVVfAAAAA//8AAAP8AAPVVVVVfAAAAP///AAAP8AAPVVVVV8AAAA/VVXwAAP8AAPVVVVV8AAAD1VVV8AAP8AAPVVVVV8AAAPVVVV8AAP8AAD1VVVXwAAA9VVVV8AAP8AAD1VVVXwAAD1VVVV8AAP8AAD1VVVXwAAPVVVVV8AAP8AAD1VVVXwAAPVVVVXwAAPfAAA9VVVfAAA9VVVVXwAAPfAAA9VVVfAAA9VVVVfAAA9fAAA9VVVfAAD1VVVVfAAA9fAAAPVVVfAAD1VVVV8AAA9fAAAPVVVfAAPVVVVXwAAA9fAAAPVVVfAAPVVVVfAAAD1fAAAD1VVfAA9VVVV8AAAD1XwAAA9VVfAA9VVVXwAAAD1XwAAAPVVfAA9VVV/AAAAPVXwAAAD1VfAA9VVf8AAAAPVXwAAAA/VfAD1VX/AAAAA9VV8AAAAP9fAA///wAAAAA9VV8AAAAA/8AAP/8AAAAAD1VV8AAAAADwAAAAAAAAAAPVVVfAAAAAAAAAAAAAAAAAPVVVfAAAAAAAAAAAAAAAAA9VVVXwAAAAAAAAAAAAAAAD1VVVXwAAAAAAAAAAAAAAAPVVVVV8AAAAAAAAAAAAAAA9VVVVV8AAAAAAAAAAAAAAD1VVVVVfAAAAAAAAAAAAAAPVVVVVVXwAAAAAAAAAAAAA9VVVVVVV8AAAAAAAAAAAAP1VVVVVVVfAAAAAAAAAAAA/VVVVVVVVX8AAAAAAAAAAP1VVVVVVVVV/wAAAAAAAAD/VVVVVVVVVVX/wAAAAAAD/1VVVVVVVVVVVf//8AAA//9VVVVVVVVVVVVVf//////9VVVVVVVVVVVVVVVVX///VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV" },
|
||||||
|
{"width" : "53", "buffer":"VVVVVVVVVVVVVVV/1Vf///////////////9X//////////////wD1fAAAAAAAAAAAAAAAD3wAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAAD3wAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAPX8AAAAAAAAAAAAAAA9X/wAAAAAAAAPwAAAD1V///////////wAAA9VVX////////9XwAAD1VVVVVVVVVVVVfAAAPVVVVVVVVVVVVV8AAA9VVVVVVVVVVVVfAAAPVVVVVVVVVVVVV8AAA9VVVVVVVVVVVVfAAAD1VVVVVVVVVVVV8AAA9VVVVVVVVVVVVXwAAD1VVVVVVVVVVVV8AAAPVVVVVVVVVVVVXwAAD1VVVVVVVVVVVV8AAAPVVVVVVVVVVVVXwAAD1VVVVVVVVVVVV8AAAPVVVVVVVVVVVVXwAAA9VVVVVVVVVVVVfAAAPVVVVVVVVVVVVXwAAA9VVVVVVVVVVVVfAAAD1VVVVVVVVVVVV8AAA9VVVVVVVVVVVVfAAAD1VVVVVVVVVVVV8AAAPVVVVVVVVVVVVfAAAD1VVVVVVVVVVVV8AAAPVVVVVVVVVVVVXwAAD1VVVVVVVVVVVV8AAAPVVVVVVVVVVVVXwAAA9VVVVVVVVVVVV8AAAPVVVVVVVVVVVVXwAAA9VVVVVVVVVVVVfAAAPVVVVVVVVVVVVXwAAA9VVVVVVVVVVVVfAAAD1VVVVVVVVVVVV8AAA9VVVVVVVVVVVVfAAAD1VVVVVVVVVVVV8AAA9VVVVVVVVVVVVfAAAD1VVVVVVVVVVVV8AAAPVVVVVVVVVVVVXwAAD1VVVVVVVVVVVV8AAAPVVVVVVVVVVVVXwAAD1VVVVVVVVVVVVfAAAPVVVVVVVVVVVVXwAAA9VVVVVVVVVVVVfAAAPVVVVVVVVVVVVXwAAA9VVVVVVVVVVVVfAAAPVVVVVVVVVVVVV8AAA9VVVVVVVVVVVVfAAAD1VVVVVVVVVVVV8AAA9VVVVVVVVVVVVXwAAD1VVVVVVVVVVVV8AAA9VVVVVVVVVVVVXwAAD1VVVVVVVVVVVV8AAA9VVVVVVVVVVVVXwAAD1VVVVVVVVVVVVfAAAPVVVVVVVVVVVVXwAAD1VVVVVVVVVVVVfAAAPVVVVVVVVVVVVV8AAD1VVVVVVVVVVVVfAAAPVVVVVVVVVVVVV8AAA9VVVVVVVVVVVVfAAAPVVVVVVVVVVVVV8AAA9VVVVVVVVVVVVXwAAPVVVVVVVVVVVVV8AAA9VVVVVVVVVVVVXwAAD1VVVVVVVVVVVVfAAAPVVVVVVVVVVVVXwAAD1VVVVVVVVVVVVfAAAPVVVVVVVVVVVVV8AAA9VVVVVVVVVVVVXwAAD1VVVVVVVVVVVV8AAA9VVVVVVVVVVVVXwAAD1VVVVVVVVVVVVfAAAPVVVVVVVVVVVVV8AAA9VVVVVVVVVVVVXwAAD1VVVVVVVVVVVVfAAAPVVVVVVVVVVVVV8AAD1VVVVVVVVVVVVXwAAPVVVVVVVVVVVVVfAAA9VVVVVVVVVVVVVfAAPVVVVVVVVVVVVVV8AD1VVVVVVVVVVVVVV///VVVVVVVVVVVVVVV//VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVU=" },
|
||||||
|
{"width" : "52", "buffer":"VVVVVVVVVV///9VVVVVVVVVVVf/////9VVVVVVVVVX//8AAAP1VVVVVVVVf/AAAAAAPVVVVVVVX/wAAAAAAA9VVVVVVf/AAAAAAAAD1VVVVVfwAAAAAAAAAPVVVVVfAAAAAAAAAAD1VVVV/AAAAAAAAAAAPVVVVfAAAAAAAAAAAD1VVVfAAAAAAAAAAAAPVVVfAAAAAAAAAAAAD1VVXwAAAAAAAAAAAA9VVXwAAAAAAAAAAAAD1VV8AAAAAAAAAAAAA9VV8AAAAAAAA/8AAAPVVfAAAAAAD///wAAD1VXwAAAAA//9VfAAAPVV8AAAAD/1VVV8AAD1V8AAAAD9VVVV8AAA9VfAAAAP1VVVVfAAAPVXwAAAP1VVVVfAAAD1V8AAAPVVVVVfAAAA9VfAAAPVVVVVXwAAAPVXwAAD1VVVVXwAAAPVV8AAD1VVVVXwAAAD1VfAAA9VVVVV8AAAA9VXwAAD1VVVV8AAAA9VVfAAA9VVVV8AAAAPVVXwAAD1VVVfAAAAPVVV8AAA9VVVfAAAA/VVVfAAAD1VVfAAAA/VVVXwAAA9VVXwAAA9VVVVfAAAD1VXwAAAPVVVVXwAAA9VXwAAAPVVVVV8AAAD1V8AAAPVVVVVXwAAA9V8AAAPVVVVVV8AAAD38AAAD1VVVVVXwAAAP8AAAD1VVVVVV8AAAAwAAAD1VVVVVVXwAAAAAAAA9VVVVVVV8AAAAAAAA9VVVVVVVXwAAAAAAA9VVVVVVVV8AAAAAAA9VVVVVVVVfAAAAAAAPVVVVVVVVfAAAAAAAPVVVVVVVVXwAAAAAAPVVVVVVVVXwAAAAAAPVVVVVVVVXwAAAAAAPVVVVVVVVXwAAAAAAPVVVVVVVVV8AAAAAAA9VVVVVVVV8AAAAAAAPVVVVVVVVfAAA/AAAD1VVVVVVVfAAA/8AAAPVVVVVVVXwAA9XwAAA9VVVVVVV8AAPVfAAAPVVVVVVV8AAPVV8AAA9VVVVVVfAAD1VfAAAPVVVVVVfAAD1VV8AAD1VVVVVXwAA9VVXwAAPVVVVVV8AAPVVV8AAD1VVVVV8AAPVVVXwAAPVVVVVfAAD1VVV8AAD1VVVVXwAA9VVVXwAAPVVVVV8AAPVVVV8AAD1VVVV8AAD1VVVXwAA9VVVVfAAD1VVVV8AAD1VVVXwAA9VVVVfAAA9VVVV8AAPVVVVXwAAPVVVVfAAD1VVVVfAAA9VVVfAAA9VVVVXwAAPVVVXwAAPVVVVV8AAD1VVV8AAPVVVVVfAAA9VVVfAAD1VVVVXwAAPVVVXwAA9VVVVV8AAD1VVV8AAPVVVVVfAAA9VVVfAAD1VVVVXwAAPVVVXwAAPVVVVXwAAD1VVV8AAD1VVVXwAAA9VVVfAAAPVVVfwAAAPVVVXwAAA/1f/wAAAD1VVV8AAAD///AAAAA9VVVfAAAAA/AAAAAA9VVVXwAAAAAAAAAAAPVVVV8AAAAAAAAAAAD1VVVfAAAAAAAAAAAD1VVVXwAAAAAAAAAAA9VVVVfAAAAAAAAAAA9VVVVXwAAAAAAAAAAPVVVVV8AAAAAAAAAAPVVVVVXwAAAAAAAAAD1VVVVV8AAAAAAAAAD1VVVVVXwAAAAAAAAD1VVVVVVfAAAAAAAAP1VVVVVVV/AAAAAAA/1VVVVVVVX/AAAAAD/VVVVVVVVVX//8AD/9VVVVVVVVVVX/////1VVVVVVVVVVVVVf/1VVVVVVVVVVVVVVVVVVVVVVVVVVQ==" },
|
||||||
|
{"width" : "58", "buffer":"VVVVVVVVVX1VVVVVVVVVVVVVVVV////9VVVVVVVVVVVVVf//w///VVVVVVVVVVVV/8AAAAP/VVVVVVVVVVX/AAAAAAD9VVVVVVVVVf8AAAAAAAD1VVVVVVVV/wAAAAAAAAP1VVVVVVV/AAAAAAAAAA/VVVVVVX8AAAAAAAAAAD1VVVVVX8AAAAAAAAAAAPVVVVVXwAAAAAAAAAAAA9VVVVXwAAAAAAAAAAAAPVVVVXwAAAAAAAAAAAAA9VVVXwAAAAAAAAAAAAAPVVVV8AAAAAAAAAAAAAA9VVV8AAAAAAP//wAAAAPVVV8AAAAAD////wAAAA9VVfAAAAA//VVV/wAAAPVVfAAAAA/1VVVV/AAAD1VXwAAAD9VVVVVV8AAA9VV8AAAD9VVVVVVXwAAPVV8AAAD1VVVVVVVfAAA9VfAAAD1VVVVVVVXwAAPVXwAAA9VVVVVVVVfAAD1V8AAA9VVVVVVVVXwAA9VfAAAPVVVVVVVVVfAAPVXwAAPVVVVVVVVVXwAD1V8AAD1VVVVVVVVVfAAPVfAAAPVVVVVVVVVXwAA9XwAAD1VVVVVVVVV8AAD18AAA9VVVVVVVVVfAAA9XwAAD1VVVVVVVVXwAAD18AAAPVVVVVVVVVfAAA9fAAAA/VVVVVVVVXwAAPXwAAAD/VVVVVVVV8AAD1fAAAAD/VVVVVVV8AAAPXwAAAAD/1VVVVX8AAAD18AAAAAD//VVX/8AAAA9XwAAAAAA/////wAAAAPV8AAAAAAAD//wAAAAAD1XwAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAD1VV8AAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAAPVVVfwAAAAAAAAAAAAAD1VVV/AAAAAAAAAAAAAA9VVVV/AAAAAAAAAAAAAPVVVVX/AAAAAAAAAAAAD1VVVVX/wAAAAAAD8AAA9VVVVVX/8AAAAA//wAAPVVVVVVV///////1fAAD1VVVVVVVf////9VXwAA9VVVVVVVVVVVVVVV8AAPVVVVVVVVVVVVVVVfAAD1VVVVVVVVVVVVVVfAAA9VVVVVVVVVVVVVVXwAAPVVVVVVVVVVVVVVV8AAD1VVVVVVVVVVVVVVfAAA9VVVVVVVVVVVVVVXwAAPVVVVVVVVVVVVVVV8AAD1VVVVVVVVVVVVVVfAAA9VVVVVVVVVVVVVVXwAA9VVVVVVVVVVVVVVV8AAPVVVVVVVVVVVVVVVfAAD1VVVVVVVVVVVVVVXwAA9VVVVVVVVVVVVVVXwAAPVVVVVVVVVVVVVVV8AAD1VVVVVVVVVVVVVVfAAA9VVVVVVVVVVVVVVXwAAPVVVVVVVVVVVVVVV8AAD1VVVVVVVVVVVVVVfAAA9VVVVVVVVVVVVVVXwAAPVVVVVVVVVVVVVVV8AAD1VVVVVVVVVVVVVV8AAA9VVVVVVVVVVVVVVfAAAPVVVVVVVVVVVVVVXwAAD1VVVVVVVVVVVVVV8AAA9VVVVVVVVVVVVVVfAAAPVVVVVVVVVVVVVVXwAAD1VVVVVVVVVVVVVV8AAA9VVVVVVVVVVVVVVfAAAPVVVVVVVVVVVVVVXwAAD1VVVVVVVVVVVVVV8AAD1VVVVVVVVVVVVVV8AAA9VVVVVVVVVVVVVVfAAAPVVVVVVVVVVVVVVXwAAD1VVVVVVVVVVVVVV8AAA9VVVVVVVVVVVVVVfAAAPVVVVVVVVVVVVVVXwAAD1VVVVVVVVVVVVVV8AAD1VVVVVVVVVVVVVVfAAA9VVVVVVVVVVVVVVV8AAPVVVVVVVVVVVVVVVfAAD1VVVVVVVVVVVVVVXwAA9VVVVVVVVVVVVVVVfAA9VVVVVVVVVVVVVVVV8APVVVVVVVVVVVVVVVVX//VVVVVVVVVVVVVVVVVf/1VQ==" },
|
||||||
|
{"width" : "15", "buffer":"VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf9VVX//VVfwD1V8AD1XwAA9fAAA9fAAA98AAA98AAAP8AAAP8AAAP8AAAP8AAAP8AAAP8AAA9fAAA9fAAA9fAAA9XwAD1V///VVf/9VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV9VVV//1VX/D9VfAAPVfAAD18AAD18AAA98AAA98AAA98AAA98AAA98AAA98AAA98AAA98AAA98AAD18AAD1fAAPVfwA9VX//1VVf/VVVVVVVVVVVV" }
|
||||||
|
]
|
||||||
|
}
|
|
@ -0,0 +1,18 @@
|
||||||
|
{
|
||||||
|
"name":"DIN Alternate",
|
||||||
|
"size":"100",
|
||||||
|
"characters":[
|
||||||
|
{"width" : "42" , "buffer":"VVVVX////9VVVVVVVV//////1VVVVVVf8AAAAD/VVVVVX/AAAAAAP1VVVVfwAAAAAAA9VVVV8AAAAAAAAP1VVXwAAAAAAAAD1VVfAAAAAAAAAA9VVfAAAAAAAAAAPVV8AAAAAAAAAAD1V8AAAAAAAAAAD1XwAAAAAAAAAAA9XwAAAA//wAAAA9fAAAAD//8AAAA9fAAAAPVVfAAAAPfAAAA9VVXwAAAPfAAAD1VVV8AAAP8AAAPVVVVfAAAP8AAAPVVVVfAAAP8AAAPVVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAAPVVVVfAAAP8AAAPVVVVfAAAP8AAAPVVVV8AAAPfAAAD1VVV8AAAPfAAAA9VVXwAAAPfAAAAPVVfAAAAPfAAAAD//8AAAA9XwAAAA//wAAAA9XwAAAAAAAAAAA9V8AAAAAAAAAAD1V8AAAAAAAAAAPVVfAAAAAAAAAAPVVXwAAAAAAAAA9VVXwAAAAAAAAD1VVV/AAAAAAAAP1VVVfwAAAAAAA9VVVVV/AAAAAAP1VVVVVf/AAAAP/VVVVVVV//wA//1VVVVVVVV////1VVVVVVVVVVf/VVVVVV" },
|
||||||
|
{"width" : "28" , "buffer":"VVVVf////1VVVf////9VVVfAAAAPVVV/AAAAD1VV/AAAAA9VV8AAAAAPVX8AAAAAD1X8AAAAAA9XwAAAAAAPfwAAAAAAD/wAAAAAAA/wAAAAAAAP8AAAAAAAD/AAAAAAAA/wAADwAAAP8AAD/AAAD/AAD18AAA/wAP1fAAAP8AP1XwAAD/A/VV8AAA/w/VVfAAAP89VVXwAAD/9VVV8AAA/9VVVfAAAP1VVVXwAAD1VVVV8AAA9VVVVfAAAPVVVVXwAAD1VVVV8AAA9VVVVfAAAPVVVVXwAAD1VVVV8AAA9VVVVfAAAPVVVVXwAAD1VVVV8AAA9VVVVfAAAPVVVVXwAAD1VVVV8AAA9VVVVfAAAPVVVVXwAAD1VVVV8AAA9VVVVfAAAPVVVVXwAAD1VVVV8AAA9VVVVfAAAPVVVVXwAAD1VVVV8AAA9VVVVfAAAPVVVVXwAAD1VVVV8AAA9VVVVfAAAPVVVVXwAAD1VVVV8AAA9VVVVfAAAPVVVVXwAAD1VVVV8AAA9VVVVfAAAPVVVVXwAAD1VVVV8AAA9VVVVfAAAPVVVVXwAAD1VVVV8AAA9VVVVfAAAPVVVVXwAAD1VVVV8AAA9VVVVfAAAPVVVVXwAAD1VVVV8AAA9VVVVfAAAPVVVVXwAAD1VVVV8AAA9VVVVfAAAPVVVVXwAAD1VVVV8AAA9VVVVfAAAPVVVVXwAAD1VVVV8AAA9VVVVfAAAPVVVVXwAAD1VVVV8AAA9VVVVfAAAPVVVVXwAAD1VVVV8AAA9VVVVfAAAPVVVVXwAAD1VVVV8AAA9VVVVfAAAPVVVVXwAAD1VVVV8AAA9VVVVfAAAPVVVVXwAAD1VVVV8AAA9VVVVfAAAPVVVVXwAAD1VVVV8AAA9VVVVfAAAPVVVVXwAAD1VVVV////9VVVVf////VVVVVVVVVQ==" },
|
||||||
|
{"width" : "42" , "buffer":"VVVVX////9VVVVVVVV//////1VVVVVVf8AAAAD9VVVVVX/AAAAAAP1VVVVfwAAAAAAD9VVVV8AAAAAAAAPVVVXwAAAAAAAAD1VVfAAAAAAAAAA9VVfAAAAAAAAAA9VV8AAAAAAAAAAPVXwAAAAAAAAAAPVXwAAAAAAAAAAD1fAAAAD//wAAAD1fAAAAP//8AAAD1fAAAA9VVfAAAA98AAAD1VVXwAAA98AAAPVVVXwAAA98AAAPVVVV8AAA98AAA9VVVV8AAA98AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP////9VVVVfAAAP////9VVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVV8AAAPVVVVVVVVV8AAA9VVVVVVVVV8AAA9VVVVVVVVXwAAA9VVVVVVVVXwAAA9VVVVVVVVXwAAA9VVVVVVVVfAAAD1VVVVVVVVfAAAD1VVVVVVVV8AAAD1VVVVVVVV8AAAPVVVVVVVVXwAAAPVVVVVVVVfAAAA9VVVVVVVVfAAAA9VVVVVVVV8AAAD1VVVVVVVV8AAAD1VVVVVVVXwAAAPVVVVVVVVXwAAAPVVVVVVVVfAAAA9VVVVVVVVfAAAA9VVVVVVVV8AAAD1VVVVVVVV8AAAD1VVVVVVVXwAAAPVVVVVVVVXwAAAPVVVVVVVVfAAAA9VVVVVVVVfAAAA9VVVVVVVV8AAAD1VVVVVVVV8AAAD1VVVVVVVXwAAAPVVVVVVVVfAAAA9VVVVVVVVfAAAA9VVVVVVVV8AAAD1VVVVVVVV8AAAD1VVVVVVVXwAAAPVVVVVVVVXwAAAPVVVVVVVVfAAAA9VVVVVVVVfAAAA9VVVVVVVV8AAAD1VVVVVVVV8AAAD1VVVVVVVXwAAAPVVVVVVVVXwAAAPVVVVVVVVfAAAA9VVVVVVVVfAAAA9VVVVVVVV8AAAD1VVVVVVVV8AAAD1VVVVVVVXwAAAPVVVVVVVVfAAAAPVVVVVVVVfAAAA9VVVVVVVV8AAAA9VVVVVVVV8AAAD1VVVVVVVXwAAAD1VVVVVVVXwAAAPVVVVVVVVfAAAAPVVVVVVVVfAAAA9VVVVVVVV8AAAA9VVVVVVVV8AAAAP////////8AAAAD////////8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP////////////////////////////VVVVVVVVVVVVVV" },
|
||||||
|
{"width" : "42" , "buffer":"VVVVX////1VVVVVVVV//////VVVVVVVf8AAAAP9VVVVVX/AAAAAA/1VVVVfwAAAAAAD9VVVV8AAAAAAAAPVVVXwAAAAAAAAD1VVfAAAAAAAAAD1VV8AAAAAAAAAA9VV8AAAAAAAAAAPVXwAAAAAAAAAAPVXwAAAAAAAAAAD1fAAAAD//AAAAD1fAAAAP//8AAAA9fAAAA9VV/AAAA98AAAD1VVXwAAA98AAAPVVVXwAAA98AAAPVVVV8AAA98AAA9VVVV8AAA98AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP////9VVVVfAAAP////9VVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVV8AAAPVVVVVVVVV8AAA9VVVVVVVVV8AAA9VVVVVVVVXwAAA9VVVVVVVVfAAAA9VVVVVVX/8AAAD1VVVVVX//wAAAD1VVVVVX8AAAAAPVVVVVVXwAAAAD9VVVVVVXwAAAAP1VVVVVVXwAAAA9VVVVVVVXwAAAD1VVVVVVVXwAAAD1VVVVVVVXwAAAA/VVVVVVVXwAAAAP1VVVVVVXwAAAAA9VVVVVVX/wAAAAPVVVVVVX//wAAAD1VVVVVVVf8AAAD1VVVVVVVVfAAAA9VVVVVVVVXwAAA9VVVVVVVVV8AAA9VVVVVVVVV8AAA9VVVVVVVVV8AAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAP////1VVVVfAAAP////9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVV8AAAP8AAA9VVVV8AAA98AAAPVVVV8AAA98AAAPVVVXwAAA98AAAD1VVfAAAA98AAAA/VV8AAAA9fAAAAP//wAAAA9fAAAAA//AAAAD1fAAAAAAAAAAAD1XwAAAAAAAAAAPVXwAAAAAAAAAAPVV8AAAAAAAAAA9VVfAAAAAAAAAD1VVfAAAAAAAAAD1VVX8AAAAAAAA/VVVV/AAAAAAAD9VVVVX8AAAAAAPVVVVVV/8AAAAP9VVVVVVX//AA//1VVVVVVVX////1VVVVVVVVVV//VVVVVV" },
|
||||||
|
{"width" : "49" , "buffer":"VVVVVVX////9VVVVVVVVVVV/////VVVVVVVVVVV8AAAPVVVVVVVVVVVfAAAD1VVVVVVVVVVXwAAA9VVVVVVVVVVV8AAAPVVVVVVVVVVV8AAAPVVVVVVVVVVVfAAAD1VVVVVVVVVVXwAAA9VVVVVVVVVVXwAAA9VVVVVVVVVVV8AAAPVVVVVVVVVVVfAAAD1VVVVVVVVVVXwAAD1VVVVVVVVVVXwAAA9VVVVVVVVVVV8AAAPVVVVVVVVVVVfAAAD1VVVVVVVVVVfAAAD1VVVVVVVVVVXwAAA9VVVVVVVVVVV8AAAPVVVVVVVVVVV8AAAPVVVVVVVVVVVfAAAD1VVVVVVVVVVXwAAA9VVVVVVVVVVV8AAA9VVVVVVVVVVV8AAAPVVVVVVVVVVVfAAAD1VVVVVVVVVVXwAAA9VVVVVVVVVVV8AAA9VVVVVVVVVVV8AAAPVVVVVVVVVVVfAAAD1VVVVVVVVVVXwAAD1VVVVVVVVVVXwAAA9VVVVVVVVVVV8AAAPVVVVVVVVVVVfAAAPVVVVVVVVVVVXwAAD1VVVVVVVVVVXwAAA9VVVVVVVVVVV8AAAPVVVVVVVVVVVfAAAPVVVVVVVVVVVfAAAD1VVVVVVVVVVXwAAA9VVVVVVVVVVV8AAA9VVVVVVVVVVV8AAAPVVVVVVVVVVVfAAAD1VVVVVVVVVVXwAAD1VVVVVVVVVVV8AAA9VX////1VVVV8AAAPVV////9VVVVfAAAD1VfAAAPVVVVXwAAD1VXwAAD1VVVXwAAA9VV8AAA9VVVV8AAAPVVfAAAPVVVVfAAAPVVXwAAD1VVVXwAAD1VV8AAA9VVVXwAAA9VVfAAAPVVVV8AAA9VVXwAAD1VVVfAAAPVVV8AAA9VVVfAAAD1VVfAAAPVVVXwAAA9VVXwAAD1VVV8AAA9VVV8AAA9VVVfAAAPVVVfAAAPVVVfAAAD1VVXwAAD1VVXwAAD1VVV8AAA9VVV8AAA9VVVfAAAPVVV8AAAPVVVXwAAD1VVfAAAPVVVV8AAA9VVXwAAD1VVVfAAAPVVV8AAA9VVVXwAAD1VV8AAAPVVVV8AAA9VVfAAAPVVVVfAAAPVVXwAAD1VVVXwAAD1VXwAAA9VVVV8AAA9VV8AAA9VVVVfAAAPVVfAAAPVVVVXwAAD1VXwAAA/////wAAAP//8AAAD////wAAAA///AAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAD/AAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAD/AAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAD/////////8AAAAP///////////wAAAP//VVVVVVVVVfAAAPVVVVVVVVVVVXwAAD1VVVVVVVVVVV8AAA9VVVVVVVVVVVfAAAPVVVVVVVVVVVXwAAD1VVVVVVVVVVV8AAA9VVVVVVVVVVVfAAAPVVVVVVVVVVVXwAAD1VVVVVVVVVVV8AAA9VVVVVVVVVVVfAAAPVVVVVVVVVVVXwAAD1VVVVVVVVVVV8AAA9VVVVVVVVVVVfAAAPVVVVVVVVVVVX////1VVVVVVVVVVV////9VVVVVVVVVVVVVVVVVVQ==" },
|
||||||
|
{"width" : "42" , "buffer":"X/////////////X/////////////XwAAAAAAAAAAAPXwAAAAAAAAAAAPXwAAAAAAAAAAAPXwAAAAAAAAAAAPXwAAAAAAAAAAAPXwAAAAAAAAAAAPXwAAAAAAAAAAAPXwAAAAAAAAAAAPXwAAAAAAAAAAAPXwAAAAAAAAAAAPXwAAD/////////XwAAP/////////XwAA9VVVVVVVVVXwAA9VVVVVVVVVXwAA9VVVVVVVVVXwAA9VVVVVVVVVXwAA9VVVVVVVVVXwAA9VVVVVVVVVXwAA9VVVVVVVVVXwAA9VVVVVVVVVXwAA9VVVVVVVVVXwAA9VVVVVVVVVXwAA9VVVVVVVVVXwAA9VVVVVVVVVXwAA9VVVVVVVVVXwAA9VVVVVVVVVXwAA9VVVVVVVVVXwAA9VVVVVVVVVXwAA9VVVVVVVVVXwAA9VVVVVVVVVXwAA9VVVVVVVVVXwAA9VVVVVVVVVXwAA9VVVVVVVVVXwAA9VVVVVVVVVXwAA9VX////VVVXwAA9V/////9VVXwAA9f8AAAA/VVXwAAP/AAAAAD9VXwAADwAAAAAA9VXwAAAAAAAAAAPVXwAAAAAAAAAAD1XwAAAAAAAAAAD1XwAAAAAAAAAAA9XwAAAAAAAAAAA9XwAAAAP/AAAAAPXwAAAD//wAAAAPXwAAAP1V/AAAAPXwAAA9VVfwAAAPXwAAD1VVV8AAAPX////VVVV8AAAPX////VVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVVfAAAP////9VVVVfAAAP////9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAAPVVVVfAAAP8AAAPVVVVfAAAP8AAAPVVVV8AAAPfAAAD1VVV8AAAPfAAAA9VVXwAAAPfAAAAPVVfAAAAPfAAAAD//8AAAA9XwAAAA//wAAAA9XwAAAAAAAAAAA9V8AAAAAAAAAAD1V8AAAAAAAAAAPVVfAAAAAAAAAAPVVfAAAAAAAAAA9VVXwAAAAAAAAD1VVV/AAAAAAAAPVVVVfwAAAAAAA9VVVVV/AAAAAAP1VVVVVf/AAAAP/VVVVVVV//wA//1VVVVVVVV////1VVVVVVVVVVf/VVVVVV" },
|
||||||
|
{"width" : "42" , "buffer":"VVVVVVV/////1VVVVVVVV/////1VVVVVVVXwAAAPVVVVVVVVXwAAAPVVVVVVVVXwAAAPVVVVVVVVfAAAA9VVVVVVVVfAAAA9VVVVVVVVfAAAD1VVVVVVVV8AAAD1VVVVVVVV8AAAD1VVVVVVVXwAAAPVVVVVVVVXwAAAPVVVVVVVVXwAAA9VVVVVVVVfAAAA9VVVVVVVVfAAAA9VVVVVVVVfAAAD1VVVVVVVV8AAAD1VVVVVVVV8AAAPVVVVVVVVXwAAAPVVVVVVVVXwAAAPVVVVVVVVXwAAA9VVVVVVVVfAAAA9VVVVVVVVfAAAA9VVVVVVVVfAAAD1VVVVVVVV8AAAD1VVVVVVVV8AAAPVVVVVVVVXwAAAPVVVVVVVVXwAAAPVVVVVVVVXwAAA9VVVVVVVVfAAAA9VVVVVVVVfAAAD1VVVVVVVVfAAAD1VVVVVVVV8AAAD1VVVVVVVV8AAAPVVVVVVVVXwAAAPVVVVVVVVXwAAAPVVVVVVVVXwAAA9VVVVVVVVfAAAA9VVVVVVVVfAAAD1VVVVVVVVfAAAD1VVVVVVVV8AAAD1VVVVVVVV8AAAA///9VVVVXwAAAAP///9VVVXwAAAAAAAD/VVVXwAAAAAAAAD1VVfAAAAAAAAAA9VVfAAAAAAAAAAPVVfAAAAAAAAAAD1V8AAAAAAAAAAD1V8AAAAAAAAAAA9XwAAAAAAAAAAA9XwAAAAP/AAAAA9XwAAAD//wAAAA9XwAAAP1V8AAAAPfAAAA9VVfAAAAPfAAAD1VVXwAAAPfAAAPVVVV8AAAPfAAAPVVVVfAAAPfAAAPVVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAAPVVVVfAAAPfAAAPVVVV8AAAPfAAAD1VVV8AAAPfAAAA9VVXwAAAPfAAAAPVV/AAAA9fAAAAD//8AAAA9XwAAAA//AAAAA9XwAAAAAAAAAAD1V8AAAAAAAAAAD1V8AAAAAAAAAAPVVfAAAAAAAAAAPVVXwAAAAAAAAA9VVXwAAAAAAAAD1VVV/AAAAAAAAPVVVVfwAAAAAAA9VVVVV/AAAAAAP1VVVVVf8AAAAP/VVVVVVV//AAP/1VVVVVVVX////1VVVVVVVVVV//1VVVVV" },
|
||||||
|
{"width" : "42" , "buffer":"////////////////////////////8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAA/////AAAAP8AAD/////wAAAP8AAPVVVVV8AAAP8AAPVVVVV8AAAP8AAPVVVVV8AAA98AAPVVVVXwAAA98AAPVVVVXwAAA98AAPVVVVXwAAD18AAPVVVVXwAAD18AAPVVVVfAAAD18AAPVVVVfAAAD1////VVVVfAAAPV////VVVV8AAAPVVVVVVVVV8AAAPVVVVVVVVV8AAA9VVVVVVVVXwAAA9VVVVVVVVXwAAA9VVVVVVVVXwAAD1VVVVVVVVXwAAD1VVVVVVVVfAAAD1VVVVVVVVfAAAD1VVVVVVVVfAAAPVVVVVVVVVfAAAPVVVVVVVVV8AAAPVVVVVVVVV8AAAPVVVVVVVVV8AAA9VVVVVVVVXwAAA9VVVVVVVVXwAAA9VVVVVVVVXwAAD1VVVVVVVVXwAAD1VVVVVVVVfAAAD1VVVVVVVVfAAAD1VVVVVVVVfAAAPVVVVVVVVV8AAAPVVVVVVVVV8AAAPVVVVVVVVV8AAA9VVVVVVVVXwAAA9VVVVVVVVXwAAA9VVVVVVVVXwAAA9VVVVVVVVXwAAD1VVVVVVVVfAAAD1VVVVVVVVfAAAD1VVVVVVVVfAAAPVVVVVVVVV8AAAPVVVVVVVVV8AAAPVVVVVVVVV8AAAPVVVVVVVVXwAAA9VVVVVVVVXwAAA9VVVVVVVVXwAAA9VVVVVVVVXwAAD1VVVVVVVVfAAAD1VVVVVVVVfAAAD1VVVVVVVVfAAAD1VVVVVVVV8AAAPVVVVVVVVV8AAAPVVVVVVVVV8AAAPVVVVVVVVV8AAA9VVVVVVVVXwAAA9VVVVVVVVXwAAA9VVVVVVVVXwAAA9VVVVVVVVXwAAD1VVVVVVVVfAAAD1VVVVVVVVfAAAD1VVVVVVVVfAAAPVVVVVVVVV8AAAPVVVVVVVVV8AAAPVVVVVVVVV8AAAPVVVVVVVVXwAAA9VVVVVVVVXwAAA9VVVVVVVVXwAAA9VVVVVVVVXwAAA9VVVVVVVVfAAAD1VVVVVVVVfAAAD1VVVVVVVVfAAAD1VVVVVVVV8AAAPVVVVVVVVV8AAAPVVVVVVVVV8AAAPVVVVVVVVV8AAA9VVVVVVVVXwAAA9VVVVVVVVXwAAA9VVVVVVVVXwAAA9VVVVVVVVfAAAD1VVVVVVVVfAAAD1VVVVVVVVfAAAD1VVVVVVVV8AAAPVVVVVVVVV/////VVVVVVVVV/////VVVVVVVVVVVVVVVVVVVVVV" },
|
||||||
|
{"width" : "42" , "buffer":"VVVVX////1VVVVVVVX//////VVVVVVVf8AAAAP9VVVVVX8AAAAAA/VVVVVfwAAAAAAD1VVVV8AAAAAAAA9VVVXwAAAAAAAAPVVVfAAAAAAAAAD1VVfAAAAAAAAAA9VV8AAAAAAAAAA9VXwAAAAAAAAAAPVXwAAAAAAAAAAD1XwAAAD//AAAAD1fAAAAP//wAAAD1fAAAA9VV8AAAA98AAAD1VVfAAAA98AAAPVVVXwAAA98AAAPVVVV8AAA98AAA9VVVV8AAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAA98AAA9VVVV8AAA98AAAPVVVV8AAA98AAAPVVVXwAAA9fAAAD1VVfAAAA9fAAAA9VV8AAAD1XwAAAP9fwAAAD1XwAAAD//AAAAPVV8AAAADwAAAA9VVfAAAAAAAAAD1VVXwAAAAAAAAPVVVV8AAAAAAAA9VVVV8AAAAAAAAPVVVXwAAAAAAAAD1VVfAAAAAAAAAA9VV8AAAADwAAAA9VXwAAAD//AAAAPVXwAAAP9f8AAAD1fAAAA9VV/AAAD1fAAAD1VVXwAAD1fAAAPVVVXwAAA98AAA9VVVV8AAA98AAA9VVVV8AAA98AAA9VVVVfAAA98AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVV8AAAP8AAA9VVVV8AAA98AAAPVVVV8AAA98AAAPVVVXwAAA98AAAD1VVfAAAA9fAAAA/VV8AAAA9fAAAAP//wAAAA9fAAAAA//AAAAD1XwAAAAAAAAAAD1XwAAAAAAAAAAPVV8AAAAAAAAAAPVV8AAAAAAAAAA9VVfAAAAAAAAAD1VVXwAAAAAAAAD1VVV8AAAAAAAA/VVVVfAAAAAAAD9VVVVX8AAAAAA/VVVVVV/8AAAAP9VVVVVVX/8AA//VVVVVVVVX////1VVVVVVVVVX//VVVVVV" },
|
||||||
|
{"width" : "42" , "buffer":"VVVVf////9VVVVVVVX//////1VVVVVVfwAAAAD/VVVVVX8AAAAAAP1VVVVfwAAAAAAA9VVVV8AAAAAAAAPVVVXwAAAAAAAAD1VVfAAAAAAAAAA9VVfAAAAAAAAAAPVV8AAAAAAAAAAPVXwAAAAAAAAAAD1XwAAAAAAAAAAD1XwAAAA//wAAAA9fAAAAP//8AAAA9fAAAA/VVfAAAA9fAAAD1VVXwAAAPfAAAD1VVV8AAAPfAAAPVVVV8AAAP8AAAPVVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAA9VVVVfAAAP8AAAPVVVVfAAAP8AAAPVVVV8AAAPfAAAPVVVV8AAA9fAAAD1VVXwAAA9fAAAA9VVfAAAA9fAAAAP9X8AAAA9fAAAAD//wAAAA9fAAAAAD8AAAAD1XwAAAAAAAAAAD1XwAAAAAAAAAAD1XwAAAAAAAAAAPVV8AAAAAAAAAAPVVfAAAAAAAAAA9VVfwAAAAAAAAA9VVX8AAAAAAAAA9VVVfwAAAAAAAD1VVVX////AAAAD1VVVVf///wAAAD1VVVVVVVV8AAAPVVVVVVVVXwAAAPVVVVVVVVXwAAA9VVVVVVVVXwAAA9VVVVVVVVfAAAA9VVVVVVVVfAAAD1VVVVVVVVfAAAD1VVVVVVVV8AAAD1VVVVVVVV8AAAPVVVVVVVVXwAAAPVVVVVVVVXwAAA9VVVVVVVVXwAAA9VVVVVVVVfAAAA9VVVVVVVVfAAAD1VVVVVVVV8AAAD1VVVVVVVV8AAAD1VVVVVVVV8AAAPVVVVVVVVXwAAAPVVVVVVVVXwAAA9VVVVVVVVfAAAA9VVVVVVVVfAAAA9VVVVVVVVfAAAD1VVVVVVVV8AAAD1VVVVVVVV8AAAD1VVVVVVVV8AAAPVVVVVVVVXwAAAPVVVVVVVVXwAAA9VVVVVVVVfAAAA9VVVVVVVVfAAAA9VVVVVVVVfAAAD1VVVVVVVV8AAAD1VVVVVVVV8AAAD1VVVVVVVXwAAAPVVVVVVVVXwAAAPVVVVVVVVXwAAA9VVVVVVVVfAAAA9VVVVVVVVfAAAA9VVVVVVVVfAAAD1VVVVVVVV8AAAD1VVVVVVVV/////1VVVVVVVV/////VVVVVVVVVVVVVVVVVVVVV" },
|
||||||
|
{"width" : "14" , "buffer":"VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/////////wAAD/AAAP8AAA/wAAD/AAAP8AAA/wAAD/AAAP8AAA/wAAD/////////9VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/////////8AAA/wAAD/AAAP8AAA/wAAD/AAAP8AAA/wAAD/AAAP8AAA//////////VVVVU=" }
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
|
@ -0,0 +1,18 @@
|
||||||
|
{
|
||||||
|
"name":"Dosis",
|
||||||
|
"size":"100",
|
||||||
|
"characters":[
|
||||||
|
{"width" : "67", "buffer":"VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf//////VVVVVVVVVVVVVVf////////1VVVVVVVVVVVX//AAAAAAD//VVVVVVVVVVf/AAAAAAAAA//VVVVVVVVV/wAAAAAAAAAAD/VVVVVVVX/AAAAAAAAAAAAD9VVVVVVX8AAAAAAAAAAAAAD1VVVVVXwAAAAAAAAAAAAAAP1VVVVXwAAAAAAAAAAAAAAA/VVVVXwAAAAAAAAAAAAAAAA9VVVXwAAAAAAAAAAAAAAAAPVVVV8AAAAAAAAAAAAAAAAA9VVV8AAAAAAAAAAAAAAAAAD1VV8AAAAAAAAAAAAAAAAAA9VVfAAAAAAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAAAAAAD1V8AAAAAAAAP/AAAAAAAAA9V8AAAAAAAD///wAAAAAAAPVfAAAAAAAD/VX/wAAAAAAA9XwAAAAAAP1VVV/AAAAAAAPXwAAAAAAP1VVVV8AAAAAAD18AAAAAAPVVVVVXwAAAAAA9fAAAAAAD1VVVVVfAAAAAAD3wAAAAAD1VVVVVXwAAAAAA98AAAAAA9VVVVVVfAAAAAAPfAAAAAA9VVVVVVXwAAAAAD3wAAAAAPVVVVVVV8AAAAAA98AAAAAD1VVVVVVXwAAAAAP8AAAAAA9VVVVVVV8AAAAAD/AAAAAAPVVVVVVVfAAAAAA/wAAAAAD1VVVVVVXwAAAAAP8AAAAAA9VVVVVVV8AAAAAD/AAAAAA9VVVVVVVfAAAAAA/wAAAAAPVVVVVVVXwAAAAAP8AAAAAD1VVVVVVV8AAAAAD/AAAAAA9VVVVVVVfAAAAAA/wAAAAAPVVVVVVVXwAAAAAP8AAAAAD1VVVVVVV8AAAAAD/AAAAAA9VVVVVVVfAAAAAA/wAAAAAPVVVVVVVXwAAAAAP8AAAAAD1VVVVVVV8AAAAAD/AAAAAA9VVX/9VVfAAAAAA/wAAAAAPVVf//9VXwAAAAAP8AAAAAD1VfwAP1V8AAAAAD/AAAAAA9VfAAA9VfAAAAAA/wAAAAAPVXwAAD1XwAAAAAP8AAAAAD1V8AAA9V8AAAAAD/AAAAAA9V8AAAPVfAAAAAA/wAAAAAPVfAAAD1XwAAAAAP8AAAAAD1V8AAA9V8AAAAAD/AAAAAA9VfAAAPVfAAAAAA/wAAAAAPVXwAAD1XwAAAAAP8AAAAAD1V8AAD1V8AAAAAD/AAAAAA9VX8AD1VfAAAAAA/wAAAAAPVVf//1VXwAAAAAP8AAAAAD1VVf/1VV8AAAAAD/AAAAAA9VVVVVVVfAAAAAA/wAAAAAPVVVVVVVXwAAAAAP8AAAAAD1VVVVVVV8AAAAAD/AAAAAA9VVVVVVVfAAAAAA/wAAAAAPVVVVVVVXwAAAAAP8AAAAAD1VVVVVVV8AAAAAD/AAAAAA9VVVVVVVfAAAAAA/wAAAAAPVVVVVVVXwAAAAAP8AAAAAD1VVVVVVV8AAAAAD/AAAAAAPVVVVVVVfAAAAAA/wAAAAAD1VVVVVVXwAAAAAP8AAAAAA9VVVVVVV8AAAAAD/AAAAAAPVVVVVVVfAAAAAA98AAAAAD1VVVVVVfAAAAAAPfAAAAAA9VVVVVVXwAAAAAD3wAAAAAPVVVVVVV8AAAAAA98AAAAAA9VVVVVVfAAAAAAPfAAAAAAPVVVVVVfAAAAAAD3wAAAAAA9VVVVVXwAAAAAA98AAAAAAD1VVVVXwAAAAAA9fAAAAAAAPVVVVfwAAAAAAPV8AAAAAAA/VVVfwAAAAAAD1fAAAAAAAD////AAAAAAAA9XwAAAAAAAD///AAAAAAAA9VfAAAAAAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAAAAAPVVVfAAAAAAAAAAAAAAAAAPVVVV8AAAAAAAAAAAAAAAAPVVVVfAAAAAAAAAAAAAAAAPVVVVV/AAAAAAAAAAAAAAAPVVVVVX8AAAAAAAAAAAAAAPVVVVVVXwAAAAAAAAAAAAA/VVVVVVVfwAAAAAAAAAAAD/VVVVVVVV/8AAAAAAAAAA/9VVVVVVVVV//wAAAAAAAP/1VVVVVVVVVVf//AAAAA//9VVVVVVVVVVVVV////////VVVVVVVVVVVVVVVX////9VVVVVVVVQ=="},
|
||||||
|
{"width" : "36", "buffer":"VVVVVVVX/1VVVVVVVVV///1VVVVVVVf8AP/VVVVVVX/AAAP1VVVVVfwAAAA9VVVVX8AAAAA9VVVV/wAAAAA9VVVX8AAAAAAPVVV/AAAAAAAPVVf8AAAAAAAPVV/AAAAAAAAPVfwAAAAAAAAPV/AAAAAAAAAPXwAAAAAAAAAPfAAAAAAAAAAP8AAAAAAAAAAP8AAAAAAAAAAP8AAAAAAAAAAP8AAAAAAAAAAP8AAAAAAAAAAP8AAAAAAAAAAP8AAAAAAAAAAP8AAAAAAAAAAP8AAAAAAAAAAPfAAAwAAAAAAPfAAP8AAAAAAPX///fAAAAAAPV//1fAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAAPVVVVfAAAAAA9VVVVXwAAAAA9VVVVXwAAAAD9VVVVV/wAAA/1VVVVVf////9VVVVVVVf///VVVVVVVVVVVVVV"},
|
||||||
|
{"width" : "65", "buffer":"VVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/////1VVVVVVVVVVVVVVf///////1VVVVVVVVVVVV//AAAAAD//VVVVVVVVVVV/8AAAAAAAD/1VVVVVVVVV/wAAAAAAAAAP1VVVVVVVVfwAAAAAAAAAAD9VVVVVVVfwAAAAAAAAAAAD/VVVVVVX8AAAAAAAAAAAAA/VVVVVV8AAAAAAAAAAAAAAPVVVVVfAAAAAAAAAAAAAAAPVVVVXwAAAAAAAAAAAAAAAPVVVV8AAAAAAAAAAAAAAAA9VVVXwAAAAAAAAAAAAAAAA9VVV8AAAAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAAAAAPVXwAAAAAAAP//AAAAAAAA9VfAAAAAAAP///wAAAAAAA9V8AAAAAAD9VVfwAAAAAAD1fAAAAAAA9VVVXwAAAAAAPV8AAAAAAPVVVVXwAAAAAA9XwAAAAAD1VVVVXwAAAAAA9fAAAAAAPVVVVVfAAAAAAD18AAAAAD1VVVVVfAAAAAAPXwAAAAAPVVVVVV8AAAAAA9fAAAAAA9VVVVVXwAAAAAD18AAAAAD1VVVVVfAAAAAAPXwAAAAAPVVVVVV8AAAAAA9fAAAAAA9VVVVVXwAAAAAD1fAAAAAPVVVVVVfAAAAAAPV8AAAAA9VVVVVXwAAAAAD1V8AAAAPVVVVVVfAAAAAAPVV8AAAP1VVVVVXwAAAAAA9VV////9VVVVVVfAAAAAAD1VV///9VVVVVVXwAAAAAAPVVVVVVVVVVVVV8AAAAAAD1VVVVVVVVVVVVfAAAAAAAPVVVVVVVVVVVVXwAAAAAAD1VVVVVVVVVVVV8AAAAAAAPVVVVVVVVVVVVfAAAAAAAD1VVVVVVVVVVVXwAAAAAAAPVVVVVVVVVVVV8AAAAAAAD1VVVVVVVVVVV/AAAAAAAAPVVVVVVVVVVVfwAAAAAAAD1VVVVVVVVVVXwAAAAAAAA9VVVVVVVVVVV8AAAAAAAAD1VVVVVVVVVV/AAAAAAAAA9VVVVVVVVVVfwAAAAAAAAPVVVVVVVVVVXwAAAAAAAAD1VVVVVVVVVX8AAAAAAAAA9VVVVVVVVVV/AAAAAAAAAPVVVVVVVVVVfAAAAAAAAAD1VVVVVVVVVfwAAAAAAAAA9VVVVVVVVVX8AAAAAAAAA/VVVVVVVVVV8AAAAAAAAAP1VVVVVVVVVfAAAAAAAAAD1VVVVVVVVVfwAAAAAAAAD9VVVVVVVVVX8AAAAAAAAA/VVVVVVVVVV8AAAAAAAAA/VVVVVVVVVVfAAAAAAAAAP1VVVVVVVVVXwAAAAAAAAD1VVVVVVVVVV8AAAAAAAAD9VVVVVVVVVVfAAAAAAAAA/VVVVVVVVVVXwAAAAAAAA/VVVVVVVVVVVfAAAAAAAAP1VVVVVVVVVVXwAAAAAAAP1VVVVVVVVVVV8AAAAAAAD9VVVVVVVVVVVXwAAAAAAA9VVVVVVVVVVVV8AAAAAAAPVVVVVVVVVVVVXwAAAAAAD1VVVVVVVVVVVV8AAAAAAA9VVVVVVVVVVVVXwAAAAAAPVVVVVVVVVVVVVfAAAAAAD1VVVVVVVVVVVVV8AAAAAAPVVVVVVVVVVVVVXwAAAAAD1VVVVVVVVVVVVV8AAAAAAPVVVVVVVVVVVVVXwAAAAAA9VVVVVVVVVVVVVfAAAAAAA////////////1V8AAAAAAA////////////9XwAAAAAAAAAAAAAAAAAAD9fAAAAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAAAD3wAAAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAAAAAD1X/AAAAAAAAAAAAAAAAAAPVV///////////////////1VVf/////////////////9VVVVVVVVVVVVVVVVVVVVVVU="},
|
||||||
|
{"width" : "67", "buffer":"VVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//////9VVVVVVVVVVVVVV/////////9VVVVVVVVVVVX/8AAAAAAP/9VVVVVVVVVVf8AAAAAAAAAP9VVVVVVVVV/wAAAAAAAAAAP9VVVVVVVX/AAAAAAAAAAAAP9VVVVVVX8AAAAAAAAAAAAAP1VVVVVXwAAAAAAAAAAAAAAPVVVVVXwAAAAAAAAAAAAAAA9VVVVXwAAAAAAAAAAAAAAAD1VVVXwAAAAAAAAAAAAAAAA9VVVV8AAAAAAAAAAAAAAAAD1VVV8AAAAAAAAAAAAAAAAA9VVVfAAAAAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAAAAAA9VV8AAAAAAAP//wAAAAAAAPVVfAAAAAAA////wAAAAAAD1VfAAAAAAA/VVV/wAAAAAA9VXwAAAAAA9VVVV/AAAAAAPVV8AAAAAA9VVVVV8AAAAAD1VfAAAAAAPVVVVVfAAAAAAPVXwAAAAAD1VVVVV8AAAAAD1V8AAAAAD1VVVVVfAAAAAA9VfAAAAAA9VVVVVXwAAAAAPVXwAAAAAPVVVVVV8AAAAAPVV8AAAAAD1VVVVVfAAAAAD1VfAAAAAA9VVVVVXwAAAAA9VV8AAAAA9VVVVVV8AAAAAPVVXwAAAA9VVVVVVfAAAAAD1VVf////9VVVVVVXwAAAAA9VVV////9VVVVVVV8AAAAAPVVVVVVVVVVVVVVV8AAAAAPVVVVVVVVVVVVVVVfAAAAAD1VVVVVVVVVVVVVVfAAAAAA9VVVVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVf//AAAAAAD1VVVVVVVVVVV///AAAAAAD1VVVVVVVVVVV/AAAAAAAAA9VVVVVVVVVVV8AAAAAAAAA9VVVVVVVVVVVfAAAAAAAAA9VVVVVVVVVVVfAAAAAAAAA/VVVVVVVVVVVXwAAAAAAAA/VVVVVVVVVVVV8AAAAAAAA9VVVVVVVVVVVVfAAAAAAAAPVVVVVVVVVVVVXwAAAAAAAA/VVVVVVVVVVVV8AAAAAAAAD/VVVVVVVVVVVfAAAAAAAAAD9VVVVVVVVVVXwAAAAAAAAAD1VVVVVVVVVVfAAAAAAAAAAPVVVVVVVVVVXwAAAAAAAAAA9VVVVVVVVVVfAAAAAAAAAAD1VVVVVVVVVV//8AAAAAAAA9VVVVVVVVVVX///AAAAAAAD1VVVVVVVVVVVVf/AAAAAAA9VVVVVVVVVVVVVX8AAAAAAD1VVVVVVVVVVVVVXwAAAAAA9VVVVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVVVV8AAAAAA9VVVVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVVVXwAAAAAD1VVVVVVVVVVVVVVfAAAAAA9VVVVVVVVVVVVVVXwAAAAAPVX////VVVVVVVVV8AAAAAD1f/////VVVVVVVVfAAAAAA9fwAAAD9VVVVVVVXwAAAAAPfAAAAAPVVVVVVVV8AAAAAD3wAAAAA9VVVVVVVfAAAAAA/wAAAAAPVVVVVVVXwAAAAAP8AAAAAD1VVVVVVXwAAAAAD/AAAAAA9VVVVVVV8AAAAAA/wAAAAAPVVVVVVVfAAAAAAP8AAAAAA9VVVVVVXwAAAAAD/AAAAAAPVVVVVVXwAAAAAD3wAAAAAA9VVVVVV8AAAAAA98AAAAAAD1VVVVX8AAAAAAPXwAAAAAAP1VVVX8AAAAAAD18AAAAAAA//1f/wAAAAAAA9fAAAAAAAA////wAAAAAAA9XwAAAAAAAAA/AAAAAAAAAPVfAAAAAAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAAAAAA9VVfAAAAAAAAAAAAAAAAAA9VVV8AAAAAAAAAAAAAAAAAPVVVXwAAAAAAAAAAAAAAAAPVVVVfAAAAAAAAAAAAAAAAPVVVVX8AAAAAAAAAAAAAAAPVVVVVXwAAAAAAAAAAAAAA/VVVVVVfwAAAAAAAAAAAAD/VVVVVVV/wAAAAAAAAAAAP9VVVVVVVV/wAAAAAAAAAA/1VVVVVVVVV/8AAAAAAAA//VVVVVVVVVVV//wAAAAD//9VVVVVVVVVVVVf///////9VVVVVVVVVVVVVVV/////1VVVVVVVVQ=="},
|
||||||
|
{"width" : "73", "buffer":"VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX//9VVVVVVVVVVVVVVVVVVVVf///9VVVVVVVVVVVVVVVVVVVfwAAP9VVVVVVVVVVVVVVVVVVfAAAAP1VVVVVVVVVVVVVVVVVfAAAAAPVVVVVVVVVVVVVVVVVXwAAAAD1VVVVVVVVVVVVVVVVXwAAAAAPVVVVVVVVVVVVVVVVV8AAAAAD1VVVVVVVVVVVVVVVV8AAAAAA9VVVVVVVVVVVVVVVVfAAAAAA9VVVVVVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVVVVVXwAAAAAD1VVVVVVVVVVVVVVVXwAAAAAD1VVVVVVVVVVVVVVVV8AAAAAA9VVVVVVVVVVVVVVVV8AAAAAA9VVVVVVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVVVVVXwAAAAAD1VVVVVVVVVVVVVVVXwAAAAAD1VVVVVVVVVVVVVVVV8AAAAAA9VVVVVVVVVVVVVVVV8AAAAAA9VVVVVVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVVVVVXwAAAAAD1VVVVVVVVVVVVVVVXwAAAAAD1VVVVVVVVVVVVVVVV8AAAAAA9VVVVVVVVVVVVVVVV8AAAAAA9VVVVVVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVVVVVXwAAAAAD1VVVVVVVVVVVVVVVXwAAAAAD1VVVVVVVVVVVVVVVV8AAAAAA9VVVVVVVVVVVVVVVV8AAAAAA9VVVVVVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVVVVVXwAAAAAD1VVVVVVVVVVVVVVVXwAAAAAD1VVVVVVVVVVVVVVVV8AAAAAA9VVVVVVVVVVVVVVVV8AAAAAA9VVVVVVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVVVVVfAAAAAAD1VVV/VVVVVVVVVVVXwAAAAAD1VX////VVVVVVVVVXwAAAAAA9Vf/8D//VVVVVVVVV8AAAAAA9VfwAAAD9VVVVVVVV8AAAAAAPVfAAAAAD1VVVVVVVfAAAAAAPVXwAAAAA9VVVVVVVfAAAAAAD1XwAAAAAPVVVVVVVXwAAAAAD1V8AAAAAA9VVVVVVXwAAAAAA9VfAAAAAAPVVVVVVV8AAAAAA9VXwAAAAAD1VVVVVV8AAAAAAPVV8AAAAAA9VVVVVVfAAAAAAPVVfAAAAAAPVVVVVVfAAAAAAD1VXwAAAAAD1VVVVVXwAAAAAD1VV8AAAAAA9VVVVVXwAAAAAA9VVfAAAAAAPVVVVVV8AAAAAA9VVXwAAAAAD1VVVVV8AAAAAAD///wAAAAAAP/9VVVfAAAAAAAP//wAAAAAAA//9VVfAAAAAAAAAAAAAAAAAAAAP1VXwAAAAAAAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAAAAAD3wAAAAAAAAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAAAAAAA9V/wAAAAAAAAAAAAAAAAAAAD9VX///////////wAAAAAAA//9VVV///////////AAAAAAA//1VVVVVVVVVVVVVV8AAAAAA9VVVVVVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVVVVVXwAAAAAD1VVVVVVVVVVVVVVVV8AAAAAA9VVVVVVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVVVVVXwAAAAAD1VVVVVVVVVVVVVVVV8AAAAAA9VVVVVVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVVVVVXwAAAAAD1VVVVVVVVVVVVVVVV8AAAAAA9VVVVVVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVVVVVXwAAAAAD1VVVVVVVVVVVVVVVV8AAAAAA9VVVVVVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVVVVVV8AAAAAPVVVVVVVVVVVVVVVVVfAAAAAD1VVVVVVVVVVVVVVVVX8AAAAD9VVVVVVVVVVVVVVVVVf8AAAP9VVVVVVVVVVVVVVVVVVf////1VVVVVVVVVVVVVVVVVVVf///VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVQ=="},
|
||||||
|
{"width" : "67", "buffer":"VVVVVVVVVVVVVVVVVVVVVVVVVX////////////////VVVVVV////////////////9VVVVV8AAAAAAAAAAAAAAAD1VVVVfAAAAAAAAAAAAAAAA9VVVVXwAAAAAAAAAAAAAAAPVVVVXwAAAAAAAAAAAAAAAA9VVVV8AAAAAAAAAAAAAAAAPVVVVfAAAAAAAAAAAAAAAAD1VVVXwAAAAAAAAAAAAAAAA9VVVV8AAAAAAAAAAAAAAAAPVVVVfAAAAAAAAAAAAAAAAD1VVVXwAAAAAAAAAAAAAAAA9VVVV8AAAAAAAAAAAAAAAAPVVVVfAAAAAAAAAAAAAAAAD1VVVfAAAAAAAAAAAAAAAAD1VVVXwAAAAAAAAAAAAAAAA9VVVV8AAAAAAAAAAAAAAAA9VVVVfAAAAAA//////////9VVVVXwAAAAA//////////9VVVVV8AAAAA9VVVVVVVVVVVVVVVfAAAAAPVVVVVVVVVVVVVVVXwAAAAD1VVVVVVVVVVVVVVV8AAAAA9VVVVVVVVVVVVVVVfAAAAAPVVVVVVVVVVVVVVVfAAAAAD1VVVVVVVVVVVVVVXwAAAAA9VVVVVVVVVVVVVVV8AAAAAPVVVVVVVVVVVVVVVfAAAAAD1VVVVVVVVVVVVVVXwAAAAD1VVVVVVVVVVVVVVV8AAAAA9VVVVVVVVVVVVVVVfAAAAAPVVVVVVVVVVVVVVVXwAAAAD1VVVVVVVVVVVVVVV8AAAAA9VVVVVVVVVVVVVVV8AAAAAPVVVVVVVVVVVVVVVfAAAAAD1VVVVVVVVVVVVVVXwAAAAAP///VVVVVVVVVVVV8AAAAAA//////VVVVVVVVVfAAAAAAAAAD///9VVVVVVVXwAAAAAAAAAAAD//VVVVVVV8AAAAAAAAAAAAAP/1VVVVVfAAAAAAAAAAAAAAD/VVVVVXwAAAAAAAAAAAAAAA/VVVVV8AAAAAAAAAAAAAAAD9VVVVfAAAAAAAAAAAAAAAAD1VVVXwAAAAAAAAAAAAAAAAPVVVV8AAAAAAAAAAAAAAAAA9VVVfAAAAAAAAAAAAAAAAAD1VVXwAAAAAAAAAAAAAAAAA9VVV8AAAAAAAAAAAAAAAAAD1VVXwAAAAAAAAAAAAAAAAAPVVVfwAAAAAAAAAAAAAAAAD1VVV/////////wAAAAAAAAPVVVV/////////8AAAAAAAD1VVVVVVVVVVVV/8AAAAAAA9VVVVVVVVVVVVVfwAAAAAAD1VVVVVVVVVVVVVfAAAAAAA9VVVVVVVVVVVVVV8AAAAAAPVVVVVVVVVVVVVVXwAAAAAD1VVVVVVVVVVVVVV8AAAAAA9VVVVVVVVVVVVVVXwAAAAAD1VVVVVVVVVVVVVV8AAAAAA9VVVVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVVVV8AAAAAD1VVVVVVVVVVVVVVfAAAAAA9VX///9VVVVVVVVXwAAAAAPVf////9VVVVVVVV8AAAAAD1/wAAAP1VVVVVVVfAAAAAA9fAAAAA9VVVVVVVXwAAAAAPfAAAAAD1VVVVVVV8AAAAAD3wAAAAA9VVVVVVVfAAAAAA/wAAAAAPVVVVVVVXwAAAAAP8AAAAAD1VVVVVVXwAAAAAD/AAAAAAPVVVVVVV8AAAAAA/wAAAAAD1VVVVVVfAAAAAAP8AAAAAA9VVVVVVfAAAAAAPfAAAAAAD1VVVVVXwAAAAAD3wAAAAAAPVVVVVXwAAAAAA9fAAAAAAA9VVVVfwAAAAAAPXwAAAAAAD9VVVfwAAAAAAD18AAAAAAAP////AAAAAAAD1fAAAAAAAAP///AAAAAAAA9V8AAAAAAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAAAAAAD1VV8AAAAAAAAAAAAAAAAAA9VVfAAAAAAAAAAAAAAAAAA9VVV8AAAAAAAAAAAAAAAAAPVVVXwAAAAAAAAAAAAAAAAPVVVVfAAAAAAAAAAAAAAAAPVVVVV8AAAAAAAAAAAAAAAPVVVVVX8AAAAAAAAAAAAAAPVVVVVVfwAAAAAAAAAAAAA/VVVVVVVfwAAAAAAAAAAAD/VVVVVVVV/8AAAAAAAAAA/9VVVVVVVVV//AAAAAAAAP/1VVVVVVVVVVf//AAAAA//9VVVVVVVVVVVVX////////VVVVVVVVVVVVVVVX////9VVVVVVVVQ=="},
|
||||||
|
{"width" : "67", "buffer":"VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf//////VVVVVVVVVVVVVVX////////9VVVVVVVVVVVX//AAAAAAD//VVVVVVVVVVf/wAAAAAAAAP/VVVVVVVVV/wAAAAAAAAAAD/VVVVVVVX/AAAAAAAAAAAAD9VVVVVVX8AAAAAAAAAAAAAD9VVVVVXwAAAAAAAAAAAAAAP1VVVVXwAAAAAAAAAAAAAAAPVVVVXwAAAAAAAAAAAAAAAA9VVVXwAAAAAAAAAAAAAAAAD1VVXwAAAAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAAAAAD1VV8AAAAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAAAAAAD1XwAAAAAAAAP/8AAAAAAAA9V8AAAAAAAD////AAAAAAAD18AAAAAAAP/VVf8AAAAAAA9fAAAAAAAP1VVVXwAAAAAAPXwAAAAAAPVVVVVfAAAAAAD18AAAAAAPVVVVVV8AAAAAA98AAAAAAPVVVVVVXwAAAAAPfAAAAAAD1VVVVVV8AAAAAA/wAAAAAD1VVVVVVXwAAAAAP8AAAAAA9VVVVVVV8AAAAAD/AAAAAAPVVVVVVVfAAAAAD3wAAAAAPVVVVVVVXwAAAAA98AAAAAD1VVVVVVV8AAAAAPfAAAAAA9VVVVVVVXwAAAAD3wAAAAAPVVVVVVVVfwAAAP18AAAAAD1VVVVVVVV//8//1fAAAAAA9VVVVVVVVV////VXwAAAAAPVVVVVVVVVVVdVVV8AAAAAD1VVVVVVVVVVVVVVfAAAAAA9VVVVVVVVVVVVVVXwAAAAAPVVVf///9VVVVVVV8AAAAAD1Vf//////1VVVVVfAAAAAA9X//AAAAP/9VVVVXwAAAAAPX/AAAAAAA/9VVVV8AAAAAA/wAAAAAAAAP9VVVfAAAAAADwAAAAAAAAAP1VVXwAAAAAAAAAAAAAAAAAP1VV8AAAAAAAAAAAAAAAAAA/VVfAAAAAAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAAAAA9XwAAAAAAAAAAAAAAAAAAAD18AAAAAAAAD//8AAAAAAAA9fAAAAAAAAP///8AAAAAAAPXwAAAAAAA/1VVfwAAAAAAA98AAAAAAA/VVVVfAAAAAAAPfAAAAAAA9VVVVV8AAAAAAD3wAAAAAA9VVVVVXwAAAAAA98AAAAAAPVVVVVVfAAAAAAPfAAAAAAPVVVVVVXwAAAAAD3wAAAAAD1VVVVVVfAAAAAA98AAAAAD1VVVVVVXwAAAAAPfAAAAAA9VVVVVVV8AAAAAA/wAAAAAPVVVVVVVfAAAAAAP8AAAAAD1VVVVVVXwAAAAAD/AAAAAA9VVVVVVV8AAAAAA/wAAAAAPVVVVVVVXwAAAAAP8AAAAAD1VVVVVVV8AAAAAD/AAAAAA9VVVVVVV8AAAAAA/wAAAAAPVVVVVVVfAAAAAA98AAAAAD1VVVVVVXwAAAAAPfAAAAAAPVVVVVVV8AAAAAD3wAAAAAD1VVVVVVfAAAAAA98AAAAAA9VVVVVVXwAAAAAPXwAAAAAD1VVVVVXwAAAAAD18AAAAAA9VVVVVXwAAAAAA9fAAAAAAD1VVVVV8AAAAAAPXwAAAAAAPVVVVX8AAAAAAPV8AAAAAAA/VVVX8AAAAAAD1XwAAAAAAD/1V/wAAAAAAA9V8AAAAAAAD///wAAAAAAA9VfAAAAAAAAA/8AAAAAAAAPVV8AAAAAAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAAAAAAD1VV8AAAAAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAAAAA9VVV8AAAAAAAAAAAAAAAAA9VVVXwAAAAAAAAAAAAAAAAPVVVVfAAAAAAAAAAAAAAAAPVVVVV8AAAAAAAAAAAAAAAPVVVVVX8AAAAAAAAAAAAAA/VVVVVVfwAAAAAAAAAAAAA/VVVVVVVfwAAAAAAAAAAAD9VVVVVVVV/8AAAAAAAAAA/9VVVVVVVVV//AAAAAAAA//1VVVVVVVVVVf//AAAAA//9VVVVVVVVVVVVX///////9VVVVVVVVVVVVVVVX////9VVVVVVVVQ=="},
|
||||||
|
{"width" : "67", "buffer":"VVVVVVVVVVVVVVVVVVVVVVVV//////////////////9VVX///////////////////9VX8AAAAAAAAAAAAAAAAAAP9XwAAAAAAAAAAAAAAAAAAAP3wAAAAAAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAAAP8AAAAAAP//////8AAAAAAD/AAAAAAP///////wAAAAAA/wAAAAAPVVVVVVVfAAAAAAP8AAAAAD1VVVVVVV8AAAAAD/AAAAAA9VVVVVVVfAAAAAA/wAAAAAPVVVVVVVXwAAAAAP8AAAAAD1VVVVVVV8AAAAAD/AAAAAA9VVVVVVVfAAAAAA/wAAAAAPVVVVVVVXwAAAAA98AAAAAD1VVVVVVXwAAAAAPfAAAAAA9VVVVVVV8AAAAAD3wAAAAAPVVVVVVVfAAAAAA98AAAAAPVVVVVVVfAAAAAA9XwAAAAD1VVVVVVXwAAAAAPVfwAAA/1VVVVVVXwAAAAAD1V/////1VVVVVVXwAAAAAD1VV///9VVVVVVVV8AAAAAA9VVVVVVVVVVVVVV8AAAAAA9VVVVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVVVfAAAAAAD1VVVVVVVVVVVVVXwAAAAAD1VVVVVVVVVVVVVXwAAAAAA9VVVVVVVVVVVVVV8AAAAAA9VVVVVVVVVVVVVV8AAAAAAPVVVVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVVVfAAAAAAD1VVVVVVVVVVVVVfAAAAAAD1VVVVVVVVVVVVVXwAAAAAA9VVVVVVVVVVVVVXwAAAAAA9VVVVVVVVVVVVVV8AAAAAAPVVVVVVVVVVVVVV8AAAAAAPVVVVVVVVVVVVVV8AAAAAAD1VVVVVVVVVVVVVfAAAAAAD1VVVVVVVVVVVVVfAAAAAAA9VVVVVVVVVVVVVXwAAAAAA9VVVVVVVVVVVVVXwAAAAAAPVVVVVVVVVVVVVV8AAAAAAPVVVVVVVVVVVVVV8AAAAAAPVVVVVVVVVVVVVV8AAAAAAD1VVVVVVVVVVVVVfAAAAAAD1VVVVVVVVVVVVVfAAAAAAA9VVVVVVVVVVVVVXwAAAAAA9VVVVVVVVVVVVVXwAAAAAAPVVVVVVVVVVVVVV8AAAAAAPVVVVVVVVVVVVVV8AAAAAAD1VVVVVVVVVVVVV8AAAAAAD1VVVVVVVVVVVVVfAAAAAAA9VVVVVVVVVVVVVfAAAAAAA9VVVVVVVVVVVVVXwAAAAAAPVVVVVVVVVVVVVXwAAAAAAPVVVVVVVVVVVVVV8AAAAAAD1VVVVVVVVVVVVV8AAAAAAD1VVVVVVVVVVVVV8AAAAAAA9VVVVVVVVVVVVVfAAAAAAA9VVVVVVVVVVVVVfAAAAAAA9VVVVVVVVVVVVVXwAAAAAAPVVVVVVVVVVVVVXwAAAAAAPVVVVVVVVVVVVVXwAAAAAAD1VVVVVVVVVVVVV8AAAAAAD1VVVVVVVVVVVVV8AAAAAAA9VVVVVVVVVVVVVfAAAAAAA9VVVVVVVVVVVVVfAAAAAAAPVVVVVVVVVVVVVXwAAAAAAPVVVVVVVVVVVVVXwAAAAAAD1VVVVVVVVVVVVXwAAAAAAD1VVVVVVVVVVVVV8AAAAAAA9VVVVVVVVVVVVV8AAAAAAA9VVVVVVVVVVVVVfAAAAAAAPVVVVVVVVVVVVVXwAAAAAAPVVVVVVVVVVVVVV8AAAAAAD1VVVVVVVVVVVVVfAAAAAAD1VVVVVVVVVVVVVXwAAAAAA9VVVVVVVVVVVVVV8AAAAAA9VVVVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVVVV8AAAAAPVVVVVVVVVVVVVVVfAAAAAD1VVVVVVVVVVVVVVV/AAAAD1VVVVVVVVVVVVVVVX/AAAA9VVVVVVVVVVVVVVVVX/AAD9VVVVVVVVVVVVVVVVVX///9VVVVVVVVVVVVVVVVVVX//1VVVVVVVVVVVVQ=="},
|
||||||
|
{"width" : "67", "buffer":"VVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//////9VVVVVVVVVVVVVVf////////1VVVVVVVVVVVX/8AAAAAAP/9VVVVVVVVVVf/AAAAAAAAA/9VVVVVVVVV/wAAAAAAAAAAP9VVVVVVVX/AAAAAAAAAAAAP1VVVVVVX8AAAAAAAAAAAAAPVVVVVVXwAAAAAAAAAAAAAA9VVVVVXwAAAAAAAAAAAAAAD1VVVVXwAAAAAAAAAAAAAAAPVVVVXwAAAAAAAAAAAAAAAA9VVVV8AAAAAAAAAAAAAAAAD1VVV8AAAAAAAAAAAAAAAAA9VVVfAAAAAAAAAAAAAAAAAD1VVXwAAAAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAAAAAPVVV8AAAAAAAP//AAAAAAAA9VVfAAAAAAAP///AAAAAAAPVVXwAAAAAAPVVX8AAAAAAD1VXwAAAAAAPVVVXwAAAAAA9VV8AAAAAAPVVVVfAAAAAAPVVfAAAAAAPVVVVV8AAAAAD1VXwAAAAAPVVVVVfAAAAAAPVV8AAAAAD1VVVVXwAAAAAD1VfAAAAAA9VVVVVfAAAAAA9VXwAAAAAPVVVVVXwAAAAAPVV8AAAAAD1VVVVV8AAAAAPVVfAAAAAA9VVVVVfAAAAAD1VXwAAAAAPVVVVVXwAAAAA9VVfAAAAAD1VVVVXwAAAAAPVVXwAAAAA9VVVVV8AAAAAD1VV8AAAAAD1VVVVfAAAAAA9VVfAAAAAA9VVVVfAAAAAA9VVV8AAAAAD1VVVfAAAAAAPVVVfAAAAAAP1VV/AAAAAAD1VVXwAAAAAA////AAAAAAD1VVVfAAAAAAA//8AAAAAAA9VVVV8AAAAAAAAAAAAAAAA9VVVVfAAAAAAAAAAAAAAAA9VVVVV8AAAAAAAAAAAAAAA9VVVVVX8AAAAAAAAAAAAAA9VVVVVVf8AAAAAAAAAAAAD9VVVVVVVfwAAAAAAAAAAAD9VVVVVVVVfAAAAAAAAAAAD1VVVVVVVVXwAAAAAAAAAAA9VVVVVVVVXwAAAAAAAAAAAD1VVVVVVVfwAAAAAAAAAAAAP1VVVVVVfwAAAAAAAAAAAAA/VVVVVV/AAAAAAAAAAAAAAA/VVVVV/AAAAAAAAAAAAAAAD9VVVV8AAAAAAAAAAAAAAAAD1VVV8AAAAAAAAAAAAAAAAA9VVV8AAAAAAAP//wAAAAAAD1VVfAAAAAAA////wAAAAAAPVVfAAAAAAD/VVV/AAAAAAD1VXwAAAAAD9VVVV8AAAAAAPVXwAAAAAD1VVVVXwAAAAAD1V8AAAAAD1VVVVVfAAAAAAPV8AAAAAA9VVVVVV8AAAAAD1fAAAAAA9VVVVVVfAAAAAAPXwAAAAAPVVVVVVV8AAAAAD18AAAAAPVVVVVVVfAAAAAA98AAAAAD1VVVVVVXwAAAAAPfAAAAAA9VVVVVVV8AAAAAD3wAAAAAPVVVVVVVfAAAAAA98AAAAAD1VVVVVVXwAAAAAD/AAAAAA9VVVVVVV8AAAAAA/wAAAAAPVVVVVVVfAAAAAAP8AAAAAD1VVVVVVXwAAAAAD/AAAAAA9VVVVVVV8AAAAAA/wAAAAAPVVVVVVVfAAAAAAP8AAAAAD1VVVVVVXwAAAAAD/AAAAAA9VVVVVVV8AAAAAA/wAAAAAD1VVVVVVfAAAAAAP8AAAAAA9VVVVVVfAAAAAAD/AAAAAAPVVVVVVXwAAAAAD3wAAAAAA9VVVVVXwAAAAAA98AAAAAAD1VVVVV8AAAAAAPXwAAAAAAPVVVVX8AAAAAAD18AAAAAAA/VVVX8AAAAAAA9fAAAAAAAD/VV/wAAAAAAAPXwAAAAAAAD///wAAAAAAAPVfAAAAAAAAD/8AAAAAAAAD1XwAAAAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAAAAPVVXwAAAAAAAAAAAAAAAAAPVVVfAAAAAAAAAAAAAAAAAD1VVV8AAAAAAAAAAAAAAAAP1VVVXwAAAAAAAAAAAAAAAP1VVVVfwAAAAAAAAAAAAAAPVVVVVV/wAAAAAAAAAAAAA/VVVVVVV/wAAAAAAAAAAAD/VVVVVVVV/wAAAAAAAAAAP9VVVVVVVVV//AAAAAAAAP/1VVVVVVVVVV//8AAAAA///VVVVVVVVVVVVX////////VVVVVVVVVVVVVVVf////9VVVVVVVVQ=="},
|
||||||
|
{"width" : "67", "buffer":"VVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//////9VVVVVVVVVVVVVVf////////1VVVVVVVVVVVf/8AAAAAAP/9VVVVVVVVVV//AAAAAAAAA/9VVVVVVVVX/AAAAAAAAAAAP9VVVVVVVX8AAAAAAAAAAAAP9VVVVVVXwAAAAAAAAAAAAAP1VVVVVfwAAAAAAAAAAAAAAPVVVVVfwAAAAAAAAAAAAAAA9VVVVfAAAAAAAAAAAAAAAAD1VVVXwAAAAAAAAAAAAAAAAPVVVXwAAAAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAAAAA9VfAAAAAAAAP//wAAAAAAAPVXwAAAAAAA////AAAAAAAA9V8AAAAAAD/VVV/AAAAAAAPV8AAAAAAD9VVVX8AAAAAAD1fAAAAAAD1VVVVXwAAAAAAPXwAAAAAD1VVVVVfAAAAAAD18AAAAAA9VVVVVV8AAAAAA9fAAAAAA9VVVVVVfAAAAAAPfAAAAAAPVVVVVVV8AAAAAD3wAAAAAD1VVVVVVfAAAAAA98AAAAAD1VVVVVVXwAAAAAD/AAAAAA9VVVVVVV8AAAAAA/wAAAAAPVVVVVVVfAAAAAAP8AAAAAD1VVVVVVXwAAAAAD/AAAAAA9VVVVVVV8AAAAAA/wAAAAAPVVVVVVVfAAAAAAP8AAAAAD1VVVVVVXwAAAAAD/AAAAAA9VVVVVVV8AAAAAA/wAAAAAPVVVVVVVfAAAAAAP8AAAAAD1VVVVVVXwAAAAAD/AAAAAAPVVVVVVV8AAAAAA/wAAAAAD1VVVVVVfAAAAAAP8AAAAAA9VVVVVVfAAAAAAD/AAAAAAD1VVVVVXwAAAAAA/wAAAAAAPVVVVVXwAAAAAAPfAAAAAAA9VVVVXwAAAAAAD3wAAAAAAD1VVVfwAAAAAAA98AAAAAAAP9VX/wAAAAAAAPfAAAAAAAA////AAAAAAAAD18AAAAAAAAP/wAAAAAAAAA9fAAAAAAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAAAAA9XwAAAAAAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAAAAD1VX8AAAAAAAAAAAAAAAAAA9VVfwAAAAAAAAAAAAAAAAAPVVVfwAAAAAAAAA8AAAAAAD1VVV/wAAAAAAAD/wAAAAAA9VVVV//AAAAAAP9fAAAAAAPVVVVV///8AD//1XwAAAAAD1VVVVVX//////VV8AAAAAA9VVVVVVVVf/1VVVfAAAAAAPVVVVVVVVVVVVVVXwAAAAAD1VVVVVVVVVVVVVV8AAAAAA9VX//9VVVVVVVVVfAAAAAAPVf////VVVVVVVVXwAAAAAD1/wAAP9VVVVVVVV8AAAAAA9/AAAAD1VVVVVVVfAAAAAAPfAAAAAPVVVVVVVXwAAAAAD/AAAAAD1VVVVVVV8AAAAAA/wAAAAA9VVVVVVVfAAAAAAP8AAAAAD1VVVVVVXwAAAAAD/AAAAAA9VVVVVVV8AAAAAD3wAAAAAPVVVVVVV8AAAAAA98AAAAAD1VVVVVVfAAAAAAPfAAAAAAPVVVVVVfAAAAAAD3wAAAAAA9VVVVVfAAAAAAA98AAAAAAD1VVVVfAAAAAAAPfAAAAAAAP1VVV/AAAAAAAPV8AAAAAAA/////AAAAAAAD1fAAAAAAAA///8AAAAAAAA9XwAAAAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAAAAA9VVVfAAAAAAAAAAAAAAAAA9VVVV8AAAAAAAAAAAAAAAA9VVVVXwAAAAAAAAAAAAAAA9VVVVVfwAAAAAAAAAAAAAA9VVVVVV/AAAAAAAAAAAAAD9VVVVVVV/AAAAAAAAAAAAP9VVVVVVVX/wAAAAAAAAAD/1VVVVVVVVX/8AAAAAAAD//VVVVVVVVVVV//wAAAAD//1VVVVVVVVVVVVf///////1VVVVVVVVVVVVVVV/////1VVVVVVVVQ=="},
|
||||||
|
{"width" : "21", "buffer":"VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf//VVVX///9VVfwAA/VV8AAAD1XwAAAA9fAAAAAPfAAAAAPfAAAAAP8AAAAAP8AAAAAD8AAAAAD8AAAAAD8AAAAADfAAAAAPfAAAAAPfAAAAAPXwAAAA9XwAAAD1V/AAAP1Vf/AP9VVV///1VVVV/1VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV/1VVVV///1VVf/AP/VV/AAAP1XwAAAA9XwAAAA9fAAAAAPfAAAAAPfAAAAAP8AAAAAD8AAAAAD8AAAAAD8AAAAAD8AAAAAPfAAAAAPfAAAAAPfAAAAA9XwAAAA9V8AAAD1VfwAA/VVX///9VVVf//VV"},
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
|
@ -0,0 +1,17 @@
|
||||||
|
{
|
||||||
|
"name":"Impact",
|
||||||
|
"size":"98",
|
||||||
|
"characters":[
|
||||||
|
{"width" : "57", "buffer":"VVVVVf///////1VVVVVVVVVf/////////1VVVVVVVX/wAAAAAAAP/VVVVVVVfwAAAAAAAAAP9VVVVVX8AAAAAAAAAAA/VVVVVfwAAAAAAAAAAAD1VVVV8AAAAAAAAAAAAA/VVVXwAAAAAAAAAAAAAP1VVfAAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAAD1XwAAAAAAA/AAAAAAAD1XwAAAAAAD/wAAAAAAD1fAAAAAAAPV8AAAAAAA9fAAAAAAA9VfAAAAAAA9fAAAAAAA9VXwAAAAAA9fAAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAPfAAAAAAD1VfAAAAAAA9fAAAAAAA9VfAAAAAAA9fAAAAAAAPV8AAAAAAA9XwAAAAAAD/wAAAAAAA9XwAAAAAAA/AAAAAAAD1XwAAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAD1VVV8AAAAAAAAAAAAAD1VVV/AAAAAAAAAAAAAPVVVVfwAAAAAAAAAAAD9VVVVV8AAAAAAAAAAAP1VVVVVfwAAAAAAAAAD9VVVVVVX/wAAAAAAAD/1VVVVVVVf/////////9VVVVVVVVVf///////9VVVVVA="},
|
||||||
|
{"width" : "42", "buffer":"VVVVVVVVV////9VVVVVVVVf/////VVVVVVVVfAAAAPVVVVVVVV8AAAAPVVVVVVVXwAAAAPVVVVVVVfAAAAAPVVVVVVX8AAAAAPVVVVVVfwAAAAAPVVVVVV8AAAAAAPVVVVVfwAAAAAAPVVVVV/AAAAAAAPVVVVfwAAAAAAAPVVVf/AAAAAAAAPVVX/wAAAAAAAAPVX/wAAAAAAAAAPf/8AAAAAAAAAAP/8AAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP//wAAAAAAAAAAP////wAAAAAAAAPVVf//AAAAAAAAPVVVVfwAAAAAAAPVVVVV8AAAAAAAPVVVVV8AAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVfAAAAAAAPVVVVVf////////VVVVVV///////9"},
|
||||||
|
{"width" : "56", "buffer":"VVVVV////////1VVVVVVVVX/////////9VVVVVVVV/wAAAAAAAD/VVVVVVV/AAAAAAAAAA/1VVVVVfwAAAAAAAAAAP1VVVVXwAAAAAAAAAAAD9VVVV8AAAAAAAAAAAAD1VVVfAAAAAAAAAAAAAD1VVV8AAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAAPVfAAAAAAAP8AAAAAAA9V8AAAAAAD/8AAAAAAA9fAAAAAAA9V8AAAAAAD18AAAAAAPVV8AAAAAAPXwAAAAAD1VXwAAAAAAPfAAAAAAPVVXwAAAAAA98AAAAAD1VVfAAAAAAD/AAAAAAPVVV8AAAAAAP8AAAAAA9VVXwAAAAAA/wAAAAAD1VVfAAAAAAD/AAAAAAPVVV8AAAAAAP8AAAAAA9VVXwAAAAAA/wAAAAAD1VV8AAAAAAD/AAAAAAPVVXwAAAAAAP8AAAAAA9VVfAAAAAAA/wAAAAAD1VV8AAAAAAD/AAAAAAPVVfAAAAAAAP8AAAAAA9VV8AAAAAAA/wAAAAAD1VfAAAAAAAD/AAAAAAPVV8AAAAAAA9///////9VXwAAAAAAD1///////VV8AAAAAAAPVVVVVVVVVXwAAAAAAA9VVVVVVVVV8AAAAAAAPVVVVVVVVVXwAAAAAAA9VVVVVVVVV8AAAAAAAD1VVVVVVVVXwAAAAAAA9VVVVVVVVV8AAAAAAAD1VVVVVVVVXwAAAAAAA9VVVVVVVVV8AAAAAAAD1VVVVVVVVfAAAAAAAA9VVVVVVVVV8AAAAAAAD1VVVVVVVVfAAAAAAAA9VVVVVVVVV8AAAAAAAD1VVVVVVVVfAAAAAAAA9VVVVVVVVXwAAAAAAAD1VVVVVVVVfAAAAAAAA9VVVVVVVVXwAAAAAAAD1VVVVVVVVfAAAAAAAA9VVVVVVVVXwAAAAAAAPVVVVVVVVVfAAAAAAAA9VVVVVVVVXwAAAAAAAPVVVVVVVVV8AAAAAAAA9VVVVVVVVXwAAAAAAAPVVVVVVVVV8AAAAAAAD1VVVVVVVVXwAAAAAAAPVVVVVVVVV8AAAAAAAD1VVVVVVVVfAAAAAAAA9VVVVVVVVV8AAAAAAAD1VVVVVVVVfAAAAAAAA9VVVVVVVVV8AAAAAAAPVVVVVVVVVfAAAAAAAA9VVVVVVVVXwAAAAAAAPVVVVVVVVVfAAAAAAAA9VVVVVVVVXwAAAAAAAPVVVVVVVVVfAAAAAAAD1VVVVVVVVXwAAAAAAAPVVVVVVVVV8AAAAAAAD1VVVVVVVVXwAAAAAAA9VVVVVVVVV8AAAAAAAD1VVVVVVVVXwAAAAAAA9VVVVVVVVV8AAAAAAAPVVVVVVVVVfAAAAAAAA9VVVVVVVVV8AAAAAAAPVVVVVVVVVfAAAAAAAD1VVVVVVVVV8AAAAAAAPVVVVVVVVVfAAAAAAAAP///////1XwAAAAAAAAP///////1fAAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAD1//////////////////V/////////////////1Q=="},
|
||||||
|
{"width" : "57", "buffer":"VVVV//////////VVVVVVVV////////////VVVVVVf/AAAAAAAAAA/9VVVVV/AAAAAAAAAAAA/VVVVXwAAAAAAAAAAAAD1VVVfAAAAAAAAAAAAAA9VVV8AAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAAAPV8AAAAAAAA/AAAAAAAD18AAAAAAAD/wAAAAAAD18AAAAAAAPV8AAAAAAD18AAAAAAA9VfAAAAAAA98AAAAAAD1VfAAAAAAA98AAAAAAD1VXwAAAAAA98AAAAAAD1VXwAAAAAA98AAAAAAD1VXwAAAAAA98AAAAAAD1VXwAAAAAA98AAAAAAD1VXwAAAAAA98AAAAAAD1VXwAAAAAA98AAAAAAD1VXwAAAAAA98AAAAAAD1VXwAAAAAA98AAAAAAD1VXwAAAAAA98AAAAAAD1VXwAAAAAA98AAAAAAD1VXwAAAAAA9////////1VXwAAAAAA9////////1VXwAAAAAA9VVVVVVVVVVXwAAAAAA9VVVVVVVVVVXwAAAAAA9VVVVVVVVVVfAAAAAAA9VVVVVVVVVVfAAAAAAD1VVVVVVVVVV8AAAAAAD1VVVVVVVVV/wAAAAAAPVVVVVVV////AAAAAAAPVVVVVVV///AAAAAAAA9VVVVVVV8AAAAAAAAAP1VVVVVVV8AAAAAAAAA/VVVVVVVV8AAAAAAAAD1VVVVVVVV8AAAAAAAAPVVVVVVVVV8AAAAAAAAD9VVVVVVVV8AAAAAAAAA/VVVVVVVV8AAAAAAAAAD9VVVVVVV8AAAAAAAAAA9VVVVVVV8AAAAAAAAAAPVVVVVVV8AAAAAAAAAAD1VVVVVV8AAAAAAAAAAD1VVVVVV8AAAAAAAAAAA9VVVVVV///AAAAAAAAA9VVVVVV///8AAAAAAAA9VVVVVVVVV/AAAAAAAA9VVVVVVVVVXwAAAAAAAPVVVVVVVVVV8AAAAAAAPVVVVVVVVVVfAAAAAAAPVVVVVVVVVVfAAAAAAAP////////1VfAAAAAAAP////////1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VXwAAAAAAP8AAAAAAD1VfAAAAAAAP8AAAAAAD1VfAAAAAAA98AAAAAAA9VfAAAAAAA9fAAAAAAAPV8AAAAAAA9fAAAAAAAD/wAAAAAAA9fAAAAAAAA/AAAAAAAD1fAAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAA9VVfAAAAAAAAAAAAAAD1VVXwAAAAAAAAAAAAAPVVVV/AAAAAAAAAAAAA9VVVVfwAAAAAAAAAAAP1VVVVV/AAAAAAAAAAD/VVVVVVf/AAAAAAAAA/1VVVVVVV//////////9VVVVVVVVV/////////VVVVVA="},
|
||||||
|
{"width" : "61", "buffer":"VVVVVVVf/////////9VVVVVVVVVf//////////1VVVVVVVVXwAAAAAAAAA9VVVVVVVVXwAAAAAAAAAPVVVVVVVVV8AAAAAAAAAD1VVVVVVVVfAAAAAAAAAA9VVVVVVVVfAAAAAAAAAAPVVVVVVVVXwAAAAAAAAAD1VVVVVVVV8AAAAAAAAAA9VVVVVVVV8AAAAAAAAAAPVVVVVVVVfAAAAAAAAAAD1VVVVVVVXwAAAAAAAAAA9VVVVVVVXwAAAAAAAAAAPVVVVVVVV8AAAAAAAAAAD1VVVVVVVfAAAAAAAAAAA9VVVVVVVfAAAAAAAAAAAPVVVVVVVXwAAAAAAAAAAD1VVVVVVV8AAAAAAAAAAA9VVVVVVV8AAAAAAAAAAAPVVVVVVVfAAAAAAAAAAAD1VVVVVVXwAAAAAAAAAAA9VVVVVVXwAAAAAAAAAAAPVVVVVVV8AAAAAAAAAAAD1VVVVVVfAAAAAAAAAAAA9VVVVVVfAAAAAAAAAAAAPVVVVVVXwAAAAAAAAAAAD1VVVVVV8AAAAAAAAAAAA9VVVVVV8AAAAAAAAAAAAPVVVVVVfAAAAAAAAAAAAD1VVVVVXwAAAAAAAAAAAA9VVVVVXwAAAAMAAAAAAAPVVVVVV8AAAAPwAAAAAAD1VVVVVfAAAAPfAAAAAAA9VVVVVfAAAAD3wAAAAAAPVVVVVXwAAAA98AAAAAAD1VVVVV8AAAA9fAAAAAAA9VVVVV8AAAAPXwAAAAAAPVVVVVfAAAAD18AAAAAAD1VVVVXwAAAA9fAAAAAAA9VVVVXwAAAA9XwAAAAAAPVVVVV8AAAAPV8AAAAAAD1VVVVfAAAAD1fAAAAAAA9VVVVfAAAAD1XwAAAAAAPVVVVXwAAAA9V8AAAAAAD1VVVV8AAAAPVfAAAAAAA9VVVV8AAAAD1XwAAAAAAPVVVVfAAAAA9V8AAAAAAD1VVVXwAAAA9VfAAAAAAA9VVVXwAAAAPVXwAAAAAAPVVVV8AAAAD1V8AAAAAAD1VVVfAAAAA9VfAAAAAAA9VVVfAAAAA9VXwAAAAAAPVVVXwAAAAPVV8AAAAAAD1VVV8AAAAD1VfAAAAAAA9VVV8AAAAD1VXwAAAAAAPVVVfAAAAA9VV8AAAAAAD1VVXwAAAAPVVfAAAAAAA9VVXwAAAAD1VXwAAAAAAPVVV8AAAAA9VV8AAAAAAD1VVfAAAAA9VVfAAAAAAA9VVXwAAAAPVVXwAAAAAAPVVXwAAAAD1VV8AAAAAAD1VV8AAAAD1VVfAAAAAAA9VV8AAAAAP///AAAAAAAD///AAAAAA///AAAAAAAAP//wAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAD//////////AAAAAAAAP/9/////////8AAAAAAAP//VVVVVVVVVXwAAAAAAPVVVVVVVVVVVV8AAAAAAD1VVVVVVVVVVVfAAAAAAA9VVVVVVVVVVVXwAAAAAAPVVVVVVVVVVVV8AAAAAAD1VVVVVVVVVVVfAAAAAAA9VVVVVVVVVVVXwAAAAAAPVVVVVVVVVVVV8AAAAAAD1VVVVVVVVVVVfAAAAAAA9VVVVVVVVVVVXwAAAAAAPVVVVVVVVVVVV8AAAAAAD1VVVVVVVVVVVfAAAAAAA9VVVVVVVVVVVXwAAAAAAPVVVVVVVVVVVV8AAAAAAD1VVVVVVVVVVVfAAAAAAA9VVVVVVVVVVVX////////VVVVVVVVVVVVf///////VVUA=="},
|
||||||
|
{"width" : "59", "buffer":"V/////////////////VVf////////////////9VV8AAAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAAAD1VfAAAAAAAP/////////VV8AAAAAAD/////////9VXwAAAAAA9VVVVVVVVVVVfAAAAAAD1VVVVVVVVVVV8AAAAAAPVVVVVVVVVVVXwAAAAAA9VVVVVVVVVVVfAAAAAAD1VVVVVVVVVVV8AAAAAAPVVVVVVVVVVVXwAAAAAA9VVVVVVVVVVVfAAAAAAD1VVVVVVVVVVV8AAAAAAPVVVf/9VVVVVXwAAAAAA9VX/////VVVVfAAAAAAD1X/8AA//1VVV8AAAAAAPX/AAAAAP9VVXwAAAAAA9/AAAAAAD9VVfAAAAAAA/AAAAAAAA9VV8AAAAAAAwAAAAAAAA9VXwAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAAAA9XwAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAD18AAAAAAAA/wAAAAAAAPXwAAAAAAAP/wAAAAAAA9fAAAAAAAD1XwAAAAAAA98AAAAAAA9VXwAAAAAAD3wAAAAAAPVVfAAAAAAAPfAAAAAAA9VV8AAAAAAA98AAAAAAD1VV8AAAAAAD3wAAAAAAPVVXwAAAAAAPf///////9VVfAAAAAAA9////////1VV8AAAAAAD1VVVVVVVVVVXwAAAAAAPVVVVVVVVVVVfAAAAAAA9VVVVVVVVVVV8AAAAAAD1VVVVVVVVVVXwAAAAAAPVVVVVVVVVVVfAAAAAAA9VVVVVVVVVVV8AAAAAAD1VVVVVVVVVVXwAAAAAAPVVVVVVVVVVVfAAAAAAA9VVVVVVVVVVV8AAAAAAD1VVVVVVVVVVXwAAAAAAPf///////9VVfAAAAAAA/////////1VV8AAAAAAD/AAAAAAAPVVXwAAAAAAP8AAAAAAA9VVfAAAAAAA/wAAAAAAD1VV8AAAAAAD/AAAAAAAPVVXwAAAAAAP8AAAAAAA9VVfAAAAAAA/wAAAAAAD1VV8AAAAAAD/AAAAAAAPVVXwAAAAAAPfAAAAAAA9VVfAAAAAAA98AAAAAAD1VV8AAAAAAD3wAAAAAAPVVXwAAAAAAPfAAAAAAA9VVfAAAAAAA98AAAAAAD1VV8AAAAAAD3wAAAAAAPVVXwAAAAAAPfAAAAAAA9VVfAAAAAAA98AAAAAAD1VV8AAAAAAD3wAAAAAAPVVXwAAAAAAPfAAAAAAAPVVfAAAAAAA9fAAAAAAA9VV8AAAAAAD18AAAAAAD1VfAAAAAAA9XwAAAAAAPVV8AAAAAAD1fAAAAAAAP1fAAAAAAAPVfAAAAAAAP/wAAAAAAA9V8AAAAAAAD8AAAAAAAPVXwAAAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAAAA9VVfAAAAAAAAAAAAAAAPVVVfAAAAAAAAAAAAAAA9VVV8AAAAAAAAAAAAAAPVVVV/AAAAAAAAAAAAAD1VVVV/AAAAAAAAAAAAA9VVVVVfwAAAAAAAAAAA/VVVVVVf8AAAAAAAAAA/1VVVVVVX/wAAAAAAAD/1VVVVVVVV//////////1VVVVVVVVVX////////VVVVVQ"},
|
||||||
|
{"width" : "59", "buffer":"VVVVVf////////1VVVVVVVVVf//////////VVVVVVVVf8AAAAAAAAD/1VVVVVVf8AAAAAAAAAAP1VVVVVX8AAAAAAAAAAAD9VVVVV8AAAAAAAAAAAAD9VVVVfAAAAAAAAAAAAAA9VVVXwAAAAAAAAAAAAAA9VVV8AAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAAD1VV8AAAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAAPVfAAAAAAAD/AAAAAAAA9V8AAAAAAA//AAAAAAAD1fAAAAAAAPVfAAAAAAAD18AAAAAAD1VfAAAAAAAPXwAAAAAAPVVfAAAAAAA9fAAAAAAA9VV8AAAAAAD18AAAAAAD1VXwAAAAAAD3wAAAAAAPVVfAAAAAAAPfAAAAAAA9VV8AAAAAAA/wAAAAAAD1VXwAAAAAAD/AAAAAAAPVVfAAAAAAAP8AAAAAAA9VV8AAAAAAA/wAAAAAAD1VXwAAAAAAD/AAAAAAAPVVf////////8AAAAAAA9VVX///////3wAAAAAAD1VVVVVVVVVVfAAAAAAAPVVVVVVVVVVV8AAAAAAA9VVVVVVVVVVXwAAAAAAD1VVVVVVVVVVfAAAAAAAPVVX///VVVVV8AAAAAAA9V/////9VVVXwAAAAAAD1f/AAAP/VVVfAAAAAAAPfwAAAAA/1VV8AAAAAAAP8AAAAAAP1VXwAAAAAAAMAAAAAAAD1VfAAAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAD3wAAAAAAAAMAAAAAAAAPfAAAAAAAAP/AAAAAAAA98AAAAAAAD9/AAAAAAAD3wAAAAAAA9VfAAAAAAAD/AAAAAAAPVVfAAAAAAAP8AAAAAAA9VV8AAAAAAA/wAAAAAAD1VXwAAAAAAD/AAAAAAAPVVfAAAAAAAP8AAAAAAA9VV8AAAAAAA/wAAAAAAD1VXwAAAAAAD/AAAAAAAPVVfAAAAAAAP8AAAAAAA9VV8AAAAAAA/wAAAAAAD1VXwAAAAAAD/AAAAAAAPVVfAAAAAAAP8AAAAAAA9VV8AAAAAAA/wAAAAAAD1VXwAAAAAAD/AAAAAAAPVVfAAAAAAAP8AAAAAAA9VV8AAAAAAA/wAAAAAAD1VXwAAAAAAD/AAAAAAAPVVfAAAAAAAP8AAAAAAA9VV8AAAAAAA/wAAAAAAD1VXwAAAAAAD/AAAAAAAPVVfAAAAAAAP8AAAAAAA9VV8AAAAAAA/wAAAAAAD1VXwAAAAAAD/AAAAAAAPVVfAAAAAAAP8AAAAAAA9VV8AAAAAAA/wAAAAAAD1VXwAAAAAAD/AAAAAAAPVVfAAAAAAAP8AAAAAAA9VV8AAAAAAA98AAAAAAD1VXwAAAAAAD3wAAAAAAPVVfAAAAAAAPfAAAAAAA9VV8AAAAAAA98AAAAAAD1VXwAAAAAAPXwAAAAAAPVVfAAAAAAA9fAAAAAAAPVXwAAAAAAD18AAAAAAAPV8AAAAAAAPV8AAAAAAAP/AAAAAAAD1XwAAAAAAAPwAAAAAAAPVXwAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAAAA9VVV8AAAAAAAAAAAAAAPVVVV8AAAAAAAAAAAAAD1VVVV8AAAAAAAAAAAAD9VVVVV/AAAAAAAAAAAA/VVVVVV/wAAAAAAAAAA/VVVVVVVf/AAAAAAAAD/1VVVVVVVX//////////1VVVVVVVVVf////////VVVVVQ"},
|
||||||
|
{"width" : "48", "buffer":"f//////////////9////////////////8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP////////AAAAAAAP////////wAAAAAAPVVVVVVVV8AAAAAAPVVVVVVVXwAAAAAAPVVVVVVVXwAAAAAAPVVVVVVVXwAAAAAAPVVVVVVVXwAAAAAA9VVVVVVVXwAAAAAA9VVVVVVVfAAAAAAA9VVVVVVVfAAAAAAA9VVVVVVVfAAAAAAD1VVVVVVVfAAAAAAD1VVVVVVV8AAAAAAD1VVVVVVV8AAAAAAD1VVVVVVV8AAAAAAD1VVVVVVV8AAAAAAD1VVVVVVV8AAAAAAPVVVVVVVXwAAAAAAPVVVVVVVXwAAAAAAPVVVVVVVXwAAAAAAPVVVVVVVXwAAAAAAPVVVVVVVfAAAAAAA9VVVVVVVfAAAAAAA9VVVVVVVfAAAAAAA9VVVVVVVfAAAAAAA9VVVVVVVfAAAAAAD1VVVVVVV8AAAAAAD1VVVVVVV8AAAAAAD1VVVVVVV8AAAAAAD1VVVVVVV8AAAAAAD1VVVVVVXwAAAAAAD1VVVVVVXwAAAAAAPVVVVVVVXwAAAAAAPVVVVVVVXwAAAAAAPVVVVVVVXwAAAAAAPVVVVVVVfAAAAAAA9VVVVVVVfAAAAAAA9VVVVVVVfAAAAAAA9VVVVVVVfAAAAAAA9VVVVVVVfAAAAAAA9VVVVVVV8AAAAAAA9VVVVVVV8AAAAAAD1VVVVVVV8AAAAAAD1VVVVVVV8AAAAAAD1VVVVVVXwAAAAAAPVVVVVVVXwAAAAAAPVVVVVVVXwAAAAAAPVVVVVVVXwAAAAAAPVVVVVVVXwAAAAAAPVVVVVVVXwAAAAAAPVVVVVVVfAAAAAAA9VVVVVVVfAAAAAAA9VVVVVVVfAAAAAAA9VVVVVVV8AAAAAAA9VVVVVVV8AAAAAAA9VVVVVVV8AAAAAAD1VVVVVVV8AAAAAAD1VVVVVVV8AAAAAAD1VVVVVVV8AAAAAAD1VVVVVVXwAAAAAAD1VVVVVVXwAAAAAAPVVVVVVVXwAAAAAAPVVVVVVVXwAAAAAAPVVVVVVVfAAAAAAAPVVVVVVVfAAAAAAAPVVVVVVVfAAAAAAA9VVVVVVVfAAAAAAA9VVVVVVVfAAAAAAA9VVVVVVV8AAAAAAA9VVVVVVV8AAAAAAD1VVVVVVV8AAAAAAD1VVVVVVV8AAAAAAD1VVVVVVXwAAAAAAD1VVVVVVXwAAAAAAD1VVVVVVXwAAAAAAD1VVVVVVXwAAAAAAPVVVVVVVXwAAAAAAPVVVVVVVfAAAAAAAPVVVVVVVfAAAAAAAPVVVVVVVf///////9VVVVVVVX///////1VVVVV"},
|
||||||
|
{"width" : "58", "buffer":"VVVVV/////////1VVVVVVVVX//////////9VVVVVVVf8AAAAAAAAA/9VVVVVV/wAAAAAAAAAAP1VVVVV/AAAAAAAAAAAAPVVVVV8AAAAAAAAAAAAA9VVVV8AAAAAAAAAAAAAD1VVV8AAAAAAAAAAAAAAPVVVfAAAAAAAAAAAAAAA9VVfAAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAD1V8AAAAAAAP8AAAAAAAPVfAAAAAAAP/wAAAAAAD1XwAAAAAAPVfAAAAAAA9XwAAAAAAD1V8AAAAAAD18AAAAAAD1VfAAAAAAA9fAAAAAAA9VXwAAAAAAPXwAAAAAAPVV8AAAAAAD18AAAAAAD1VfAAAAAAA9fAAAAAAA9VXwAAAAAAPXwAAAAAAPVV8AAAAAAD18AAAAAAD1VfAAAAAAA9fAAAAAAA9VXwAAAAAAPXwAAAAAAPVV8AAAAAAD18AAAAAAD1VfAAAAAAA9fAAAAAAA9VXwAAAAAAPXwAAAAAAPVV8AAAAAAD18AAAAAAD1VfAAAAAAA9fAAAAAAA9VXwAAAAAAPXwAAAAAAPVV8AAAAAAD1fAAAAAAD1VfAAAAAAA9XwAAAAAA9VXwAAAAAA9V8AAAAAAD1V8AAAAAAPVXwAAAAAAPV8AAAAAAD1V8AAAAAAA/8AAAAAAD1VXwAAAAAAD8AAAAAAD1VV8AAAAAAAAAAAAAAD9VVXwAAAAAAAAAAAAAD9VVVfAAAAAAAAAAAAAD1VVVV8AAAAAAAAAAAAD1VVVVXwAAAAAAAAAAAD1VVVVXwAAAAAAAAAAAAPVVVVXwAAAAAAAAAAAAA/VVVXwAAAAAAAAAAAAAD9VVXwAAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAAPXwAAAAAAAP8AAAAAAAD18AAAAAAAP/wAAAAAAA9fAAAAAAAPVfAAAAAAAPXwAAAAAAPVV8AAAAAAD3wAAAAAAD1VfAAAAAAA98AAAAAAD1VXwAAAAAAD/AAAAAAA9VV8AAAAAAA/wAAAAAAPVVXwAAAAAAP8AAAAAAD1VV8AAAAAAD/AAAAAAA9VVfAAAAAAA/wAAAAAAPVVXwAAAAAAP8AAAAAAD1VV8AAAAAAD/AAAAAAA9VVfAAAAAAA/wAAAAAAPVVXwAAAAAAP8AAAAAAD1VV8AAAAAAD/AAAAAAA9VVfAAAAAAA/wAAAAAAPVVXwAAAAAAP8AAAAAAD1VV8AAAAAAD/AAAAAAA9VVfAAAAAAA/wAAAAAAPVVXwAAAAAAP8AAAAAAD1VV8AAAAAAD/AAAAAAA9VVfAAAAAAA/wAAAAAAPVVXwAAAAAAP8AAAAAAD1VV8AAAAAAD/AAAAAAA9VVfAAAAAAA/wAAAAAAPVVXwAAAAAAP8AAAAAAD1VXwAAAAAAD3wAAAAAAPVV8AAAAAAD18AAAAAAD1VfAAAAAAA9fAAAAAAAPVXwAAAAAAPXwAAAAAAA9XwAAAAAAD18AAAAAAAD/wAAAAAAA9XwAAAAAAAPwAAAAAAAPV8AAAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAA9VVVfAAAAAAAAAAAAAA/VVVV8AAAAAAAAAAAAA/VVVVX8AAAAAAAAAAAD9VVVVVf8AAAAAAAAAAP9VVVVVVf/AAAAAAAAD/1VVVVVVVf//////////VVVVVVVVVX////////1VVVVU="},
|
||||||
|
{"width" : "59", "buffer":"VVVVVf////////1VVVVVVVVV//////////9VVVVVVVV/8AAAAAAAAD/VVVVVVV/wAAAAAAAAAA/1VVVVVfwAAAAAAAAAAAP1VVVVXwAAAAAAAAAAAAD1VVVV8AAAAAAAAAAAAAD1VVVfAAAAAAAAAAAAAAD1VVXwAAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAAA9VfAAAAAAAA/AAAAAAAA9XwAAAAAAAP/AAAAAAAD1fAAAAAAAD1fAAAAAAAPV8AAAAAAA9VfAAAAAAAPXwAAAAAAPVVfAAAAAAA9fAAAAAAA9VV8AAAAAAD18AAAAAAD1VXwAAAAAAPfAAAAAAAPVVfAAAAAAAP8AAAAAAA9VV8AAAAAAA/wAAAAAAD1VXwAAAAAAD/AAAAAAAPVVfAAAAAAAP8AAAAAAA9VV8AAAAAAA/wAAAAAAD1VXwAAAAAAD/AAAAAAAPVVfAAAAAAAP8AAAAAAA9VV8AAAAAAA/wAAAAAAD1VXwAAAAAAD/AAAAAAAPVVfAAAAAAAP8AAAAAAA9VV8AAAAAAA/wAAAAAAD1VXwAAAAAAD/AAAAAAAPVVfAAAAAAAP8AAAAAAA9VV8AAAAAAA/wAAAAAAD1VXwAAAAAAD/AAAAAAAPVVfAAAAAAAP8AAAAAAA9VV8AAAAAAA/wAAAAAAD1VXwAAAAAAD/AAAAAAAPVVfAAAAAAAP8AAAAAAA9VV8AAAAAAA/wAAAAAAD1VXwAAAAAAD/AAAAAAAPVVfAAAAAAAP8AAAAAAA9VV8AAAAAAA/wAAAAAAD1VXwAAAAAAD/AAAAAAAPVVfAAAAAAAP8AAAAAAA9VV8AAAAAAA/wAAAAAAD1VXwAAAAAAD/AAAAAAAD1VfAAAAAAAPfAAAAAAAPVXwAAAAAAA98AAAAAAAP/8AAAAAAAD3wAAAAAAAP/AAAAAAAAPfAAAAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAAAAD3wAAAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAAAPVV8AAAAAAAPAAAAAAAA9VV/AAAAAAD/AAAAAAAD1VV/wAAAAD9fAAAAAAAPVVVf/wAD//V8AAAAAAA9VVVX/////VXwAAAAAAD1VVVVX//VVVfAAAAAAAPVVVVVVVVVVV8AAAAAAA9VVVVVVVVVVXwAAAAAAD1VVVVVVVVVVfAAAAAAAPVVVVVVVVVVV8AAAAAAA9////////VVXwAAAAAAD/////////VVfAAAAAAAP8AAAAAAA9VV8AAAAAAA/wAAAAAAD1VXwAAAAAAD/AAAAAAAPVVfAAAAAAAP8AAAAAAA9VV8AAAAAAA/wAAAAAAD1VXwAAAAAAD3wAAAAAAPVVfAAAAAAAPfAAAAAAA9VV8AAAAAAD18AAAAAAD1VXwAAAAAAPXwAAAAAAPVVfAAAAAAA9fAAAAAAAPVXwAAAAAAD18AAAAAAAPV8AAAAAAA9V8AAAAAAAP/AAAAAAAD1XwAAAAAAAPwAAAAAAAPVXwAAAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAD1VV8AAAAAAAAAAAAAAA9VVV8AAAAAAAAAAAAAAD1VVXwAAAAAAAAAAAAAA9VVVXwAAAAAAAAAAAAAPVVVVX8AAAAAAAAAAAAP1VVVVX8AAAAAAAAAAAD9VVVVVV/AAAAAAAAAAD9VVVVVVV/8AAAAAAAAP/VVVVVVVVf//////////VVVVVVVVVV////////9VVVVVQ"},
|
||||||
|
{"width" : "18", "buffer":"VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV////////////8AAAAP8AAAAP8AAAAP8AAAAP8AAAAP8AAAAP8AAAAP8AAAAP8AAAAP8AAAAP8AAAAP8AAAAP8AAAAP8AAAAP8AAAAP8AAAAP8AAAAP//////f/////VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV////////////8AAAAP8AAAAP8AAAAP8AAAAP8AAAAP8AAAAP8AAAAP8AAAAP8AAAAP8AAAAP8AAAAP8AAAAP8AAAAP8AAAAP8AAAAP8AAAAP8AAAAP8AAAAP//////f/////"}
|
||||||
|
]
|
||||||
|
}
|
|
@ -0,0 +1,17 @@
|
||||||
|
{
|
||||||
|
"name":"Nunito",
|
||||||
|
"size":"80",
|
||||||
|
"characters":[
|
||||||
|
{"width" : "62", "buffer":"VVVVVVV//////9VVVVVVVVVVVVX////////1VVVVVVVVVVX/wAAAAAA/9VVVVVVVVVV/AAAAAAAAD/VVVVVVVVV/AAAAAAAAAA/VVVVVVVVfwAAAAAAAAAAP1VVVVVVXwAAAAAAAAAAAP1VVVVVV8AAAAAAAAAAAAD1VVVVVfAAAAAAAAAAAAAPVVVVVXwAAAAAAAAAAAAAPVVVVV8AAAAAAAAAAAAAAPVVVVXwAAAAAAAAAAAAAAPVVVV8AAAAAAAAAAAAAAA9VVVXwAAAAAAAAAAAAAAA9VVV8AAAAAAAAAAAAAAAD1VVXwAAAAAAAAAAAAAAAD1VV8AAAAAAAAAAAAAAAAPVVXwAAAAAAA/8AAAAAAAPVV8AAAAAAA//8AAAAAAA9VXwAAAAAAP1V8AAAAAAD1VfAAAAAAD1VV8AAAAAAD1XwAAAAAA9VVV8AAAAAAPVfAAAAAAD1VVV8AAAAAA9V8AAAAAA9VVVXwAAAAAD1XwAAAAAD1VVVfAAAAAAD18AAAAAAPVVVVfAAAAAAPXwAAAAAD1VVVV8AAAAAA9fAAAAAAPVVVVXwAAAAAD18AAAAAA9VVVVfAAAAAAPXwAAAAAD1VVVV8AAAAAAPfAAAAAAPVVVVXwAAAAAA98AAAAAA9VVVVXwAAAAAD/AAAAAAD1VVVVfAAAAAAP8AAAAAAPVVVVV8AAAAAA/wAAAAAA9VVVVXwAAAAAD/AAAAAAD1VVVVfAAAAAAP8AAAAAA9VVVVV8AAAAAA/wAAAAAD1VVVVXwAAAAAD/AAAAAAPVVVVVfAAAAAAP8AAAAAA9VVVVV8AAAAAA/wAAAAAD1VVVVXwAAAAAD/AAAAAAPVVVVVfAAAAAAP8AAAAAA9VVVVV8AAAAAA/wAAAAAA9VVVVXwAAAAAD/AAAAAAD1VVVVfAAAAAAP8AAAAAAPVVVVV8AAAAAA/wAAAAAA9VVVVXwAAAAAD3wAAAAAD1VVVVfAAAAAAPfAAAAAAPVVVVXwAAAAAA98AAAAAA9VVVVfAAAAAAD3wAAAAAD1VVVV8AAAAAA9fAAAAAAPVVVVXwAAAAAD18AAAAAA9VVVVfAAAAAAPXwAAAAAA9VVVV8AAAAAA9XwAAAAAD1VVVfAAAAAAD1fAAAAAAPVVVV8AAAAAA9V8AAAAAAPVVVXwAAAAAD1XwAAAAAA9VVV8AAAAAAPVXwAAAAAA9VVXwAAAAAA9VfAAAAAAA9VV8AAAAAAPVV8AAAAAAA9V/AAAAAAA9VV8AAAAAAA//wAAAAAAD1VXwAAAAAAA/wAAAAAAA9VVXwAAAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAAA9VVV8AAAAAAAAAAAAAAAD1VVV8AAAAAAAAAAAAAAA9VVVV8AAAAAAAAAAAAAAD1VVVXwAAAAAAAAAAAAAA9VVVVXwAAAAAAAAAAAAAPVVVVVXwAAAAAAAAAAAAA9VVVVVXwAAAAAAAAAAAAPVVVVVVfwAAAAAAAAAAAD1VVVVVVfwAAAAAAAAAAD9VVVVVVVXwAAAAAAAAAA/VVVVVVVVX8AAAAAAAAA/VVVVVVVVVX/AAAAAAAA/1VVVVVVVVVV/8AAAAAD/1VVVVVVVVVVVf///////1VVVVVVVVVVVVV//////VVVVVVVQ=="},
|
||||||
|
{"width" : "61", "buffer":"VVVVVVVVf////VVVVVVVVVVVVVVV/////9VVVVVVVVVVVVVX/AAAAD1VVVVVVVVVVVVf8AAAAAPVVVVVVVVVVVVfwAAAAAA9VVVVVVVVVVV/AAAAAAAPVVVVVVVVVVX/AAAAAAAA9VVVVVVVVVX8AAAAAAAAPVVVVVVVVVfwAAAAAAAAD1VVVVVVVVfwAAAAAAAAA9VVVVVVVV/AAAAAAAAAAPVVVVVVVV/AAAAAAAAAAD1VVVVVVX8AAAAAAAAAAA9VVVVVVX8AAAAAAAAAAAPVVVVVVXwAAAAAAAAAAAD1VVVVVXwAAAAAAAAAAAA9VVVVVXwAAAAAAAAAAAAPVVVVVV8AAAAAAAAAAAAD1VVVVVfAAAAAAAAAAAAA9VVVVVfAAAAAAAAAAAAAPVVVVVXwAAAAAAAAAAAAD1VVVVV8AAAAAAAAAAAAA9VVVVVfAAAAAAAAAAAAAPVVVVVXwAAAAAAAAAAAAD1VVVVVfAAAAAAAAAAAAA9VVVVVXwAAAAAAAAAAAAPVVVVVVfAAAAPAAAAAAAD1VVVVVXwAAA/8AAAAAAA9VVVVVVfAAD/XwAAAAAAPVVVVVVV///9V8AAAAAAD1VVVVVVX//1VfAAAAAAA9VVVVVVVVVVVXwAAAAAAPVVVVVVVVVVVV8AAAAAAD1VVVVVVVVVVVfAAAAAAA9VVVVVVVVVVVXwAAAAAAPVVVVVVVVVVVV8AAAAAAD1VVVVVVVVVVVfAAAAAAA9VVVVVVVVVVVXwAAAAAAPVVVVVVVVVVVV8AAAAAAD1VVVVVVVVVVVfAAAAAAA9VVVVVVVVVVVXwAAAAAAPVVVVVVVVVVVV8AAAAAAD1VVVVVVVVVVVfAAAAAAA9VVVVVVVVVVVXwAAAAAAPVVVVVVVVVVVV8AAAAAAD1VVVVVVVVVVVfAAAAAAA9VVVVVVVVVVVXwAAAAAAPVVVVVVVVVVVV8AAAAAAD1VVVVVVVVVVVfAAAAAAA9VVVVVVVVVVVXwAAAAAAPVVVVVVVVVVVV8AAAAAAD1VVVVVVVVVVVfAAAAAAA9VVVVVVVVVVVXwAAAAAAPVVVVVVVVVVVV8AAAAAAD1VVVVVVVVVVVfAAAAAAA9VVVVVVVVVVVXwAAAAAAPVVVVVVVVVVVV8AAAAAAD1VVVVVVVVVVVfAAAAAAA9VVVVVVVVVVVXwAAAAAAPVVVVVVVVX///wAAAAAAA///9VVVV////wAAAAAAAD////VVX/wAAAAAAAAAAAAAAP9VX8AAAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAD3wAAAAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAD3wAAAAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAAA/VVf/////////////////VVV////////////////9VVVVVVVVVVVVVVVVVVVVVU="},
|
||||||
|
{"width" : "61", "buffer":"VVVVV////////1VVVVVVVVVVf/////////9VVVVVVVVX/8AAAAAAAA/9VVVVVVVf/AAAAAAAAAAP9VVVVVV/wAAAAAAAAAAAP1VVVVV/AAAAAAAAAAAAAP1VVVV8AAAAAAAAAAAAAA/VVVV8AAAAAAAAAAAAAAA9VVV8AAAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAAAAPVV8AAAAAD/8AAAAAAAAD1VXwAAAD////AAAAAAAAPVVfAAA//1Vf8AAAAAAAD1VV/wP/1VVVXwAAAAAAA9VVX//9VVVVVfAAAAAAAPVVVV/VVVVVVV8AAAAAAD1VVVVVVVVVVVfAAAAAAA9VVVVVVVVVVVV8AAAAAAPVVVVVVVVVVVVfAAAAAAD1VVVVVVVVVVVXwAAAAAA9VVVVVVVVVVVV8AAAAAAPVVVVVVVVVVVV8AAAAAAPVVVVVVVVVVVVfAAAAAAD1VVVVVVVVVVVXwAAAAAA9VVVVVVVVVVVXwAAAAAAPVVVVVVVVVVVXwAAAAAAPVVVVVVVVVVVV8AAAAAAD1VVVVVVVVVVV8AAAAAAA9VVVVVVVVVVV8AAAAAAA9VVVVVVVVVVV8AAAAAAAPVVVVVVVVVVV8AAAAAAAPVVVVVVVVVVV8AAAAAAAD1VVVVVVVVVV8AAAAAAAD1VVVVVVVVVV8AAAAAAAA9VVVVVVVVVV8AAAAAAAA9VVVVVVVVVV8AAAAAAAA9VVVVVVVVVV8AAAAAAAA9VVVVVVVVVV8AAAAAAAAPVVVVVVVVVV8AAAAAAAAPVVVVVVVVVVfAAAAAAAAPVVVVVVVVVVfAAAAAAAAPVVVVVVVVVVfAAAAAAAAPVVVVVVVVVVfAAAAAAAAPVVVVVVVVVVfAAAAAAAAPVVVVVVVVVVfAAAAAAAAPVVVVVVVVVVfAAAAAAAAPVVVVVVVVVVfAAAAAAAAPVVVVVVVVVVfAAAAAAAAPVVVVVVVVVVfAAAAAAAAPVVVVVVVVVVfAAAAAAAAPVVVVVVVVVVfAAAAAAAAPVVVVVVVVVVfAAAAAAAAPVVVVVVVVVVfAAAAAAAAA//////1VVVXwAAAAAAAAD//////9VVXwAAAAAAAAAAAAAAA/9VXwAAAAAAAAAAAAAAAAP1V8AAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAAAA9XwAAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAA9XwAAAAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAA9VV/AAAAAAAAAAAAAAAD9VVX////////////////9VVVX///////////////1VVVVVVVVVVVVVVVVVVVVVU="},
|
||||||
|
{"width" : "60", "buffer":"VVVVVf///////9VVVVVVVVVV//////////9VVVVVVVVf/wAAAAAAAD/1VVVVVVf/AAAAAAAAAAD/VVVVVX/wAAAAAAAAAAAP9VVVVfwAAAAAAAAAAAAA/VVVV8AAAAAAAAAAAAAAD1VVV8AAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAAAPVVXwAAAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAAAPVV8AAAAAD/8AAAAAAAAD1VfAAAA////8AAAAAAAD1VXwAA//9VX/AAAAAAAD1VV////VVVVXwAAAAAAD1VVf//VVVVVV8AAAAAAD1VVVVVVVVVVVfAAAAAAD1VVVVVVVVVVVfAAAAAAD1VVVVVVVVVVVfAAAAAAD1VVVVVVVVVVVfAAAAAAD1VVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVX8AAAAAAPVVVVVVVVVVV/wAAAAAA9VVVVVVVX///8AAAAAAA9VVVVVVX////AAAAAAAD1VVVVVVf8AAAAAAAAAAD1VVVVVV8AAAAAAAAAAAPVVVVVVXwAAAAAAAAAAD9VVVVVVXwAAAAAAAAAAP1VVVVVVfAAAAAAAAAAA9VVVVVVVfAAAAAAAAAAD1VVVVVVVfAAAAAAAAAAD1VVVVVVVfAAAAAAAAAAA/VVVVVVVfAAAAAAAAAAAP1VVVVVVfAAAAAAAAAAAA/VVVVVVfAAAAAAAAAAAAP1VVVVVXwAAAAAAAAAAAA9VVVVVXwAAAAAAAAAAAAPVVVVVV8AAAAAAAAAAAAPVVVVVVfwAAAAAAAAAAAD1VVVVVX////8AAAAAAAD1VVVVVVf////8AAAAAAA9VVVVVVVVVVX/AAAAAAA9VVVVVVVVVVVXwAAAAAA9VVVVVVVVVVVV8AAAAAAPVVVVVVVVVVVV8AAAAAAPVVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVfAAAAAAPVVX/1VVVVVVV8AAAAAAPVX///1VVVVVXwAAAAAAPVf8AP/1VVVV/AAAAAAAPV8AAAP//9f/8AAAAAAAPXwAAAAP////AAAAAAAAPXwAAAAAADwAAAAAAAAAPfAAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAAAD9VVVfAAAAAAAAAAAAAA/1VVVX/AAAAAAAAAAAAP9VVVVV//AAAAAAAAAAD/VVVVVVV//wAAAAAAAP/1VVVVVVVV//////////9VVVVVVVVVVf///////1VVVVVV"},
|
||||||
|
{"width" : "65", "buffer":"VVVVVVVVVVVVf///1VVVVVVVVVVVVVVVVf////9VVVVVVVVVVVVVVVX8AAAD9VVVVVVVVVVVVVVV8AAAAA9VVVVVVVVVVVVVVfAAAAAD1VVVVVVVVVVVVVXwAAAAAD1VVVVVVVVVVVVV8AAAAAAPVVVVVVVVVVVVVfAAAAAAA9VVVVVVVVVVVVV8AAAAAAD1VVVVVVVVVVVVfAAAAAAAPVVVVVVVVVVVVXwAAAAAAA9VVVVVVVVVVVVfAAAAAAAD1VVVVVVVVVVVXwAAAAAAAD1VVVVVVVVVVV8AAAAAAAAPVVVVVVVVVVVXwAAAAAAAA9VVVVVVVVVVV8AAAAAAAAD1VVVVVVVVVVfAAAAAAAAAPVVVVVVVVVVV8AAAAAAAAA9VVVVVVVVVVfAAAAAAAAAD1VVVVVVVVVXwAAAAAAAAAPVVVVVVVVVV8AAAAAAAAAA9VVVVVVVVVXwAAAAAAAAAD1VVVVVVVVV8AAAAAAAAAAPVVVVVVVVVfAAAAAAAAAAA9VVVVVVVVV8AAAAAAAAAAD1VVVVVVVVfAAAAAAAAAAAPVVVVVVVVXwAAAAAAAAAAA9VVVVVVVVfAAAAAAAAAAAD1VVVVVVVXwAAAAAAAAAAAPVVVVVVVV8AAAAAAAAAAAA9VVVVVVVXwAAAAAAAAAAAD1VVVVVVV8AAAAAAAAAAAAPVVVVVVVfAAAAAAAAAAAAA9VVVVVVV8AAAAAwAAAAAAD1VVVVVVfAAAAAPwAAAAAAPVVVVVVXwAAAAD3wAAAAAA9VVVVVVfAAAAA9fAAAAAAD1VVVVVXwAAAAD18AAAAAAPVVVVVV8AAAAA9XwAAAAAA9VVVVVfAAAAAPVfAAAAAAD1VVVVV8AAAAA9V8AAAAAAPVVVVVfAAAAAPVXwAAAAAA9VVVVXwAAAAD1VfAAAAAAD1VVVVfAAAAAPVV8AAAAAAPVVVVXwAAAAD1VXwAAAAAA9VVVV8AAAAAPVVfAAAAAAD1VVVXwAAAAD1VV8AAAAAAPVVVV8AAAAA9VVXwAAAAAA9VVVXwAAAAD1VVfAAAAAAD1VVV8AAAAAD///wAAAAAAD/1VXwAAAAAD//8AAAAAAAD//VfAAAAAAAAAAAAAAAAAAD/XwAAAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAAAAAAD3wAAAAAAAAAAAAAAAAAAAPX8AAAAAAAAAAAAAAAAAAD1X/AAAAAAAAAAAAAAAAAD9VV////////8AAAAAAAD//VVVf///////8AAAAAAA//VVVVVVVVVVVV8AAAAAAPVVVVVVVVVVVVVXwAAAAAD1VVVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVVV8AAAAAA9VVVVVVVVVVVVVV8AAAAAD1VVVVVVVVVVVVVXwAAAAAPVVVVVVVVVVVVVVfAAAAAA9VVVVVVVVVVVVVV8AAAAAPVVVVVVVVVVVVVVV8AAAAA9VVVVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVVVV/AAAP1VVVVVVVVVVVVVVVV////9VVVVVVVVVVVVVVVVVf//9VVVVVQ=="},
|
||||||
|
{"width" : "60", "buffer":"VVVX///////////1VVVVVV///////////////VVVVX/8AAAAAAAAAAAP/9VVVfAAAAAAAAAAAAAAA/VVV8AAAAAAAAAAAAAAAPVVXwAAAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAA/VVfAAAAAAAAAAAAAAP/1VVfAAAAAAA/////////VVVfAAAAAAD///////1VVVVfAAAAAAPVVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVfAAAAAAPV/////VVVVVVfAAAAAAD///////VVVVVfAAAAAAA/AAAAA/9VVVVfAAAAAAAAAAAAAA/1VVVfAAAAAAAAAAAAAAD9VVVfAAAAAAAAAAAAAAAP1VVfAAAAAAAAAAAAAAAD9VVfAAAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAAAA9XwAAAAAA//wAAAAAAAA9XwAAAAA////wAAAAAAA9XwAAAAP/VVf8AAAAAAA9V/AAAP/VVVVfAAAAAAAPVf////1VVVVXwAAAAAAPVV///1VVVVVV8AAAAAAPVVVVVVVVVVVV8AAAAAAPVVVVVVVVVVVV8AAAAAAPVVVVVVVVVVVV8AAAAAAPVVVVVVVVVVVV8AAAAAAPVVVVVVVVVVVV8AAAAAAPVVX1VVVVVVVV8AAAAAAPVX//1VVVVVVXwAAAAAAPV/8P/1VVVVVfAAAAAAA9X8AAP/9VVVX8AAAAAAA9fAAAAP//9//wAAAAAAA9fAAAAAD///8AAAAAAAA98AAAAAAADAAAAAAAAAD18AAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAA9VVfAAAAAAAAAAAAAAAP1VVXwAAAAAAAAAAAAAA/VVVV/AAAAAAAAAAAAAP1VVVVf/AAAAAAAAAAAD/VVVVVV//AAAAAAAAAA/1VVVVVVV//wAAAAAAD/9VVVVVVVVV//////////VVVVVVVVVVVf//////9VVVVVVV"},
|
||||||
|
{"width" : "62", "buffer":"VVVVVVVVX///////1VVVVVVVVVVVf/////////VVVVVVVVVV//AAAAAAAD/9VVVVVVVV/8AAAAAAAAAP/VVVVVVVfwAAAAAAAAAAA/VVVVVVfwAAAAAAAAAAAAPVVVVVX8AAAAAAAAAAAAAPVVVVV8AAAAAAAAAAAAAA9VVVVfAAAAAAAAAAAAAAD1VVVXwAAAAAAAAAAAAAAD1VVV8AAAAAAAAAAAAAAAPVVVfAAAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAAAD1VV8AAAAAAAAAAAAAAAAPVVXwAAAAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAAA9VV8AAAAAAAAD//AAAAAPVVfAAAAAAAAP////AAAA9VV8AAAAAAAP/VVf//AA/VVXwAAAAAAD9VVVVf///1VV8AAAAAAA9VVVVVVf/1VVXwAAAAAAPVVVVVVVVVVVV8AAAAAAD1VVVVVVVVVVVXwAAAAAA9VVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVV8AAAAAA9VVVX/VVVVVVVfAAAAAAPVVX////1VVVVV8AAAAAA9VX//AP/9VVVVXwAAAAAD1X/AAAAD/VVVVfAAAAAAPX/AAAAAA/VVVV8AAAAAD1/AAAAAAAP1VVXwAAAAAPfAAAAAAAAP1VV8AAAAAAPwAAAAAAAAD1VXwAAAAAAMAAAAAAAAAD1VfAAAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAAAAAA9XwAAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAAPXwAAAAAAAAA/AAAAAAAA9fAAAAAAAAA//wAAAAAAA98AAAAAAAA/1fwAAAAAAD3wAAAAAAAP1VXwAAAAAAPfAAAAAAAD1VVXwAAAAAA9fAAAAAAAPVVVXwAAAAAD18AAAAAAD1VVVXwAAAAAD3wAAAAAAPVVVVfAAAAAAPfAAAAAAA9VVVV8AAAAAA98AAAAAAD1VVVXwAAAAAD3wAAAAAAPVVVVfAAAAAAPXwAAAAAA9VVVV8AAAAAA9fAAAAAAD1VVVXwAAAAAPV8AAAAAAPVVVVfAAAAAA9XwAAAAAA9VVVV8AAAAAD1XwAAAAAA9VVVfAAAAAAPVfAAAAAAD1VVXwAAAAAA9V8AAAAAAD1VV8AAAAAAD1V8AAAAAAD9V/AAAAAAA9VXwAAAAAAD//wAAAAAAD1VXwAAAAAAA/wAAAAAAAPVVfAAAAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAAAAD1VVV8AAAAAAAAAAAAAAAPVVVV8AAAAAAAAAAAAAAD1VVVXwAAAAAAAAAAAAAAPVVVVXwAAAAAAAAAAAAAD1VVVVXwAAAAAAAAAAAAA9VVVVVXwAAAAAAAAAAAAPVVVVVVX8AAAAAAAAAAAD1VVVVVVX8AAAAAAAAAAD9VVVVVVVV/AAAAAAAAAD/VVVVVVVVV/8AAAAAAAD/VVVVVVVVVVf/wAAAAAD/VVVVVVVVVVVV////////VVVVVVVVVVVVVX//////VVVVVVQ=="},
|
||||||
|
{"width" : "63", "buffer":"VVV//////////////1VVVVX/////////////////VVV//AAAAAAAAAAAAAAP/9VX8AAAAAAAAAAAAAAAAA/VXwAAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAAA9XwAAAAAAAAAAAAAAAAAA9X8AAAAAAAAAAAAAAAAAA9Vf/wAAAAAAAAAAAAAAAD1VX/////////wAAAAAAAD1VVVf///////8AAAAAAAPVVVVVVVVVVVVfAAAAAAAPVVVVVVVVVVVV8AAAAAAA9VVVVVVVVVVVV8AAAAAAA9VVVVVVVVVVVXwAAAAAAD1VVVVVVVVVVVXwAAAAAAD1VVVVVVVVVVVfAAAAAAAPVVVVVVVVVVVV8AAAAAAAPVVVVVVVVVVVV8AAAAAAA9VVVVVVVVVVVXwAAAAAAA9VVVVVVVVVVVXwAAAAAAD1VVVVVVVVVVVfAAAAAAAD1VVVVVVVVVVVfAAAAAAAPVVVVVVVVVVVV8AAAAAAA9VVVVVVVVVVVXwAAAAAAA9VVVVVVVVVVVXwAAAAAAD1VVVVVVVVVVVfAAAAAAAD1VVVVVVVVVVVfAAAAAAAPVVVVVVVVVVVV8AAAAAAAPVVVVVVVVVVVV8AAAAAAA9VVVVVVVVVVVXwAAAAAAA9VVVVVVVVVVVXwAAAAAAD1VVVVVVVVVVVfAAAAAAAPVVVVVVVVVVVV8AAAAAAAPVVVVVVVVVVVV8AAAAAAA9VVVVVVVVVVVXwAAAAAAA9VVVVVVVVVVVXwAAAAAAD1VVVVVVVVVVVfAAAAAAAD1VVVVVVVVVVVfAAAAAAAPVVVVVVVVVVVV8AAAAAAAPVVVVVVVVVVVXwAAAAAAA9VVVVVVVVVVVXwAAAAAAA9VVVVVVVVVVVfAAAAAAAD1VVVVVVVVVVVfAAAAAAAPVVVVVVVVVVVV8AAAAAAAPVVVVVVVVVVVV8AAAAAAA9VVVVVVVVVVVXwAAAAAAA9VVVVVVVVVVVXwAAAAAAD1VVVVVVVVVVVfAAAAAAAD1VVVVVVVVVVV8AAAAAAAPVVVVVVVVVVVV8AAAAAAAPVVVVVVVVVVVXwAAAAAAA9VVVVVVVVVVVXwAAAAAAA9VVVVVVVVVVVfAAAAAAAD1VVVVVVVVVVVfAAAAAAAPVVVVVVVVVVVV8AAAAAAAPVVVVVVVVVVVV8AAAAAAA9VVVVVVVVVVVXwAAAAAAA9VVVVVVVVVVVXwAAAAAAD1VVVVVVVVVVVXwAAAAAAD1VVVVVVVVVVVXwAAAAAAPVVVVVVVVVVVVfAAAAAAAPVVVVVVVVVVVVfAAAAAAA9VVVVVVVVVVVVXwAAAAAD1VVVVVVVVVVVVXwAAAAAD1VVVVVVVVVVVVXwAAAAAPVVVVVVVVVVVVVV8AAAAA9VVVVVVVVVVVVVVfwAAA/1VVVVVVVVVVVVVVX/////VVVVVVVVVVVVVVVVf///VVVVVVVVVVVVV"},
|
||||||
|
{"width" : "64", "buffer":"VVVVVVX///////9VVVVVVVVVVVV//////////VVVVVVVVVVX/wAAAAAAAP/1VVVVVVVVf8AAAAAAAAAD/1VVVVVVV/wAAAAAAAAAAA/VVVVVVV/AAAAAAAAAAAAA/VVVVVV8AAAAAAAAAAAAAD9VVVVV8AAAAAAAAAAAAAAD1VVVV8AAAAAAAAAAAAAAAPVVVV8AAAAAAAAAAAAAAAD1VVV8AAAAAAAAAAAAAAAAPVVVfAAAAAAAAAAAAAAAAA9VVfAAAAAAAAAAAAAAAAAPVVXwAAAAAAAAAAAAAAAAD1VV8AAAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAAAD1VfAAAAAAAD//wAAAAAAA9VXwAAAAAAD///wAAAAAAPVV8AAAAAAD1VV/AAAAAAA9VfAAAAAAD1VVV8AAAAAAPVXwAAAAAD1VVVfAAAAAAD1V8AAAAAD1VVVV8AAAAAA9VfAAAAAA9VVVVfAAAAAAPVXwAAAAAPVVVVXwAAAAAD1V8AAAAAD1VVVV8AAAAAD1VfAAAAAA9VVVVfAAAAAA9VXwAAAAAPVVVVXwAAAAAPVVfAAAAAA9VVVXwAAAAAD1VXwAAAAAD1VVXwAAAAAA9VV8AAAAAAPVVXwAAAAAA9VVXwAAAAAA///wAAAAAAPVVV8AAAAAAD//wAAAAAAPVVVXwAAAAAAAAAAAAAAAD1VVV8AAAAAAAAAAAAAAAD1VVVXwAAAAAAAAAAAAAAD1VVVVfAAAAAAAAAAAAAAD1VVVVV8AAAAAAAAAAAAAD1VVVVVXwAAAAAAAAAAAAD1VVVVVVfAAAAAAAAAAAAA9VVVVVVfAAAAAAAAAAAAAD1VVVVV/AAAAAAAAAAAAAAPVVVVV/AAAAAAAAAAAAAAA9VVVV8AAAAAAAAAAAAAAAD1VVV8AAAAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAAAAAA9VVfAAAAAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAAAAAA9VXwAAAAAAD///AAAAAAAD1XwAAAAAAP////AAAAAAA9V8AAAAAAP1VVX8AAAAAAD18AAAAAAPVVVVXwAAAAAA9fAAAAAAPVVVVVfAAAAAAPXwAAAAAPVVVVVV8AAAAAD18AAAAAD1VVVVVfAAAAAAPfAAAAAA9VVVVVV8AAAAAD3wAAAAAPVVVVVVfAAAAAA/wAAAAAD1VVVVVfAAAAAAP8AAAAAA9VVVVVXwAAAAAD/AAAAAAPVVVVVV8AAAAAA98AAAAAA9VVVVV8AAAAAAPfAAAAAAD1VVVV8AAAAAAD3wAAAAAAP9VVX8AAAAAAD18AAAAAAA////8AAAAAAA9fAAAAAAAAP//wAAAAAAAPV8AAAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAAAAAPVVVXwAAAAAAAAAAAAAAAD1VVVfAAAAAAAAAAAAAAAP1VVVV/AAAAAAAAAAAAAAP1VVVVX8AAAAAAAAAAAAA/VVVVVVX8AAAAAAAAAAAD/VVVVVVVf/AAAAAAAAAA/9VVVVVVVVf/8AAAAAAAP/1VVVVVVVVVX/////////9VVVVVVVVVVVVf///////VVVVVVU="},
|
||||||
|
{"width" : "61", "buffer":"VVVVVV///////VVVVVVVVVVVVX////////1VVVVVVVVVVf8AAAAAAD/1VVVVVVVVV/wAAAAAAAA/1VVVVVVVX/AAAAAAAAAA/VVVVVVVX8AAAAAAAAAAA9VVVVVVXwAAAAAAAAAAAD9VVVVVXwAAAAAAAAAAAAP1VVVVXwAAAAAAAAAAAAAPVVVVXwAAAAAAAAAAAAAA9VVVV8AAAAAAAAAAAAAAPVVVV8AAAAAAAAAAAAAAA9VVV8AAAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAAA9VVfAAAAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAAAA9VV8AAAAAAA//AAAAAAAD1V8AAAAAAA//8AAAAAAA9VfAAAAAAA9VXwAAAAAAD1XwAAAAAA9VVfAAAAAAA9XwAAAAAA9VVV8AAAAAAD18AAAAAA9VVVXwAAAAAA9fAAAAAAPVVVV8AAAAAAPXwAAAAAPVVVVXwAAAAAD18AAAAAD1VVVV8AAAAAAPfAAAAAA9VVVVfAAAAAAD3wAAAAAPVVVVXwAAAAAA98AAAAAD1VVVV8AAAAAAPfAAAAAA9VVVVfAAAAAAA/wAAAAAD1VVVfAAAAAAAP8AAAAAA9VVVXwAAAAAAD/AAAAAAD1VVV8AAAAAAA/wAAAAAA9VVV8AAAAAAAP8AAAAAAD9VV8AAAAAAAD/AAAAAAAP/f8AAAAAAAA98AAAAAAAP/8AAAAAAAAPfAAAAAAAADAAAAAAAAAD3wAAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAAA9XwAAAAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAAPVV8AAAAAAAAAMAAAAAAD1VXwAAAAAAAAPwAAAAAA9VVfAAAAAAAAPfAAAAAAPVVV/AAAAAAA/XwAAAAAD1VVX/AAAAAD/V8AAAAAA9VVVX/wAAAP9VfAAAAAA9VVVVX/////1VfAAAAAAPVVVVVV////VVXwAAAAAD1VVVVVVVVVVVV8AAAAAA9VVVVVVVVVVVV8AAAAAA9VVVVVVVVVVVV8AAAAAAPVVVVVVVVVVVVfAAAAAAD1VVVVVVVVVVVfAAAAAAA9VVf//VVVVVV/AAAAAAA9VV////1VVVX/AAAAAAAPVV/AAD//9f/8AAAAAAAPVV8AAAA////wAAAAAAAD1VfAAAAAAPAAAAAAAAAD1VfAAAAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAAPVVXwAAAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAAAAPVVVfAAAAAAAAAAAAAAAD1VVXwAAAAAAAAAAAAAAP1VVV8AAAAAAAAAAAAAAP1VVVfAAAAAAAAAAAAAAPVVVVV8AAAAAAAAAAAAA/VVVVVXwAAAAAAAAAAAA/VVVVVVf8AAAAAAAAAAP9VVVVVVV/8AAAAAAAAA/9VVVVVVVVf/wAAAAAA//VVVVVVVVVVf////////9VVVVVVVVVVVV//////9VVVVVVVVU="},
|
||||||
|
{"width" : "25", "buffer":"VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX//1VVVVf///9VVV/wAA/1VV/AAAAPVV8AAAAA9V8AAAAAD1fAAAAAA9fAAAAAAD3wAAAAAA/wAAAAAAP8AAAAAAD/AAAAAAA/wAAAAAAP8AAAAAAD/AAAAAAA/wAAAAAAPfAAAAAAD3wAAAAAA98AAAAAA9XwAAAAAPVfAAAAAPVV8AAAAPVVX/AAA/VVVf////VVVVX//9VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf//VVVVX////1VVX/AAD/VVXwAAAA9VXwAAAAD1XwAAAAAPXwAAAAAD18AAAAAAPfAAAAAAD/AAAAAAA/wAAAAAAP8AAAAAAD/AAAAAAA/wAAAAAAP8AAAAAAD/AAAAAAA98AAAAAAPfAAAAAAD18AAAAAD1fAAAAAA9V8AAAAA9VXwAAAA9VVf8AAP9VVV////9VVVVf//VVU="}
|
||||||
|
]
|
||||||
|
}
|
|
@ -0,0 +1,17 @@
|
||||||
|
{
|
||||||
|
"name":"OpenSansEC",
|
||||||
|
"size":"100",
|
||||||
|
"characters":[
|
||||||
|
{"width" : "55", "buffer":"VVVVVV//////1VVVVVVVVVVf///////1VVVVVVVVVf8AAAAAA/1VVVVVVVV/AAAAAAAA/VVVVVVVV/AAAAAAAAA9VVVVVVV8AAAAAAAAAD1VVVVVV8AAAAAAAAAAPVVVVVV8AAAAAAAAAAA9VVVVVfAAAAAAAAAAAD1VVVVfAAAAAAAAAAAAPVVVVfAAAAAAAAAAAAD1VVVXwAAAAAAAAAAAAPVVVXwAAAAAAAAAAAAD1VVV8AAAAAAAAAAAAAPVVV8AAAAAA/wAAAAAD1VVfAAAAAA//AAAAAA9VVXwAAAAA9V8AAAAAD1VXwAAAAA9VXwAAAAA9VV8AAAAA9VVfAAAAAPVVfAAAAAPVVV8AAAAA9VfAAAAAPVVVfAAAAAPVXwAAAAD1VVXwAAAAD1V8AAAAD1VVVfAAAAA9VfAAAAA9VVVXwAAAAD1XwAAAAPVVVV8AAAAA9XwAAAAD1VVVfAAAAAPV8AAAAA9VVVXwAAAAD1fAAAAAPVVVVfAAAAA9XwAAAAPVVVVXwAAAAPV8AAAAD1VVVV8AAAAA9fAAAAA9VVVVfAAAAAPfAAAAAPVVVVXwAAAAD3wAAAAD1VVVV8AAAAA98AAAAA9VVVVfAAAAAPfAAAAAPVVVVXwAAAAD3wAAAAD1VVVV8AAAAA98AAAAA9VVVVfAAAAAPfAAAAAPVVVVXwAAAAD3wAAAAD1VVVV8AAAAA98AAAAA9VVVVfAAAAAPfAAAAAPVVVVXwAAAAD3wAAAAD1VVVVfAAAAAP8AAAAA9VVVVXwAAAAD/AAAAAPVVVVV8AAAAA/wAAAAD1VVVVfAAAAAP8AAAAA9VVVVXwAAAAD/AAAAAPVVVVV8AAAAA/wAAAAD1VVVVfAAAAAP8AAAAA9VVVVXwAAAAD/AAAAAPVVVVV8AAAAA/wAAAAD1VVVVfAAAAAP8AAAAA9VVVVXwAAAAD/AAAAAPVVVVV8AAAAA/wAAAAD1VVVVfAAAAAP8AAAAA9VVVVXwAAAAD/AAAAAPVVVVV8AAAAA/wAAAAD1VVVVfAAAAAP8AAAAA9VVVVXwAAAAD/AAAAAPVVVVV8AAAAD3wAAAAD1VVVV8AAAAA98AAAAA9VVVVfAAAAAPfAAAAAPVVVVXwAAAAD3wAAAAD1VVVV8AAAAA98AAAAA9VVVVfAAAAAPfAAAAAPVVVVXwAAAAD3wAAAAD1VVVV8AAAAA98AAAAA9VVVVfAAAAAPfAAAAAPVVVVXwAAAAD3wAAAAD1VVVV8AAAAA9fAAAAA9VVVVfAAAAAPXwAAAAPVVVVXwAAAAD18AAAAD1VVVV8AAAAD1fAAAAAPVVVVfAAAAA9XwAAAAD1VVVXwAAAAPV8AAAAA9VVVXwAAAAD1XwAAAAPVVVV8AAAAA9V8AAAAD1VVVfAAAAAPVfAAAAA9VVVXwAAAAPVXwAAAAD1VVXwAAAAD1V8AAAAA9VVV8AAAAA9VXwAAAAD1VVfAAAAAPVV8AAAAA9VVfAAAAAPVVfAAAAAD1VfAAAAAD1VV8AAAAAP1/AAAAAD1VVfAAAAAA//AAAAAA9VVXwAAAAAA8AAAAAAPVVVfAAAAAAAAAAAAAPVVVXwAAAAAAAAAAAAD1VVVfAAAAAAAAAAAAD1VVVXwAAAAAAAAAAAA9VVVVfAAAAAAAAAAAA9VVVVV8AAAAAAAAAAAPVVVVVfAAAAAAAAAAAPVVVVVV8AAAAAAAAAAPVVVVVVXwAAAAAAAAAPVVVVVVVfwAAAAAAAA/VVVVVVVV/wAAAAAAD/VVVVVVVVV/wAAAAAP9VVVVVVVVVV///////1VVVVVVVVVVV//////VVVVVVQ=="},
|
||||||
|
{"width" : "44", "buffer":"VVVVVVVVV/////9VVVVVVVV//////1VVVVVVVfwAAAAPVVVVVVVXwAAAAA9VVVVVVV8AAAAAD1VVVVVVfAAAAAAPVVVVVVXwAAAAAA9VVVVVV8AAAAAAD1VVVVVfAAAAAAAPVVVVVXwAAAAAAA9VVVVV8AAAAAAAD1VVVV/AAAAAAAAPVVVVfwAAAAAAAA9VVVXwAAAAAAAAD1VVV8AAAAAAAAAPVVVfAAAAAAAAAA9VVXwAAAAAAAAAD1VV8AAAAAAAAAAPVVfAAAAAAAAAAA9VXwAAAAAAAAAAD1V8AAAAAAAAAAAPVfAAAAAAAAAAAA9XwAAAAADAAAAAD18AAAAAA/AAAAAPfAAAAAAPfAAAAA/wAAAAAD18AAAAD3wAAAAA9XwAAAAPXwAAAAPVfAAAAA9XwAAAD1V8AAAAD1XwAAA9VXwAAAAPVXwAAPVVfAAAAA9VXwAD1VV8AAAAD1VfAA9VVfAAAAAPVVfAD1VV8AAAAA9VVfA9VVXwAAAAD1VVf/VVVfAAAAAPVVVf1VVV8AAAAA9VVVVVVVXwAAAAD1VVVVVVVfAAAAAPVVVVVVVV8AAAAA9VVVVVVVXwAAAAD1VVVVVVVfAAAAAPVVVVVVVV8AAAAA9VVVVVVVXwAAAAD1VVVVVVVfAAAAAPVVVVVVVV8AAAAA9VVVVVVVXwAAAAD1VVVVVVVfAAAAAPVVVVVVVV8AAAAA9VVVVVVVXwAAAAD1VVVVVVVfAAAAAPVVVVVVVV8AAAAA9VVVVVVVXwAAAAD1VVVVVVVfAAAAAPVVVVVVVV8AAAAA9VVVVVVVXwAAAAD1VVVVVVVfAAAAAPVVVVVVVV8AAAAA9VVVVVVVXwAAAAD1VVVVVVVfAAAAAPVVVVVVVV8AAAAA9VVVVVVVXwAAAAD1VVVVVVVfAAAAAPVVVVVVVV8AAAAA9VVVVVVVXwAAAAD1VVVVVVVfAAAAAPVVVVVVVV8AAAAA9VVVVVVVXwAAAAD1VVVVVVVfAAAAAPVVVVVVVV8AAAAA9VVVVVVVXwAAAAD1VVVVVVVfAAAAAPVVVVVVVV8AAAAA9VVVVVVVXwAAAAD1VVVVVVVfAAAAAPVVVVVVVV8AAAAA9VVVVVVVXwAAAAD1VVVVVVVfAAAAAPVVVVVVVV8AAAAA9VVVVVVVXwAAAAD1VVVVVVVfAAAAAPVVVVVVVV8AAAAA9VVVVVVVXwAAAAD1VVVVVVVfAAAAAPVVVVVVVV8AAAAA9VVVVVVVXwAAAAD1VVVVVVVfAAAAAPVVVVVVVV8AAAAA9VVVVVVVXwAAAAD1VVVVVVVfAAAAAPVVVVVVVV8AAAAA9VVVVVVVXwAAAAD1VVVVVVVfAAAAAPVVVVVVVV8AAAAA9VVVVVVVXwAAAAD1VVVVVVVfAAAAAPVVVVVVVV8AAAAA9VVVVVVVX//////1VVVVVVVf//////VVVVVVVVVVVVVVU="},
|
||||||
|
{"width" : "55", "buffer":"VVVVVX//////1VVVVVVVVVV////////9VVVVVVVVX/wAAAAAA/9VVVVVVVX8AAAAAAAAP1VVVVVVfwAAAAAAAAAPVVVVVVfwAAAAAAAAAA9VVVVVfAAAAAAAAAAAD1VVVVfAAAAAAAAAAAAPVVVV/AAAAAAAAAAAAA9VVV/AAAAAAAAAAAAAD1VV8AAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAA9VfAAAAAA//8AAAAAAPVV8AAAAD///wAAAAAA9VXwAAAD9VVfAAAAAAPVVfAAAP1VVV8AAAAAD1VV8AAP1VVVXwAAAAA9VVXwAPVVVVVfAAAAAPVVVfAPVVVVVXwAAAAD1VVV8PVVVVVV8AAAAAPVVVX/VVVVVVXwAAAAD1VVVfVVVVVVV8AAAAA9VVVVVVVVVVVfAAAAAPVVVVVVVVVVVXwAAAAD1VVVVVVVVVVV8AAAAA9VVVVVVVVVVVfAAAAAPVVVVVVVVVVVXwAAAAD1VVVVVVVVVVV8AAAAA9VVVVVVVVVVVfAAAAA9VVVVVVVVVVVfAAAAAPVVVVVVVVVVVXwAAAAD1VVVVVVVVVVV8AAAAA9VVVVVVVVVVVfAAAAAPVVVVVVVVVVVXwAAAAD1VVVVVVVVVVXwAAAAD1VVVVVVVVVVV8AAAAA9VVVVVVVVVVVfAAAAAPVVVVVVVVVVVfAAAAAD1VVVVVVVVVVXwAAAAD1VVVVVVVVVVXwAAAAA9VVVVVVVVVVV8AAAAAPVVVVVVVVVVV8AAAAAPVVVVVVVVVVVfAAAAAD1VVVVVVVVVVfAAAAAD1VVVVVVVVVVXwAAAAA9VVVVVVVVVVXwAAAAA9VVVVVVVVVVXwAAAAAPVVVVVVVVVVV8AAAAAPVVVVVVVVVVV8AAAAAD1VVVVVVVVVV8AAAAAD1VVVVVVVVVVfAAAAAA9VVVVVVVVVVfAAAAAA9VVVVVVVVVVfAAAAAA9VVVVVVVVVVXwAAAAAPVVVVVVVVVVXwAAAAAPVVVVVVVVVVXwAAAAAPVVVVVVVVVVV8AAAAAD1VVVVVVVVVV8AAAAAD1VVVVVVVVVV8AAAAAD1VVVVVVVVVV8AAAAAD1VVVVVVVVVVfAAAAAA9VVVVVVVVVVfAAAAAA9VVVVVVVVVVfAAAAAA9VVVVVVVVVVXwAAAAA9VVVVVVVVVVXwAAAAAPVVVVVVVVVVXwAAAAAPVVVVVVVVVVV8AAAAAPVVVVVVVVVVV8AAAAAPVVVVVVVVVVV8AAAAAD1VVVVVVVVVV8AAAAAD1VVVVVVVVVVfAAAAAD1VVVVVVVVVVfAAAAAD1VVVVVVVVVVfAAAAAD1VVVVVVVVVVXwAAAAA9VVVVVVVVVVXwAAAAA9VVVVVVVVVVXwAAAAA9VVVVVVVVVVXwAAAAA9VVVVVVVVVVV8AAAAAPVVVVVVVVVVV8AAAAAPVVVVVVVVVVV8AAAAAA//////////9fAAAAAAD//////////fAAAAAAAAAAAAAAAAD3wAAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAD3wAAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAD3wAAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAD3wAAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAD3/////////////////9//////////////////VVVVVVVVVVVVVVVVVVQ=="},
|
||||||
|
{"width" : "55", "buffer":"VVVVV///////1VVVVVVVVVf////////9VVVVVVVX/8AAAAAAA/9VVVVVVX/AAAAAAAAAP1VVVVVfwAAAAAAAAAAP1VVVVfwAAAAAAAAAAA/VVVV/AAAAAAAAAAAAA9VVV/AAAAAAAAAAAAAD1VV8AAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAA9VXwAAAAA/wAAAAAAAPVVfAAAA///8AAAAAAD1VV8AAD/9V/wAAAAAAPVVfAAP9VVVfAAAAAAD1VV8AP1VVVV8AAAAAA9VVXw/VVVVVXwAAAAAPVVV8/VVVVVVfAAAAAD1VVX9VVVVVVXwAAAAA9VVVdVVVVVVVfAAAAAPVVVVVVVVVVVXwAAAAD1VVVVVVVVVVV8AAAAA9VVVVVVVVVVVfAAAAAPVVVVVVVVVVVXwAAAAD1VVVVVVVVVVV8AAAAA9VVVVVVVVVVVfAAAAAPVVVVVVVVVVVXwAAAAD1VVVVVVVVVVV8AAAAD1VVVVVVVVVVVfAAAAA9VVVVVVVVVVVXwAAAAPVVVVVVVVVVVXwAAAAPVVVVVVVVVVVV8AAAAD1VVVVVVVVVVV8AAAAA9VVVVVVVVVVV8AAAAA9VVVVVVVVVVV8AAAAAPVVVVVVVVVVV8AAAAAPVVVVVVVVVVX8AAAAAPVVVVVVVVVV/8AAAAAPVVVVVVX////wAAAAAP1VVVVVV///8AAAAAAPVVVVVVVfAAAAAAAAA/VVVVVVVXwAAAAAAAA/VVVVVVVV8AAAAAAAD9VVVVVVVVfAAAAAAAD9VVVVVVVVXwAAAAAAD1VVVVVVVVV8AAAAAAAP9VVVVVVVVfAAAAAAAA//VVVVVVVXwAAAAAAAAP9VVVVVVV8AAAAAAAAAD9VVVVVVfAAAAAAAAAAP1VVVVVXwAAAAAAAAAAPVVVVVV//8AAAAAAAAA9VVVVVf////AAAAAAAD1VVVVVVVf//wAAAAAA9VVVVVVVVVX/AAAAAAD1VVVVVVVVVV/AAAAAAPVVVVVVVVVVX8AAAAAD1VVVVVVVVVVXwAAAAAPVVVVVVVVVVVfAAAAAD1VVVVVVVVVVXwAAAAA9VVVVVVVVVVVfAAAAAPVVVVVVVVVVVXwAAAAA9VVVVVVVVVVV8AAAAAPVVVVVVVVVVVXwAAAAD1VVVVVVVVVVV8AAAAA9VVVVVVVVVVVfAAAAAPVVVVVVVVVVVXwAAAAD1VVVVVVVVVVV8AAAAA9VVVVVVVVVVVfAAAAAPVVVVVVVVVVVXwAAAAD1VVVVVVVVVVV8AAAAA9VVVVVVVVVVVfAAAAAPVVVVVVVVVVVfAAAAAD1VVVVVVVVVVXwAAAAA9VVVVVVVVVVV8AAAAAPdVVVVVVVVVV8AAAAAPf9VVVVVVVVV8AAAAAD3/9VVVVVVVV8AAAAAA98P/VVVVVVV8AAAAAAPfAP/VVVVVX8AAAAAAPXwAD//VVV/8AAAAAAD18AAD/////wAAAAAAD1fAAAAD//8AAAAAAAA9XwAAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAP1VV8AAAAAAAAAAAAAP1VVfAAAAAAAAAAAAA/VVVX/AAAAAAAAAAAA/VVVVf/AAAAAAAAAAP9VVVVVX/8AAAAAAAD/9VVVVVVX//////////VVVVVVVVVf///////1VVVVVVQ=="},
|
||||||
|
{"width" : "60", "buffer":"VVVVVVVVVX//////9VVVVVVVVVVVVX//////9VVVVVVVVVVVVfAAAAAA9VVVVVVVVVVVVfAAAAAA9VVVVVVVVVVVV8AAAAAA9VVVVVVVVVVVV8AAAAAA9VVVVVVVVVVVXwAAAAAA9VVVVVVVVVVVXwAAAAAA9VVVVVVVVVVVfAAAAAAA9VVVVVVVVVVVfAAAAAAA9VVVVVVVVVVV8AAAAAAA9VVVVVVVVVVV8AAAAAAA9VVVVVVVVVVV8AAAAAAA9VVVVVVVVVVXwAAAAAAA9VVVVVVVVVVXwAAAAAAA9VVVVVVVVVVfAAAAAAAA9VVVVVVVVVVfAAAAAAAA9VVVVVVVVVV8AAAAAAAA9VVVVVVVVVV8AAAAAAAA9VVVVVVVVVXwAAAAAAAA9VVVVVVVVVXwAAAAAAAA9VVVVVVVVVfAAAAAAAAA9VVVVVVVVVfAAAAAAAAA9VVVVVVVVV8AAAAAAAAA9VVVVVVVVV8AAAAAAAAA9VVVVVVVVXwAAAAAAAAA9VVVVVVVVXwAAAAAAAAA9VVVVVVVVfAAAAAAAAAA9VVVVVVVVfAAAAAAAAAA9VVVVVVVVfAAAAMAAAAA9VVVVVVVV8AAAA/AAAAA9VVVVVVVV8AAAD3wAAAA9VVVVVVVXwAAAD3wAAAA9VVVVVVVXwAAAD3wAAAA9VVVVVVVfAAAAPXwAAAA9VVVVVVVfAAAAPXwAAAA9VVVVVVV8AAAA9XwAAAA9VVVVVVV8AAAA9XwAAAA9VVVVVVXwAAAD1XwAAAA9VVVVVVXwAAAD1XwAAAA9VVVVVVfAAAAD1XwAAAA9VVVVVVfAAAAPVXwAAAA9VVVVVV8AAAAPVXwAAAA9VVVVVV8AAAA9VXwAAAA9VVVVVXwAAAA9VXwAAAA9VVVVVXwAAAD1VXwAAAA9VVVVVfAAAAD1VXwAAAA9VVVVVfAAAAPVVXwAAAA9VVVVVfAAAAPVVXwAAAA9VVVVV8AAAA9VVXwAAAA9VVVVV8AAAA9VVXwAAAA9VVVVXwAAAD1VVXwAAAA9VVVVXwAAAD1VVXwAAAA9VVVVfAAAAD1VVXwAAAA9VVVVfAAAAPVVVXwAAAA9VVVV8AAAAPVVVXwAAAA9VVVV8AAAA9VVVXwAAAA9VVVXwAAAA9VVVXwAAAA9VVVXwAAAD1VVVXwAAAA9VVVfAAAAD1VVVXwAAAA9VVVfAAAAPVVVVXwAAAA9VVV8AAAAPVVVVXwAAAA9VVV8AAAAD/////AAAAAP///8AAAAA////8AAAAAD///8AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAP//////////8AAAAAD//////////////AAAAAP///VVVVVVVVVVXwAAAA9VVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVX/////9VVVVVVVVVVVVVX/////9VVVVVVVVVVVVVVVVVVVVVVV"},
|
||||||
|
{"width" : "53", "buffer":"VX//////////////VVVf/////////////9VVV8AAAAAAAAAAAAD1VVXwAAAAAAAAAAAAPVVVfAAAAAAAAAAAAA9VVV8AAAAAAAAAAAAD1VVfAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAA9VVXwAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAA9VVXwAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAA9VVXwAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAPVVV8AAAAA////////9VVXwAAAAP////////1VVfAAAAD1VVVVVVVVVVV8AAAAPVVVVVVVVVVVXwAAAA9VVVVVVVVVVVfAAAAD1VVVVVVVVVVXwAAAAPVVVVVVVVVVVfAAAAA9VVVVVVVVVVV8AAAAD1VVVVVVVVVVXwAAAAPVVVVVVVVVVVfAAAAA9VVVVVVVVVVV8AAAAD1VVVVVVVVVVXwAAAAPVVVVVVVVVVVfAAAAA9VVVVVVVVVVV8AAAAD1VVVVVVVVVVXwAAAAPVVVVVVVVVVVfAAAAD1VVVVVVVVVVV8AAAAPVVVVVVVVVVVXwAAAA9VVVVVVVVVVVfAAAAD1VVVVVVVVVVV8AAAAPVVVVVVVVVVVXwAAAAP////9VVVVVVfAAAAAP/////VVVVVXwAAAAAAAAAA/1VVVVfAAAAAAAAAAAP9VVVV8AAAAAAAAAAAD/VVVXwAAAAAAAAAAAA/VVVfAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAAPVVXwAAAAAAAAAAAAA9VVfAAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAPVV/AAAA/wAAAAAAAAPVV/AD////8AAAAAAA9VVf///1X/8AAAAAAA9VVf/VVVVV/AAAAAAD1VVVVVVVVV/AAAAAAPVVVVVVVVVVfAAAAAA9VVVVVVVVVVfAAAAAA9VVVVVVVVVV8AAAAAD1VVVVVVVVVV8AAAAAPVVVVVVVVVVXwAAAAA9VVVVVVVVVVfAAAAAD1VVVVVVVVVVfAAAAAPVVVVVVVVVVV8AAAAA9VVVVVVVVVVXwAAAAD1VVVVVVVVVVfAAAAAPVVVVVVVVVVV8AAAAA9VVVVVVVVVVXwAAAAD1VVVVVVVVVVfAAAAAPVVVVVVVVVVV8AAAAA9VVVVVVVVVVXwAAAAD1VVVVVVVVVVfAAAAAPVVVVVVVVVVV8AAAAA9VVVVVVVVVVXwAAAAD1VVVVVVVVVV8AAAAAPVVVVVVVVVVXwAAAAA9VVVVVVVVVVfAAAAAD3VVVVVVVVVXwAAAAA9/1VVVVVVVVfAAAAAD3/9VVVVVVVXwAAAAAPfD/VVVVVVV8AAAAAA98A/1VVVVVfAAAAAAPXwAP/VVVVfwAAAAAA9fAAD/////8AAAAAAPV8AAAP///8AAAAAAA9XwAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAD1VXwAAAAAAAAAAAAA9VVfAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAD1VVXwAAAAAAAAAAAD9VVVX8AAAAAAAAAAA/VVVVX/AAAAAAAAAD/VVVVVV//AAAAAAAP/1VVVVVVf/////////VVVVVVVVVf//////9VVVVVVU="},
|
||||||
|
{"width" : "56", "buffer":"VVVVVVVVVf//////9VVVVVVVVVX////////1VVVVVVVVX/8AAAAAAPVVVVVVVVX/AAAAAAAA9VVVVVVVX/AAAAAAAAD1VVVVVVV/AAAAAAAAAPVVVVVVVfAAAAAAAAAA9VVVVVVXwAAAAAAAAAD1VVVVVV8AAAAAAAAAAPVVVVVVfAAAAAAAAAAA9VVVVVXwAAAAAAAAAAD1VVVVV8AAAAAAAAAAAPVVVVVfAAAAAAAAAAAA9VVVVV8AAAAAAAAAAAD1VVVVfAAAAAAAA///8PVVVVXwAAAAAAD/////9VVVVfAAAAAAD/1VVV/1VVVXwAAAAAD/VVVVVVVVVVfAAAAAA/VVVVVVVVVVXwAAAAAPVVVVVVVVVVVfAAAAAD1VVVVVVVVVVXwAAAAA9VVVVVVVVVVVfAAAAAPVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVfAAAAA9VVVVVVVVVVVV8AAAAD1VVVVVVVVVVVXwAAAA9VVVVVVVVVVVVfAAAAD1VVVVVVVVVVVXwAAAAPVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVV8AAAAPVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVV8AAAAPVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVfAAAAD1VVVVVVVVVVVV8AAAAPVVV///9VVVVVXwAAAD1VX/////VVVVVfAAAAPVX/wAAA/1VVVV8AAAA9V/AAAAAP9VVVfAAAAD1fAAAAAAD9VVV8AAAAPXwAAAAAAA9VVXwAAAA98AAAAAAAA9VVfAAAAD/AAAAAAAAD1VV8AAAAx8AAAAAAAAD1VXwAAAAzAAAAAAAAAD1VfAAAAAwAAAAAAAAAPVV8AAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAAAD1XwAAAAAAD//AAAAAAPVfAAAAAAA///AAAAAAPV8AAAAAAPVVfAAAAAA9XwAAAAAD1VVfAAAAAD1fAAAAAA9VVV8AAAAAPV8AAAAAPVVVV8AAAAAPfAAAAAA9VVVXwAAAAA98AAAAAPVVVVXwAAAAD18AAAAA9VVVVfAAAAAPXwAAAAD1VVVV8AAAAA9fAAAAAPVVVVXwAAAAD18AAAAA9VVVVXwAAAAPXwAAAAD1VVVVfAAAAAPfAAAAA9VVVVV8AAAAA98AAAAD1VVVVXwAAAAD3wAAAAPVVVVVfAAAAAPfAAAAA9VVVVV8AAAAA98AAAAD1VVVVXwAAAAD3wAAAAD1VVVVfAAAAAPfAAAAAPVVVVV8AAAAA98AAAAA9VVVVXwAAAAPXwAAAAD1VVVVfAAAAA9fAAAAAPVVVVV8AAAAD1fAAAAA9VVVVfAAAAAPV8AAAAD1VVVV8AAAAA9XwAAAAPVVVVXwAAAAD1fAAAAAPVVVVfAAAAAPV8AAAAA9VVVXwAAAAD1V8AAAAD1VVVfAAAAAPVXwAAAAD1VVV8AAAAA9VfAAAAAPVVVfAAAAAD1V8AAAAAPVVXwAAAAA9VV8AAAAAPVV8AAAAAD1VXwAAAAAP1/AAAAAAPVVXwAAAAAP/wAAAAAD1VVfAAAAAADwAAAAAAPVVV8AAAAAAAAAAAAAD1VVV8AAAAAAAAAAAAAPVVVXwAAAAAAAAAAAAD1VVVXwAAAAAAAAAAAAPVVVVXwAAAAAAAAAAAD1VVVVfAAAAAAAAAAAA9VVVVVfAAAAAAAAAAAPVVVVVVfAAAAAAAAAAD1VVVVVVfAAAAAAAAAA9VVVVVVVfwAAAAAAAA/VVVVVVVVf8AAAAAAAP1VVVVVVVVX/AAAAAA/1VVVVVVVVVV///////9VVVVVVVVVVVf/////1VVVVVU="},
|
||||||
|
{"width" : "54", "buffer":"VVVVVVVVVVVVVVVVVV////////////////////////////////////8AAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAP///////////AAAAAA9///////////wAAAAA9VVVVVVVVVVV8AAAAA9VVVVVVVVVVV8AAAAD1VVVVVVVVVVV8AAAAD1VVVVVVVVVVXwAAAAD1VVVVVVVVVVXwAAAAPVVVVVVVVVVVXwAAAAPVVVVVVVVVVVfAAAAAPVVVVVVVVVVVfAAAAA9VVVVVVVVVVVfAAAAA9VVVVVVVVVVV8AAAAA9VVVVVVVVVVV8AAAAD1VVVVVVVVVVV8AAAAD1VVVVVVVVVVXwAAAAD1VVVVVVVVVVXwAAAAPVVVVVVVVVVVXwAAAAPVVVVVVVVVVVfAAAAAPVVVVVVVVVVVfAAAAAPVVVVVVVVVVVfAAAAA9VVVVVVVVVVV8AAAAA9VVVVVVVVVVV8AAAAA9VVVVVVVVVVV8AAAAD1VVVVVVVVVVXwAAAAD1VVVVVVVVVVXwAAAAD1VVVVVVVVVVXwAAAAPVVVVVVVVVVVfAAAAAPVVVVVVVVVVVfAAAAAPVVVVVVVVVVVfAAAAA9VVVVVVVVVVV8AAAAA9VVVVVVVVVVV8AAAAA9VVVVVVVVVVV8AAAAD1VVVVVVVVVVXwAAAAD1VVVVVVVVVVXwAAAAD1VVVVVVVVVVXwAAAAD1VVVVVVVVVVfAAAAAPVVVVVVVVVVVfAAAAAPVVVVVVVVVVVfAAAAA9VVVVVVVVVVV8AAAAA9VVVVVVVVVVV8AAAAA9VVVVVVVVVVV8AAAAA9VVVVVVVVVVXwAAAAD1VVVVVVVVVVXwAAAAD1VVVVVVVVVVXwAAAAD1VVVVVVVVVVfAAAAAPVVVVVVVVVVVfAAAAAPVVVVVVVVVVVfAAAAAPVVVVVVVVVVV8AAAAA9VVVVVVVVVVV8AAAAA9VVVVVVVVVVV8AAAAA9VVVVVVVVVVXwAAAAD1VVVVVVVVVVXwAAAAD1VVVVVVVVVVXwAAAAD1VVVVVVVVVVfAAAAAPVVVVVVVVVVVfAAAAAPVVVVVVVVVVVfAAAAAPVVVVVVVVVVV8AAAAA9VVVVVVVVVVV8AAAAA9VVVVVVVVVVV8AAAAA9VVVVVVVVVVXwAAAAA9VVVVVVVVVVXwAAAAD1VVVVVVVVVVXwAAAAD1VVVVVVVVVVfAAAAAD1VVVVVVVVVVfAAAAAPVVVVVVVVVVVfAAAAAPVVVVVVVVVVV8AAAAAPVVVVVVVVVVV8AAAAA9VVVVVVVVVVV8AAAAA9VVVVVVVVVVXwAAAAA9VVVVVVVVVVXwAAAAD1VVVVVVVVVVfAAAAAD1VVVVVVVVVVfAAAAAD1VVVVVVVVVVfAAAAAPVVVVVVVVVVV8AAAAAPVVVVVVVVVVV8AAAAAPVVVVVVVVVVV8AAAAAPVVVVVVVVVVXwAAAAA9VVVVVVVVVVXwAAAAA9VVVVVVVVVVXwAAAAA9VVVVVVVVVVXwAAAAD1VVVVVVVVVVfAAAAAD1VVVVVVVVVVf//////1VVVVVVVVVVf//////VVVVVVVVVVVVVVVVVVVVVVVVVVV"},
|
||||||
|
{"width" : "56", "buffer":"VVVVVVf/////9VVVVVVVVVVV////////1VVVVVVVVV/8AAAAAA/9VVVVVVVVfwAAAAAAAD9VVVVVVVfwAAAAAAAAA/VVVVVVX8AAAAAAAAAA/VVVVVV8AAAAAAAAAAAPVVVVVfAAAAAAAAAAAAPVVVVXwAAAAAAAAAAAAPVVVV8AAAAAAAAAAAAA9VVVXwAAAAAAAAAAAAA9VVV8AAAAAAAAAAAAAD1VVXwAAAAAAAAAAAAAD1VV8AAAAAAP/AAAAAAPVVXwAAAAAP//AAAAAAPVV8AAAAAD9VfAAAAAA9VXwAAAAA9VVfAAAAAD1VfAAAAAPVVVfAAAAAD1V8AAAAA9VVVfAAAAAPVfAAAAAPVVVV8AAAAA9V8AAAAA9VVVXwAAAAD1XwAAAAD1VVVXwAAAAPVfAAAAAPVVVVfAAAAA9V8AAAAA9VVVV8AAAAD1XwAAAAPVVVVXwAAAAPVfAAAAAPVVVVfAAAAA9V8AAAAA9VVVV8AAAAD1XwAAAAD1VVVXwAAAAPVfAAAAAPVVVV8AAAAA9VfAAAAA9VVVXwAAAAD1V8AAAAA9VVVfAAAAAPVXwAAAAD1VVV8AAAAD1VfAAAAAPVVVfAAAAAPVVfAAAAAPVVXwAAAAA9VV8AAAAAPVVfAAAAAPVVXwAAAAAPVXwAAAAA9VVXwAAAAAPV8AAAAAPVVVfAAAAAAPfAAAAAA9VVVfAAAAAAPwAAAAAPVVVVfAAAAAAMAAAAAD1VVVV8AAAAAAAAAAAA9VVVVV8AAAAAAAAAAAP1VVVVV8AAAAAAAAAAD9VVVVVV8AAAAAAAAAA9VVVVVVV8AAAAAAAAAPVVVVVVVV8AAAAAAAAD1VVVVVVVV8AAAAAAAA9VVVVVVVVV8AAAAAAAD1VVVVVVVVfAAAAAAAAD1VVVVVVVXwAAAAAAAAD1VVVVVVV8AAAAAAAAAD1VVVVVVfAAAAAAAAAAD1VVVVVXwAAAAAAAAAAD1VVVVV8AAAAAAAAAAAD1VVVVfAAAAAAAAAAAAD1VVVXwAAAAADAAAAAAD1VVV8AAAAAA/AAAAAAD1VVXwAAAAAPfAAAAAAPVVV8AAAAAD1fAAAAAAPVVXwAAAAA9VfAAAAAAPVV8AAAAAPVVfAAAAAA9VXwAAAAD1VVfAAAAAA9V8AAAAA9VVVfAAAAAD1XwAAAAD1VVVfAAAAAPVfAAAAA9VVVV8AAAAAPXwAAAAD1VVVV8AAAAA9fAAAAAPVVVVXwAAAAD18AAAAD1VVVVXwAAAAPXwAAAAPVVVVVfAAAAAPfAAAAA9VVVVV8AAAAA98AAAAD1VVVVV8AAAAD3wAAAAPVVVVVXwAAAAPfAAAAA9VVVVVfAAAAA/wAAAAD1VVVVV8AAAAD/AAAAAPVVVVVXwAAAAPfAAAAA9VVVVVfAAAAA98AAAAD1VVVVV8AAAAD3wAAAAPVVVVVfAAAAAPfAAAAA9VVVVV8AAAAA98AAAAA9VVVVXwAAAAPXwAAAAD1VVVV8AAAAA9fAAAAAD1VVVXwAAAAD18AAAAAD1VVV8AAAAAPV8AAAAAD1VVfAAAAAD1XwAAAAAD9V/wAAAAAPVfAAAAAAD//8AAAAAA9VfAAAAAAA/wAAAAAAPVV8AAAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAAPVVXwAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAPVVVXwAAAAAAAAAAAAD1VVVfwAAAAAAAAAAAA9VVVVfwAAAAAAAAAAAPVVVVVXwAAAAAAAAAAD1VVVVVX8AAAAAAAAAD9VVVVVVX/AAAAAAAAD/VVVVVVVV/8AAAAAAP/VVVVVVVVVf////////VVVVVVVVVVV//////9VVVVVU="},
|
||||||
|
{"width" : "56", "buffer":"VVVVVVf/////VVVVVVVVVVVV///////9VVVVVVVVVV/8AAAAAP/VVVVVVVVVfwAAAAAAA/VVVVVVVVXwAAAAAAAAPVVVVVVVX8AAAAAAAAAPVVVVVVV/AAAAAAAAAAPVVVVVVXwAAAAAAAAAAPVVVVVV8AAAAAAAAAAAPVVVVVfAAAAAAAAAAAAPVVVVXwAAAAAAAAAAAA9VVVVfAAAAAAAAAAAAA9VVVXwAAAAAAAAAAAAD1VVVfAAAAAAAAAAAAAD1VVXwAAAAAAMAAAAAAD1VVfAAAAAAP/AAAAAAPVVXwAAAAAD9/AAAAAA9VVfAAAAAA9VfAAAAAA9VXwAAAAAPVVfAAAAAD1VfAAAAAD1VVfAAAAAPVV8AAAAA9VVVfAAAAAPVXwAAAAD1VVV8AAAAA9V8AAAAA9VVVV8AAAAD1XwAAAAD1VVVXwAAAAPVfAAAAAPVVVVfAAAAAPV8AAAAA9VVVVfAAAAA9XwAAAAPVVVVV8AAAAD1fAAAAA9VVVVXwAAAAPXwAAAAD1VVVVfAAAAA9fAAAAAPVVVVV8AAAAA98AAAAA9VVVVV8AAAAD3wAAAAD1VVVVXwAAAAPfAAAAAPVVVVVfAAAAA98AAAAA9VVVVV8AAAAD3wAAAAD1VVVVXwAAAAPfAAAAAPVVVVVfAAAAA98AAAAA9VVVVV8AAAAD3wAAAAD1VVVVXwAAAAD/AAAAAPVVVVVfAAAAAPfAAAAA9VVVVXwAAAAA98AAAAA9VVVVfAAAAAD3wAAAAD1VVVV8AAAAAPfAAAAAPVVVVfAAAAAA98AAAAA9VVVV8AAAAAD3wAAAAA9VVVfAAAAAAPfAAAAAD1VVXwAAAAAA9fAAAAAD1VVfAAAAAAD18AAAAAD1VXwAAAAAAPXwAAAAAD9f8AAAAAAA9XwAAAAAD//AAAAAAAD1fAAAAAAA8AAAAAAAAPV8AAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAAD1VfAAAAAAAAADAAAAAPVVfAAAAAAAAA/AAAAA9VV8AAAAAAAAPfAAAAD1VV8AAAAAAAA98AAAAPVVV8AAAAAAAPXwAAAA9VVV/AAAAAAD1fAAAAD1VVV/wAAAAD9V8AAAA9VVVVf/AAAP/VfAAAAD1VVVVX/////VV8AAAAPVVVVVVf//9VVXwAAAA9VVVVVVVVVVVVfAAAAD1VVVVVVVVVVVV8AAAA9VVVVVVVVVVVVfAAAAD1VVVVVVVVVVVV8AAAAPVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVV8AAAAD1VVVVVVVVVVVXwAAAA9VVVVVVVVVVVVfAAAAD1VVVVVVVVVVVXwAAAAPVVVVVVVVVVVV8AAAAA9VVVVVVVVVVVXwAAAAPVVVVVVVVVVVV8AAAAA9VVVVVVVVVVVfAAAAAD1VVVVVVVVVVV8AAAAA9VVVVVVVVVVV/AAAAAD1VVVVVVVVVVfwAAAAA9VVVVVVVVVVXwAAAAAD1VVVVVVVVVX8AAAAAA9VVVVf9VVVf/AAAAAAD1VVVV//////AAAAAAA9VVVVXw///8AAAAAAAD1VVVVfAAAAAAAAAAAA9VVVVV8AAAAAAAAAAAPVVVVVXwAAAAAAAAAAD1VVVVVfAAAAAAAAAAAPVVVVVV8AAAAAAAAAAD1VVVVVXwAAAAAAAAAA9VVVVVVfAAAAAAAAAA/VVVVVVV8AAAAAAAAAP1VVVVVVXwAAAAAAAAP1VVVVVVVfAAAAAAAAD9VVVVVVVV8AAAAAAAP9VVVVVVVVXwAAAAAA//VVVVVVVVVf///////9VVVVVVVVVV///////1VVVVVVVVU="},
|
||||||
|
{"width" : "23", "buffer":"VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf//1VVV////9VVf8AAD/VXwAAAA/V8AAAAA9XwAAAAA98AAAAAD3wAAAAAPfAAAAAA98AAAAAD/AAAAAAP8AAAAAA/wAAAAAD/AAAAAAPfAAAAAA98AAAAAD3wAAAAAPfAAAAAA9fAAAAAD1fAAAAA9V/AAAA/VVf8AD/1VVf///1VVVV//VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf///VVVf////1VX8AAAP1V8AAAAD1fAAAAAD3wAAAAAPfAAAAAA98AAAAAD3wAAAAAP8AAAAAA/wAAAAAD/AAAAAAP8AAAAAA/wAAAAAD3wAAAAAPfAAAAAA98AAAAAD3wAAAAAPXwAAAAA9XwAAAAPVX/////1VX////9U="}
|
||||||
|
]
|
||||||
|
}
|
|
@ -0,0 +1,17 @@
|
||||||
|
{
|
||||||
|
"name":"Phosphate",
|
||||||
|
"size":"88",
|
||||||
|
"characters":[
|
||||||
|
{"width" : "70", "buffer":"VVVVVVVf///////9VVVVVVVVVVVVVX//////////VVVVVVVVVVVVf/AAAAAAAAP/VVVVVVVVVVVfwAAAAAAAAAD9VVVVVVVVVV/AAAAAAAAAAAD9VVVVVVVVV/AAAAAAAAAAAAP1VVVVVVVV8AAAAAAAAAAAAAPVVVVVVVV8AAAAAAAAAAAAAA9VVVVVVV8AAAAAAAAAAAAAAD1VVVVVV8AAAAAAAAAAAAAAAPVVVVVV8AAAAAAAAAAAAAAAA9VVVVV8AAAAAAAAAAAAAAAAD1VVVVfAAAAAAAAAAAAAAAAA9VVVVfAAAAAAAAAAAAAAAAAD1VVVXwAAAAAAAAAAAAAAAAA9VVVXwAAAAAAAAAAAAAAAAAD1VVV8AAAAAAAAAAAAAAAAAA9VVV8AAAAAAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAAAAAA9VVfAAAAAAAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAAAAAAA9VfAAAAAAAAAD8AAAAAAAAAPVXwAAAAAAAAP/8AAAAAAAAD1XwAAAAAAAAP1fwAAAAAAAAPV8AAAAAAAAPVVfAAAAAAAAD1fAAAAAAAAPVVV8AAAAAAAA9XwAAAAAAAD1VVfAAAAAAAAPXwAAAAAAAD1VVV8AAAAAAAA98AAAAAAAA9VVVfAAAAAAAAPfAAAAAAAAPVVVXwAAAAAAAD3wAAAAAAAPVVVVfAAAAAAAA98AAAAAAAD1VVVXwAAAAAAAPfAAAAAAAA9VVVV8AAAAAAAD3wAAAAAAAPVVVVfAAAAAAAA98AAAAAAAD1VVVXwAAAAAAAPfAAAAAAAA9VVVV8AAAAAAAA/wAAAAAAAPVVVVfAAAAAAAAP8AAAAAAAD1VVVV8AAAAAAAD/AAAAAAAA9VVVVfAAAAAAAA/wAAAAAAA9VVVVXwAAAAAAAP8AAAAAAAPVVVVV8AAAAAAAD/AAAAAAAD1VVVVfAAAAAAAA/wAAAAAAA9VVVVXwAAAAAAAP8AAAAAAAPVVVVV8AAAAAAAD/AAAAAAAD1VVVVfAAAAAAAA/wAAAAAAAPVVVVXwAAAAAAAP8AAAAAAAD1VVVXwAAAAAAAD/AAAAAAAA9VVVV8AAAAAAAA/wAAAAAAAPVVVVfAAAAAAAAP8AAAAAAAD1VVVXwAAAAAAAPfAAAAAAAA9VVVV8AAAAAAAD3wAAAAAAAPVVVVfAAAAAAAA98AAAAAAAD1VVVXwAAAAAAAPfAAAAAAAA9VVVV8AAAAAAAD3wAAAAAAAD1VVV8AAAAAAAA98AAAAAAAA9VVVfAAAAAAAAPfAAAAAAAAD1VVfAAAAAAAAD18AAAAAAAA9VVXwAAAAAAAD1fAAAAAAAAD1VXwAAAAAAAA9XwAAAAAAAA9VV8AAAAAAAAPV8AAAAAAAAD9X8AAAAAAAAD1XwAAAAAAAAP/8AAAAAAAAD1V8AAAAAAAAAPwAAAAAAAAA9VfAAAAAAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAAAAAAA9VVfAAAAAAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAAAAAAPVVVfAAAAAAAAAAAAAAAAAAPVVVXwAAAAAAAAAAAAAAAAAD1VVVfAAAAAAAAAAAAAAAAAD1VVVXwAAAAAAAAAAAAAAAAA9VVVVfAAAAAAAAAAAAAAAAA9VVVVV8AAAAAAAAAAAAAAAA9VVVVVfAAAAAAAAAAAAAAAAPVVVVVV8AAAAAAAAAAAAAAAPVVVVVVXwAAAAAAAAAAAAAAPVVVVVVVfAAAAAAAAAAAAAAPVVVVVVVV/AAAAAAAAAAAAA/VVVVVVVVX8AAAAAAAAAAAA/VVVVVVVVVX8AAAAAAAAAAD9VVVVVVVVVVf8AAAAAAAAAP9VVVVVVVVVVVf8AAAAAAAA/1VVVVVVVVVVVVf/////////VVVVVVVVVVVVVVf///////9VVVVVVVQ=="},
|
||||||
|
{"width" : "40", "buffer":"VVVVVVVVVVVVVVVVVVVf//////9VVVVVf///////VVVVVfAAAAAAD1VVVVfAAAAAAA9VVVVfAAAAAAAPVVVVfAAAAAAAD1VVVfAAAAAAAA9VVVfAAAAAAAAPVVVfAAAAAAAAD1VVfAAAAAAAAA9VVfAAAAAAAAAPVVfAAAAAAAAAD1VfAAAAAAAAAA9VfAAAAAAAAAAPVfAAAAAAAAAAD1fAAAAAAAAAAA9fAAAAAAAAAAAPXwAAAAAAAAAAD3wAAAAAAAAAAA/wAAAAAAAAAAAP8AAAAAAAAAAAD/AAAAAAAAAAAA98AAAAAAAAAAAPXwAAAAAAAAAAD1fAAAAAAAAAAA9V8AAAAAAAAAAPVXwAAAAAAAAAD1V8AAAAAAAAAA9VXwAAAAAAAAAPVVfAAAAAAAAAD1VV8AAAAAAAAA9VVXwAAAAAAAAPVVVfAAAAAAAAD1VVV8AAAAAAAA9VVVfAAAAAAAAPVVVXwAAAAAAAD1VVV8AAAAAAAA9VVVfAAAAAAAAPVVVXwAAAAAAAD1VVV8AAAAAAAA9VVVfAAAAAAAAPVVVXwAAAAAAAD1VVV8AAAAAAAA9VVVfAAAAAAAAPVVVXwAAAAAAAD1VVV8AAAAAAAA9VVVfAAAAAAAAPVVVXwAAAAAAAD1VVV8AAAAAAAA9VVVfAAAAAAAAPVVVXwAAAAAAAD1VVV8AAAAAAAA9VVVfAAAAAAAAPVVVXwAAAAAAAD1VVV8AAAAAAAA9VVVfAAAAAAAAPVVVXwAAAAAAAD1VVV8AAAAAAAA9VVVfAAAAAAAAPVVVXwAAAAAAAD1VVV8AAAAAAAA9VVVfAAAAAAAAPVVVXwAAAAAAAD1VVV8AAAAAAAA9VVVfAAAAAAAAPVVVXwAAAAAAAD1VVV8AAAAAAAA9VVVfAAAAAAAAPVVVXwAAAAAAAD1VVV8AAAAAAAA9VVVfAAAAAAAAPVVVXwAAAAAAAD1VVV8AAAAAAAA9VVVfAAAAAAAAPVVVXwAAAAAAAD1VVV8AAAAAAAA9VVVfAAAAAAAAPVVVXwAAAAAAAD1VVV8AAAAAAAA9VVVfAAAAAAAAPVVVXwAAAAAAAD1VVV8AAAAAAAA9VVVfAAAAAAAAPVVVXwAAAAAAAD1VVV/////////9VVVf/////////VVVVVVVVVVVVVQ=="},
|
||||||
|
{"width" : "58", "buffer":"VVVf///////9VVVVVVVVVVf/////////VVVVVVVVVXwAAAAAAAP/1VVVVVVVV8AAAAAAAAD/1VVVVVVVfAAAAAAAAAA/1VVVVVVXwAAAAAAAAAA/1VVVVVV8AAAAAAAAAAA/VVVVVVfAAAAAAAAAAAA9VVVVVXwAAAAAAAAAAAD1VVVVV8AAAAAAAAAAAAPVVVVVfAAAAAAAAAAAAA9VVVVXwAAAAAAAAAAAAPVVVVV8AAAAAAAAAAAAA9VVVVfAAAAAAAAAAAAAD1VVVXwAAAAAAAAAAAAA9VVVV8AAAAAAAAAAAAAD1VVVfAAAAAAAAAAAAAA9VVVXwAAAAAAAAAAAAAPVVVV8AAAAAAAAAAAAAA9VVVfAAAAAAAAAAAAAAPVVVXwAAAAAAAAAAAAAD1VVV8AAAAAAAAAAAAAA9VVVfAAAAAAAAAAAAAAD1VVXwAAAAAAAAAAAAAA9VVV////AAAAAAAAAAAPVVVX////AAAAAAAAAAD1VVVVVVX8AAAAAAAAAA9VVVVVVVXwAAAAAAAAAPVVVVVVVVfAAAAAAAAAD1VVVVVVVXwAAAAAAAAA9VVVVVVVVfAAAAAAAAAPVVVVVVVVXwAAAAAAAAPVVVVVVVVV8AAAAAAAAD1VVVVVVVVfAAAAAAAAA9VVVVVVVVXwAAAAAAAAPVVVVVVVVV8AAAAAAAAPVVVVVVVVVfAAAAAAAAD1VVVVVVVVfAAAAAAAAA9VVVVVVVVXwAAAAAAAAPVVVVVVVVV8AAAAAAAAPVVVVVVVVV8AAAAAAAAD1VVVVVVVVfAAAAAAAAA9VVVVVVVVfAAAAAAAAA9VVVVVVVVXwAAAAAAAAPVVVVVVVVXwAAAAAAAAPVVVVVVVVV8AAAAAAAAD1VVVVVVVV8AAAAAAAAD1VVVVVVVVfAAAAAAAAA9VVVVVVVVfAAAAAAAAA9VVVVVVVVXwAAAAAAAAPVVVVVVVVXwAAAAAAAAPVVVVVVVVV8AAAAAAAAD1VVVVVVVV8AAAAAAAAD1VVVVVVVVfAAAAAAAAA9VVVVVVVVfAAAAAAAAA9VVVVVVVVfAAAAAAAAAPVVVVVVVVXwAAAAAAAAPVVVVVVVVV8AAAAAAAAD1VVVVVVVV8AAAAAAAAD1VVVVVVVV8AAAAAAAAA9VVVVVVVVfAAAAAAAAA9VVVVVVVVfAAAAAAAAAPVVVVVVVVXwAAAAAAAAPVVVVVVVVXwAAAAAAAAA/////1VVV8AAAAAAAAAD////9VVV8AAAAAAAAAAAAAAPVVVfAAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAD1VVXwAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAAPVVXwAAAAAAAAAAAAAAD1VV8AAAAAAAAAAAAAAD1VV8AAAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAD1Vf////////////////1VX////////////////9VVVVVVVVVVVVVVVVVVVVVQ=="},
|
||||||
|
{"width" : "48", "buffer":"V////////VVVVVVV//////////VVVVVV/AAAAAAAA//VVVVV8AAAAAAAAA/1VVVV8AAAAAAAAAA/VVVV8AAAAAAAAAAP1VVV8AAAAAAAAAAA9VVV8AAAAAAAAAAAPVVV8AAAAAAAAAAAPVVV8AAAAAAAAAAAD1VV8AAAAAAAAAAAA9VV8AAAAAAAAAAAA9VV8AAAAAAAAAAAAPVV8AAAAAAAAAAAAPVV8AAAAAAAAAAAAPVV8AAAAAAAAAAAAD1V8AAAAAAAAAAAAD1V8AAAAAAAAAAAAD1V8AAAAAAAAAAAAD1V8AAAAAAAAAAAAD1V8AAAAAAAAAAAAD1V8P/8AAAAAAAAAD1V////AAAAAAAAAD1V/1VXwAAAAAAAAD1VVVVV8AAAAAAAAD1VVVVVfAAAAAAAAPVVVVVVfAAAAAAAAPVVVVVV8AAAAAAAAPVVVVVV8AAAAAAAA9VVVVVXwAAAAAAAA9VVVVVfAAAAAAAAD1VVVVV8AAAAAAAAD1VVVVXwAAAAAAAAPVVVVVfAAAAAAAAA9VVVVX8AAAAAAAAA9VVVVfwAAAAAAAAD1VVVX8AAAAAAAAAA9VVVfwAAAAAAAAAAPVVVfwAAAAAAAAAAD1VVV/AAAAAAAAAAA9VVVf8AAAAAAAAAAPVVVV/wAAAAAAAAAD1VVVX8AAAAAAAAAD1VVVVfwAAAAAAAAA9VVVVX8AAAAAAAAAPVVVVVfAAAAAAAAAPVVVVVXwAAAAAAAAD1VVVVV8AAAAAAAAD1VVVVVfAAAAAAAAD1VVVVVXwAAAAAAAA9VVVVVXwAAAAAAAA9VVVVVV8AAAAAAAA9VVVVVV8AAAAAAAAPVVVVVV8AAAAAAAAPVVVVVV8AAAAAAAAPVVVVVV8AAAAAAAAPVVVVVV8AAAAAAAAPVVVVVV8AAAAAAAAPVVVVVXwAAAAAAAAPVVVVVfAAAAAAAAAPVVVVV8AAAAAAAAAPVVVVfwAAAAAAAAAP9Vf//AAAAAAAAAAP////wAAAAAAAAAA9//wAAAAAAAAAAAA98AAAAAAAAAAAAAA98AAAAAAAAAAAAAA98AAAAAAAAAAAAAD18AAAAAAAAAAAAAD18AAAAAAAAAAAAAD18AAAAAAAAAAAAAPV8AAAAAAAAAAAAAPV8AAAAAAAAAAAAA9V8AAAAAAAAAAAAD1V8AAAAAAAAAAAAPVV8AAAAAAAAAAAAPVV8AAAAAAAAAAAA9VV8AAAAAAAAAAAD1VV8AAAAAAAAAAA/VVV8AAAAAAAAAAD9VVV8AAAAAAAAAA/VVVV8AAAAAAAAAP9VVVV8AAAAAAAAD/VVVVV8AAAAAAAD/1VVVVV8AAAAAAD/9VVVVVV8AAAAD//9VVVVVVV///////9VVVVVVVV/////9VVVVVVVVVV"},
|
||||||
|
{"width" : "63", "buffer":"VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf///////1VVVVVVVVVVVVf///////1VVVVVVVVVVVV8AAAAAAD1VVVVVVVVVVVV8AAAAAAD1VVVVVVVVVVVXwAAAAAAD1VVVVVVVVVVVfAAAAAAAD1VVVVVVVVVVVfAAAAAAAD1VVVVVVVVVVV8AAAAAAAD1VVVVVVVVVVV8AAAAAAAD1VVVVVVVVVVXwAAAAAAAD1VVVVVVVVVVXwAAAAAAAD1VVVVVVVVVVfAAAAAAAAD1VVVVVVVVVV8AAAAAAAAD1VVVVVVVVVV8AAAAAAAAD1VVVVVVVVVXwAAAAAAAAD1VVVVVVVVVXwAAAAAAAAD1VVVVVVVVVfAAAAAAAAAD1VVVVVVVVV8AAAAAAAAAD1VVVVVVVVV8AAAAAAAAAD1VVVVVVVVXwAAAAAAAAAD1VVVVVVVVXwAAAAAAAAAD1VVVVVVVVfAAAAAAAAAAD1VVVVVVVV8AAAAAAAAAAD1VVVVVVVV8AAAAAAAAAAD1VVVVVVVXwAAAAAAAAAAD1VVVVVVVXwAAAAAAAAAAD1VVVVVVVfAAAAAAAAAAAD1VVVVVVVfAAAAAAAAAAAD1VVVVVVV8AAAAAAAAAAAD1VVVVVVXwAAAAAAAAAAAD1VVVVVVXwAAAAAAAAAAAD1VVVVVVfAAAAAAAAAAAAD1VVVVVVfAAAAAAAAAAAAD1VVVVVV8AAAAAAAAAAAAD1VVVVVXwAAAAAAAAAAAAD1VVVVVXwAAAAAAAAAAAAD1VVVVVfAAAAAAAAAAAAAD1VVVVVfAAAAAAAAAAAAAD1VVVVV8AAAAAAAAAAAAAD1VVVVXwAAAAAAAAAAAAAD1VVVVXwAAAAAAAAAAAAAD1VVVVfAAAAAAwAAAAAAAD1VVVVfAAAAAD8AAAAAAAD1VVVV8AAAAAPfAAAAAAAD1VVVXwAAAAA9fAAAAAAAD1VVVXwAAAAA9fAAAAAAAD1VVVfAAAAAD1fAAAAAAAD1VVVfAAAAAD1fAAAAAAAD1VVV8AAAAAPVfAAAAAAAD1VVV8AAAAA9VfAAAAAAAD1VVXwAAAAA9VfAAAAAAAD1VVfAAAAAD1VfAAAAAAAD1VVfAAAAAD1VfAAAAAAAD1VV8AAAAAPVVfAAAAAAAD1VV8AAAAA9VVfAAAAAAAD1VXwAAAAAP//8AAAAAAAA//fAAAAAAD//wAAAAAAAAP/fAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAP//////////wAAAAAAAAP///////////8AAAAAAAA//VVVVVVVVVVfAAAAAAAD1VVVVVVVVVVVfAAAAAAAD1VVVVVVVVVVVfAAAAAAAD1VVVVVVVVVVVfAAAAAAAD1VVVVVVVVVVVfAAAAAAAD1VVVVVVVVVVVfAAAAAAAD1VVVVVVVVVVVfAAAAAAAD1VVVVVVVVVVVfAAAAAAAD1VVVVVVVVVVVfAAAAAAAD1VVVVVVVVVVVfAAAAAAAD1VVVVVVVVVVVf////////1VVVVVVVVVVVf////////1VVVVVVVVVVVVVVVVVVVVVV"},
|
||||||
|
{"width" : "52", "buffer":"VVVVVVVVVVVVVVVVVVVVVVf///////////9VVVVX////////////VVVVXwAAAAAAAAAAD1VVVV8AAAAAAAAAAA9VVVV8AAAAAAAAAAAPVVVVfAAAAAAAAAAAD1VVVfAAAAAAAAAAAA9VVVXwAAAAAAAAAAAPVVVV8AAAAAAAAAAAD1VVV8AAAAAAAAAAAA9VVVfAAAAAAAAAAAAPVVVfAAAAAAAAAAAAD1VVXwAAAAAAAAAAAA9VVV8AAAAAAAAAAAAPVVV8AAAAAAAAAAAAD1VVfAAAAAAAAAAAAA9VVfAAAAAAAAAAAAAPVVXwAAAAAAAAAAAAD1VV8AAAAAAAAAAAAA9VV8AAAAAAAAAAAAAPVVfAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAPVV8AAAAAAAAAD////1V8AAAAAAAAAD////1VfAAAAAAAAAD1VVVVVfAAAAAAAAAAPVVVVVXwAAAAAAAAAA9VVVVXwAAAAAAAAAAD1VVVV8AAAAAAAAAAAPVVVVfAAAAAAAAAAAA9VVVfAAAAAAAAAAAAD1VVXwAAAAAAAAAAAAPVVXwAAAAAAAAAAAAD1VV8AAAAAAAAAAAAAPVVfAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAAPVX//8AAAAAAAAAAAD1V////wAAAAAAAAAAPVVVVf/wAAAAAAAAAD1VVVVV/wAAAAAAAAAPVVVVVV/AAAAAAAAAD1VVVVVV8AAAAAAAAA9VVVVVVXwAAAAAAAAPVVVVVVVfAAAAAAAAA9VVVVVVV8AAAAAAAAPVVVVVVVfAAAAAAAAD1VVVVVVV8AAAAAAAA9VVVVVVVfAAAAAAAAPVVVVVVVXwAAAAAAAD1VVVVVVV8AAAAAAAA9VVVVVVVfAAAAAAAAPVVVVVVVXwAAAAAAAD1VVVVVVXwAAAAAAAA9VVVVVVV8AAAAAAAAPVVVVVVV8AAAAAAAAD1VVVVVV8AAAAAAAAA9VVVVVV8AAAAAAAAAPVVVVVV8AAAAAAAAAD1VVVVX8AAAAAAAAAD1VVVVf8AAAAAAAAAA9VVf//wAAAAAAAAAAPVX///AAAAAAAAAAAD1X/AAAAAAAAAAAAAA9V8AAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAD1VfAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAA9VV8AAAAAAAAAAAAA9VVfAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAPVVV8AAAAAAAAAAAAPVVVfAAAAAAAAAAAAPVVVXwAAAAAAAAAAAPVVVV8AAAAAAAAAAAPVVVVfAAAAAAAAAAA/VVVVXwAAAAAAAAAD/VVVVV8AAAAAAAAAD9VVVVVfAAAAAAAAAP1VVVVVXwAAAAAAAA/1VVVVVV8AAAAAAAP/VVVVVVVfAAAAAAD/9VVVVVVVXwAAAAD//VVVVVVVVV///////1VVVVVVVVVX/////1VVVVVVVVVVQ=="},
|
||||||
|
{"width" : "67", "buffer":"VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf//////////1VVVVVVVVVVf//////////9VVVVVVVVVVfAAAAAAAAAA9VVVVVVVVVVfAAAAAAAAAA9VVVVVVVVVVfAAAAAAAAAA9VVVVVVVVVVfAAAAAAAAAA9VVVVVVVVVVfAAAAAAAAAA9VVVVVVVVVVfAAAAAAAAAA9VVVVVVVVVVXwAAAAAAAAA9VVVVVVVVVVXwAAAAAAAAAPVVVVVVVVVVXwAAAAAAAAAPVVVVVVVVVVXwAAAAAAAAAPVVVVVVVVVVV8AAAAAAAAAPVVVVVVVVVVV8AAAAAAAAAPVVVVVVVVVVV8AAAAAAAAAD1VVVVVVVVVV8AAAAAAAAAD1VVVVVVVVVVfAAAAAAAAAD1VVVVVVVVVVfAAAAAAAAAA9VVVVVVVVVVfAAAAAAAAAA9VVVVVVVVVVXwAAAAAAAAA9VVVVVVVVVVXwAAAAAAAAAPVVVVVVVVVVXwAAAAAAAAAPVVVVVVVVVVV8AAAAAAAAAPVVVVVVVVVVV8AAAAAAAAAD1VVVVVVVVVVfAAAAAAAAAAP9VVVVVVVVVfAAAAAAAAAAA//VVVVVVVVXwAAAAAAAAAAAP/VVVVVVVXwAAAAAAAAAAAAD/VVVVVVV8AAAAAAAAAAAAAD9VVVVVV8AAAAAAAAAAAAAAD1VVVVVfAAAAAAAAAAAAAAAP1VVVVfAAAAAAAAAAAAAAAA/VVVVXwAAAAAAAAAAAAAAAA9VVVXwAAAAAAAAAAAAAAAAD1VVV8AAAAAAAAAAAAAAAAAPVVVfAAAAAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAAAAAPVVXwAAAAAAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAAAAAD18AAAAAAAAADwAAAAAAAAAPfAAAAAAAAA//8AAAAAAAAD/AAAAAAAAA/1/wAAAAAAAA/wAAAAAAAA9VVfAAAAAAAAP8AAAAAAAA9VVV8AAAAAAAD/AAAAAAAA9VVVXwAAAAAAA/wAAAAAAAPVVVV8AAAAAAAP8AAAAAAAD1VVVfAAAAAAAD/AAAAAAAA9VVVXwAAAAAAA/wAAAAAAAPVVVV8AAAAAAAP8AAAAAAAD1VVVfAAAAAAAD/AAAAAAAA9VVVXwAAAAAAA/wAAAAAAAD1VVXwAAAAAAAPfAAAAAAAAPVVXwAAAAAAAD3wAAAAAAAA9VXwAAAAAAAA98AAAAAAAAD//wAAAAAAAAPfAAAAAAAAAP/wAAAAAAAAD3wAAAAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAAAAPVVXwAAAAAAAAAAAAAAAAAD1VV8AAAAAAAAAAAAAAAAAD1VVXwAAAAAAAAAAAAAAAAD1VVVfAAAAAAAAAAAAAAAAA9VVVXwAAAAAAAAAAAAAAAA9VVVVfAAAAAAAAAAAAAAAA9VVVVV8AAAAAAAAAAAAAAA9VVVVVXwAAAAAAAAAAAAAA/VVVVVVfAAAAAAAAAAAAAA/VVVVVVV/AAAAAAAAAAAAA9VVVVVVVX8AAAAAAAAAAAD9VVVVVVVVX8AAAAAAAAAAD9VVVVVVVVVf8AAAAAAAAAP1VVVVVVVVVVf/AAAAAAAD/1VVVVVVVVVVVf/////////VVVVVVVVVVVVVX///////1VVVVVVQ=="},
|
||||||
|
{"width" : "64", "buffer":"VVVVVVVVVVVVVVVVVVVVVVVVX/////////////////9VVV//////////////////VVV8AAAAAAAAAAAAAAAAPVVVfAAAAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAAAA9VVV8AAAAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAAAAAPVVVfAAAAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAAAA9VVV8AAAAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAAAD1VVXwAAAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAAAA9VVV8AAAAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAAAAAPVVVfAAAAAAAAAAAAAAAAD1VVXwAAAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAAAA9VVV8AAAAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAAAAAD1VVf//////8AAAAAAAAAD1VVX///////wAAAAAAAAA9VVVVVVVVVVfAAAAAAAAA9VVVVVVVVVVXwAAAAAAAAPVVVVVVVVVVV8AAAAAAAAD1VVVVVVVVVV8AAAAAAAAD1VVVVVVVVVVfAAAAAAAAA9VVVVVVVVVVfAAAAAAAAA9VVVVVVVVVVXwAAAAAAAAPVVVVVVVVVVV8AAAAAAAAPVVVVVVVVVVV8AAAAAAAAD1VVVVVVVVVVfAAAAAAAAA9VVVVVVVVVVXwAAAAAAAA9VVVVVVVVVVXwAAAAAAAAPVVVVVVVVVVV8AAAAAAAAD1VVVVVVVVVV8AAAAAAAAD1VVVVVVVVVVfAAAAAAAAA9VVVVVVVVVVfAAAAAAAAA9VVVVVVVVVVXwAAAAAAAAPVVVVVVVVVVV8AAAAAAAAD1VVVVVVVVVV8AAAAAAAAD1VVVVVVVVVVfAAAAAAAAA9VVVVVVVVVVfAAAAAAAAA9VVVVVVVVVVXwAAAAAAAAPVVVVVVVVVVV8AAAAAAAAD1VVVVVVVVVV8AAAAAAAAD1VVVVVVVVVVfAAAAAAAAA9VVVVVVVVVVXwAAAAAAAAPVVVVVVVVVVXwAAAAAAAAPVVVVVVVVVVV8AAAAAAAAD1VVVVVVVVVV8AAAAAAAAD1VVVVVVVVVVfAAAAAAAAA9VVVVVVVVVVXwAAAAAAAA9VVVVVVVVVVXwAAAAAAAAPVVVVVVVVVVV8AAAAAAAAD1VVVVVVVVVV8AAAAAAAAD1VVVVVVVVVVfAAAAAAAAA9VVVVVVVVVVXwAAAAAAAAPVVVVVVVVVVXwAAAAAAAAPVVVVVVVVVVV8AAAAAAAAD1VVVVVVVVVV8AAAAAAAAD1VVVVVVVVVVfAAAAAAAAA9VVVVVVVVVVXwAAAAAAAAPVVVVVVVVVVXwAAAAAAAAPVVVVVVVVVVV8AAAAAAAAD1VVVVVVVVVV8AAAAAAAAD1VVVVVVVVVVfAAAAAAAAA9VVVVVVVVVVXwAAAAAAAAPVVVVVVVVVVXwAAAAAAAAPVVVVVVVVVVV8AAAAAAAAD1VVVVVVVVVVfAAAAAAAAD1VVVVVVVVVVfAAAAAAAAA9VVVVVVVVVVXwAAAAAAAAPVVVVVVVVVVXwAAAAAAAAPVVVVVVVVVVV8AAAAAAAAD1VVVVVVVVVV8AAAAAAAAD1VVVVVVVVVVfAAAAAAAAA9VVVVVVVVVVXwAAAAAAAAPVVVVVVVVVVXwAAAAAAAAPVVVVVVVVVVV8AAAAAAAAD1VVVVVVVVVV8AAAAAAAAD1VVVVVVVVVVf/////////9VVVVVVVVVVX//////////VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVQ=="},
|
||||||
|
{"width" : "64", "buffer":"VVVVVVV///////1VVVVVVVVVVVVX////////1VVVVVVVVVVVf8AAAAAAA/1VVVVVVVVVVfwAAAAAAAA/1VVVVVVVVV/AAAAAAAAAA/VVVVVVVVV/AAAAAAAAAAA9VVVVVVVV8AAAAAAAAAAAD1VVVVVVV8AAAAAAAAAAAAPVVVVVVV8AAAAAAAAAAAAA9VVVVVV8AAAAAAAAAAAAAD1VVVVVfAAAAAAAAAAAAAAPVVVVVfAAAAAAAAAAAAAAD1VVVVfAAAAAAAAAAAAAAAPVVVVXwAAAAAAAAAAAAAAD1VVVXwAAAAAAAAAAAAAAAPVVVV8AAAAAAAAAAAAAAAD1VVVfAAAAAAAAAAAAAAAA9VVVXwAAAAAAAAAAAAAAAD1VVXwAAAAAAAAAAAAAAAA9VVV8AAAAAAAAAAAAAAAAPVVVfAAAAAAAAAAAAAAAAD1VVXwAAAAAAA/wAAAAAAA9VVV8AAAAAAA//AAAAAAAD1VVfAAAAAAA9V8AAAAAAA9VVfAAAAAAA9VXwAAAAAAPVVV8AAAAAAPVV8AAAAAAD1VVfAAAAAAD1VfAAAAAAA9VVXwAAAAAA9VXwAAAAAA9VVV8AAAAAAD1XwAAAAAAPVVVfAAAAAAAP/wAAAAAAD1VVXwAAAAAAA/wAAAAAAA9VVVfAAAAAAAAAAAAAAAA9VVVXwAAAAAAAAAAAAAAAPVVVV8AAAAAAAAAAAAAAAD1VVVXwAAAAAAAAAAAAAAD1VVVV8AAAAAAAAAAAAAAA9VVVVXwAAAAAAAAAAAAAA9VVVVVfAAAAAAAAAAAAAAPVVVVVfAAAAAAAAAAAAAAD1VVVVfAAAAAAAAAAAAAAAPVVVVfAAAAAAAAAAAAAAAA9VVVfAAAAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAAAAPVVXwAAAAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAAAAPXwAAAAAAAAP8AAAAAAAAD18AAAAAAAA//8AAAAAAAA9fAAAAAAAA/VfwAAAAAAAD/AAAAAAAA9VVfAAAAAAAA/wAAAAAAAPVVV8AAAAAAAP8AAAAAAAPVVVfAAAAAAAD/AAAAAAAD1VVV8AAAAAAA/wAAAAAAD1VVVfAAAAAAAP8AAAAAAA9VVVXwAAAAAAD/AAAAAAAD1VVV8AAAAAAA/wAAAAAAA9VVV8AAAAAAAP8AAAAAAAD1VVfAAAAAAAD/AAAAAAAAPVV/AAAAAAAA/wAAAAAAAA///AAAAAAAAP8AAAAAAAAD/8AAAAAAAAD/AAAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAAD3wAAAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAAAAAPVVVXwAAAAAAAAAAAAAAAPVVVVfAAAAAAAAAAAAAAAPVVVVV8AAAAAAAAAAAAAAPVVVVVXwAAAAAAAAAAAAAPVVVVVVfwAAAAAAAAAAAAPVVVVVVV/AAAAAAAAAAAA/VVVVVVVV/AAAAAAAAAAD/VVVVVVVVX/AAAAAAAAAP9VVVVVVVVVX/wAAAAAAD/1VVVVVVVVVVX/////////VVVVVVVVVVVVV///////1VVVVVVQ=="},
|
||||||
|
{"width" : "67", "buffer":"VVVVVVX////////1VVVVVVVVVVVVf/////////1VVVVVVVVVVV/wAAAAAAAA/1VVVVVVVVVV/AAAAAAAAAA/1VVVVVVVVX8AAAAAAAAAAA/VVVVVVVVX8AAAAAAAAAAAA9VVVVVVVXwAAAAAAAAAAAAD9VVVVVVXwAAAAAAAAAAAAAP1VVVVVXwAAAAAAAAAAAAAAPVVVVVXwAAAAAAAAAAAAAAA9VVVVXwAAAAAAAAAAAAAAAD1VVVXwAAAAAAAAAAAAAAAA9VVVXwAAAAAAAAAAAAAAAAD1VVV8AAAAAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAAAA9fAAAAAAAAA//wAAAAAAAAPfAAAAAAAAA///AAAAAAAAA/wAAAAAAAA9VV8AAAAAAAAP8AAAAAAAA9VVXwAAAAAAAD/AAAAAAAA9VVVfAAAAAAAA/wAAAAAAA9VVVV8AAAAAAAP8AAAAAAAPVVVVfAAAAAAAD/AAAAAAAD1VVVXwAAAAAAA/wAAAAAAA9VVVV8AAAAAAAP8AAAAAAAPVVVVfAAAAAAAD/AAAAAAAA9VVVXwAAAAAAA/wAAAAAAAPVVVXwAAAAAAAP8AAAAAAAA9VVXwAAAAAAAD/AAAAAAAAD1VXwAAAAAAAA98AAAAAAAAP//wAAAAAAAAPfAAAAAAAAA//wAAAAAAAAD3wAAAAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAAAA9XwAAAAAAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAAAAAAD1VVXwAAAAAAAAAAAAAAAAD1VVVfAAAAAAAAAAAAAAAAA9VVVV8AAAAAAAAAAAAAAAA9VVVVX8AAAAAAAAAAAAAAAPVVVVVfwAAAAAAAAAAAAAAD1VVVVVfAAAAAAAAAAAAAAD1VVVVVV/AAAAAAAAAAAAAA9VVVVVVX/AAAAAAAAAAAAA9VVVVVVVX/wAAAAAAAAAAAPVVVVVVVVX/wAAAAAAAAAAPVVVVVVVVVV/AAAAAAAAAAD1VVVVVVVVVV8AAAAAAAAAD1VVVVVVVVVVfAAAAAAAAAA9VVVVVVVVVVfAAAAAAAAAA9VVVVVVVVVVXwAAAAAAAAA9VVVVVVVVVVXwAAAAAAAAAPVVVVVVVVVVXwAAAAAAAAAPVVVVVVVVVVV8AAAAAAAAAPVVVVVVVVVVV8AAAAAAAAAD1VVVVVVVVVV8AAAAAAAAAD1VVVVVVVVVVfAAAAAAAAAD1VVVVVVVVVVfAAAAAAAAAA9VVVVVVVVVVfAAAAAAAAAA9VVVVVVVVVVfAAAAAAAAAA9VVVVVVVVVVXwAAAAAAAAA9VVVVVVVVVVXwAAAAAAAAA9VVVVVVVVVVXwAAAAAAAAAPVVVVVVVVVVXwAAAAAAAAAPVVVVVVVVVVXwAAAAAAAAAPVVVVVVVVVVXwAAAAAAAAAPVVVVVVVVVVXwAAAAAAAAAPVVVVVVVVVVXwAAAAAAAAAPVVVVVVVVVVXwAAAAAAAAAPVVVVVVVVVVV///////////VVVVVVVVVVVf//////////VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVQ=="},
|
||||||
|
{"width" : "28", "buffer":"VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV///////////////////wAAAAAAAP8AAAAAAAD/AAAAAAAA/wAAAAAAAP8AAAAAAAD/AAAAAAAA/wAAAAAAAP8AAAAAAAD/AAAAAAAA/wAAAAAAAP8AAAAAAAD/AAAAAAAA/wAAAAAAAP8AAAAAAAD/AAAAAAAA/wAAAAAAAP8AAAAAAAD/AAAAAAAA/wAAAAAAAP/////////3////////9VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX//////////////////8AAAAAAAD/AAAAAAAA/wAAAAAAAP8AAAAAAAD/AAAAAAAA/wAAAAAAAP8AAAAAAAD/AAAAAAAA/wAAAAAAAP8AAAAAAAD/AAAAAAAA/wAAAAAAAP8AAAAAAAD/AAAAAAAA/wAAAAAAAP8AAAAAAAD/AAAAAAAA/wAAAAAAAP8AAAAAAAD///////////////////VVVVVVVVVQ=="}
|
||||||
|
]
|
||||||
|
}
|
|
@ -0,0 +1,17 @@
|
||||||
|
{
|
||||||
|
"name":"Quicksand",
|
||||||
|
"size":"90",
|
||||||
|
"characters":[
|
||||||
|
{"width" : "68", "buffer":"VVVVVVVX//////9VVVVVVVVVVVVVVX////////1VVVVVVVVVVVVX/AAAAAAA/9VVVVVVVVVVVX/AAAAAAAAD9VVVVVVVVVVX/AAAAAAAAAA/VVVVVVVVVV/AAAAAAAAAAA/VVVVVVVVVfAAAAAAAAAAAAPVVVVVVVVXwAAAAAAAAAAAAPVVVVVVVV8AAAAAAAAAAAAAPVVVVVVVfAAAAAAAAAAAAAAPVVVVVVXwAAAAAAAAAAAAAAPVVVVVV8AAAAAAAAAAAAAAAPVVVVVXwAAAAAAAAAAAAAAAPVVVVV8AAAAAAAAAAAAAAAA9VVVVXwAAAAAAP/8AAAAAAA9VVVV8AAAAAAP///wAAAAAD1VVVfAAAAAAP9VV/wAAAAAD1VVV8AAAAAD9VVVXwAAAAAPVVVfAAAAAA9VVVVXwAAAAAPVVV8AAAAAPVVVVVXwAAAAA9VVXwAAAAD1VVVVVXwAAAAA9VV8AAAAA9VVVVVVXwAAAAD1VXwAAAAPVVVVVVVXwAAAAPVVfAAAAA9VVVVVVVfAAAAAPVXwAAAAPVVVVVVVVfAAAAA9VfAAAAA9VVVVVVVV8AAAAD1XwAAAAPVVVVVVVVV8AAAAD1fAAAAA9VVVVVVVVXwAAAAPV8AAAAD1VVVVVVVVXwAAAA9XwAAAA9VVVVVVVVVfAAAAD1fAAAAD1VVVVVVVVV8AAAAD18AAAAPVVVVVVVVVXwAAAAPfAAAAA9VVVVVVVVVXwAAAA98AAAAD1VVVVVVVVVfAAAAD3wAAAA9VVVVVVVVVV8AAAAPfAAAAD1VVVVVVVVVXwAAAA98AAAAPVVVVVVVVVVfAAAAA/wAAAA9VVVVVVVVVV8AAAAD/AAAAD1VVVVVVVVVXwAAAAP8AAAAPVVVVVVVVVVfAAAAA/wAAAA9VVVVVVVVVVfAAAAD/AAAAD1VVVVVVVVVV8AAAAP8AAAA9VVVVVVVVVVXwAAAA/wAAAD1VVVVVVVVVVfAAAAD/AAAAPVVVVVVVVVVV8AAAAP8AAAA9VVVVVVVVVVXwAAAA/wAAAD1VVVVVVVVVVfAAAAD/AAAAPVVVVVVVVVVV8AAAAP8AAAAPVVVVVVVVVVXwAAAA/wAAAA9VVVVVVVVVVfAAAAD/AAAAD1VVVVVVVVVXwAAAAP8AAAAPVVVVVVVVVVfAAAAA/wAAAA9VVVVVVVVVV8AAAAD/AAAAD1VVVVVVVVVXwAAAA98AAAAPVVVVVVVVVVfAAAAD3wAAAAPVVVVVVVVVV8AAAAPfAAAAA9VVVVVVVVVXwAAAA98AAAAD1VVVVVVVVV8AAAAD18AAAAPVVVVVVVVVXwAAAAPXwAAAA9VVVVVVVVVfAAAAD1fAAAAA9VVVVVVVVV8AAAAPV8AAAAD1VVVVVVVVfAAAAA9XwAAAAPVVVVVVVVV8AAAAD1XwAAAAPVVVVVVVVXwAAAAPVfAAAAA9VVVVVVVV8AAAAD1V8AAAAA9VVVVVVVXwAAAAPVV8AAAAD1VVVVVVV8AAAAA9VXwAAAAD1VVVVVVXwAAAAPVVfAAAAAPVVVVVVV8AAAAA9VVfAAAAAPVVVVVVfAAAAAPVVV8AAAAAPVVVVVXwAAAAA9VVV8AAAAAP1VVVV8AAAAAD1VVXwAAAAAP9VVV/AAAAAA9VVVXwAAAAAD/1X/wAAAAAD1VVVfAAAAAAA///wAAAAAA9VVVVfAAAAAAAD/AAAAAAAPVVVVV8AAAAAAAAAAAAAAAA9VVVVV8AAAAAAAAAAAAAAAPVVVVVV8AAAAAAAAAAAAAAD1VVVVVV8AAAAAAAAAAAAAAPVVVVVVXwAAAAAAAAAAAAAD1VVVVVVXwAAAAAAAAAAAAA9VVVVVVVX8AAAAAAAAAAAAPVVVVVVVVX8AAAAAAAAAAAP1VVVVVVVVV/AAAAAAAAAAD9VVVVVVVVVV/AAAAAAAAAD9VVVVVVVVVVVf8AAAAAAAP/VVVVVVVVVVVVf/wAAAAA//VVVVVVVVVVVVVV///////9VVVVVVVVVVVVVVVX/////1VVVVVVVV" },
|
||||||
|
{"width" : "37", "buffer":"VVVVVVVVX/1VVVVVVVVV///9VVVVVVVV/wA/1VVVVVVX8AAAPVVVVVVX8AAAA9VVVVVfwAAAAPVVVVVfwAAAAD1VVVV/AAAAAA9VVVV/AAAAAAPVVVX8AAAAAAD1VVX8AAAAAAA9VVfwAAAAAAAPVVfwAAAAAAAD1V/AAAAAAAAA9V/AAAAAAAAAPV8AAAAAAAAAD18AAAAAAAAAA98AAAAAAAAAAPfAAAAAAAAAAD3wAAAAAAAAAA/wAAAAAAAAAAP8AAAAAAAAAAD3wAAAAAAAAAA98AAAADAAAAAPfAAAAP8AAAAD3wAAAP3wAAAA9fAAA/V8AAAAPV/wD/VfAAAAD1X//9VXwAAAA9VV/1VV8AAAAPVVVVVVfAAAAD1VVVVVXwAAAA9VVVVVV8AAAAPVVVVVVfAAAAD1VVVVVXwAAAA9VVVVVV8AAAAPVVVVVVfAAAAD1VVVVVXwAAAA9VVVVVV8AAAAPVVVVVVfAAAAD1VVVVVXwAAAA9VVVVVV8AAAAPVVVVVVfAAAAD1VVVVVXwAAAA9VVVVVV8AAAAPVVVVVVfAAAAD1VVVVVXwAAAA9VVVVVV8AAAAPVVVVVVfAAAAD1VVVVVXwAAAA9VVVVVV8AAAAPVVVVVVfAAAAD1VVVVVXwAAAA9VVVVVV8AAAAPVVVVVVfAAAAD1VVVVVXwAAAA9VVVVVV8AAAAPVVVVVVfAAAAD1VVVVVXwAAAA9VVVVVV8AAAAPVVVVVVfAAAAD1VVVVVXwAAAA9VVVVVV8AAAAPVVVVVVfAAAAD1VVVVVXwAAAA9VVVVVV8AAAAPVVVVVVfAAAAD1VVVVVXwAAAA9VVVVVV8AAAAPVVVVVVfAAAAD1VVVVVXwAAAA9VVVVVV8AAAAPVVVVVVfAAAAD1VVVVVXwAAAA9VVVVVV8AAAAPVVVVVVfAAAAD1VVVVVXwAAAA9VVVVVV8AAAAPVVVVVVfAAAAD1VVVVVXwAAAA9VVVVVVfAAAAPVVVVVVXwAAAD1VVVVVV8AAAA9VVVVVVfAAAAPVVVVVVXwAAAD1VVVVVVfAAAD1VVVVVVV8AAP1VVVVVVVX///1VVVVVVVVf//VVVVVVVVVVVVVVA=" },
|
||||||
|
{"width" : "59", "buffer":"VVVVVVX//////VVVVVVVVVVVVf///////9VVVVVVVVVVf/AAAAAAP/VVVVVVVVVf8AAAAAAAA/1VVVVVVVX8AAAAAAAAAP1VVVVVVX8AAAAAAAAAAD1VVVVVV/AAAAAAAAAAAD1VVVVVfAAAAAAAAAAAAD1VVVVXwAAAAAAAAAAAAD1VVVX8AAAAAAAAAAAAAD1VVV/AAAAAAAAAAAAAAD1VVXwAAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAAAAPVVfAAAAAAD//8AAAAAA9VXwAAAAAD////AAAAAA9VfAAAAAA/VVV/AAAAAD1XwAAAAA/VVVVfAAAAAD1fAAAAAP1VVVVfAAAAAPV8AAAAD1VVVVVfAAAAA9XwAAAA9VVVVVVfAAAAA9fAAAAPVVVVVVV8AAAAD1fAAAD1VVVVVVV8AAAAPV8AAA9VVVVVVVXwAAAA9V8AAP1VVVVVVVXwAAAD1V///9VVVVVVVVfAAAAPVV//9VVVVVVVVV8AAAA9VVVVVVVVVVVVVXwAAAD1VVVVVVVVVVVVVfAAAAPVVVVVVVVVVVVVV8AAAA9VVVVVVVVVVVVVXwAAAD1VVVVVVVVVVVVVfAAAAPVVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVV8AAAA9VVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVXwAAAAD1VVVVVVVVVVVV8AAAAA9VVVVVVVVVVVVXwAAAAD1VVVVVVVVVVVV8AAAAA9VVVVVVVVVVVVfAAAAAD1VVVVVVVVVVVXwAAAAA9VVVVVVVVVVVV8AAAAAPVVVVVVVVVVVVfAAAAAA9VVVVVVVVVVVXwAAAAAPVVVVVVVVVVVV8AAAAAA9VVVVVVVVVVVfAAAAAAPVVVVVVVVVVVXwAAAAAD1VVVVVVVVVVV8AAAAAA9VVVVVVVVVVVXwAAAAAD1VVVVVVVVVVV8AAAAAA9VVVVVVVVVVVfAAAAAAPVVVVVVVVVVVXwAAAAAD1VVVVVVVVVVV8AAAAAA9VVVVVVVVVVVfAAAAAAPVVVVVVVVVVVXwAAAAAD1VVVVVVVVVVV8AAAAAA9VVVVVVVVVVVfAAAAAAPVVVVVVVVVVVXwAAAAAD1VVVVVVVVVVV8AAAAAA9VVVVVVVVVVVfAAAAAAD1VVVVVVVVVVXwAAAAAA9VVVVVVVVVVV8AAAAAAPVVVVVVVVVVVfAAAAAAD1VVVVVVVVVVV8AAAAAA9VVVVVVVVVVVfAAAAAAPVVVVVVVVVVVXwAAAAAD1VVVVVVVVVVV8AAAAAA9VVVVVVVVVVVfAAAAAAPVVVVVVVVVVVXwAAAAAAP////////9VV8AAAAAAAP////////9VfAAAAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAD3wAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAAAAD3wAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAAAD1V/////////////////9VVf////////////////VVVVVVVVVVVVVVVVVVVVVA=" },
|
||||||
|
{"width" : "58", "buffer":"VVVVVVVVVVVVVVVVVVVVX///////////////VVVX////////////////VVXwAAAAAAAAAAAAAAD9VXwAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAPVX8AAAAAAAAAAAAAAAPVVf/wAAAAAAAAAAAAAD1VVf///////8AAAAAAD1VVVV///////wAAAAAD1VVVVVVVVVVVfAAAAAD1VVVVVVVVVVVfAAAAAD1VVVVVVVVVVVfAAAAAD1VVVVVVVVVVVfAAAAAD1VVVVVVVVVVVfAAAAAD1VVVVVVVVVVVfAAAAAD1VVVVVVVVVVVfAAAAAD1VVVVVVVVVVVXwAAAAA9VVVVVVVVVVVXwAAAAA9VVVVVVVVVVVXwAAAAA9VVVVVVVVVVVXwAAAAA9VVVVVVVVVVVXwAAAAA9VVVVVVVVVVVXwAAAAA9VVVVVVVVVVVXwAAAAA9VVVVVVVVVVVXwAAAAA9VVVVVVVVVVVXwAAAAAD1VVVVVVVVVVXwAAAAAAP/VVVVVVVVVXwAAAAAAA//VVVVVVVVXwAAAAAAAAD/VVVVVVVXwAAAAAAAAAD9VVVVVVV8AAAAAAAAAAD1VVVVVV8AAAAAAAAAAAP1VVVVVfAAAAAAAAAAAA9VVVVVXwAAAAAAAAAAAD1VVVVXwAAAAAAAAAAAAPVVVVV8AAAAAAAAAAAAA9VVVVXwAAAAAAAAAAAAD1VVVV8AAAAAAAAAAAAA9VVVVfAAAAAAAAAAAAAD1VVVV8AAA///wAAAAAA9VVVVf8A/////wAAAAAD1VVVV///9VVV/wAAAAA9VVVVVf9VVVVV/AAAAAPVVVVVVVVVVVVV8AAAAA9VVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVfAAAAPVVVVVVVVVVVVVXwAAAD1VVVVVVVVVVVVV8AAAA9VVVVVVVVVVVVVfAAAAPVVVVVVVVVVVVVXwAAAD1VVVVVVVVVVVVV8AAAA9VVVVVVVVVVVVVfAAAAPVVVVVVVVVVVVVXwAAAD1VVVVVVVVVVVVV8AAAA9VVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVfAAAAPVVVVVVVVVVVVVXwAAAD1VVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVV8AAAAPVVf//VVVVVVVV8AAAAPVVf//9VVVVVVV8AAAAD1VfAAD9VVVVVV8AAAAA9VfAAAP9VVVVX8AAAAA9VXwAAAP9VVVX8AAAAAPVXwAAAAP/9X/wAAAAAPVV8AAAAAP///wAAAAAD1VfAAAAAAAPwAAAAAAD1VXwAAAAAAAAAAAAAAD1VV8AAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAD9VVVfAAAAAAAAAAAAAD9VVVXwAAAAAAAAAAAAP1VVVVfwAAAAAAAAAAAP1VVVVV/wAAAAAAAAAD/VVVVVVV/8AAAAAAAAP/VVVVVVVV//AAAAAAP/1VVVVVVVVVf////////VVVVVVVVVVVX//////VVVVVVVV" },
|
||||||
|
{"width" : "71", "buffer":"VVVVVVVVVVVVVVVf/VVVVVVVVVVVVVVVVVVVVVf//1VVVVVVVVVVVVVVVVVVVf8AP1VVVVVVVVVVVVVVVVVVX8AAD1VVVVVVVVVVVVVVVVVV8AAAD1VVVVVVVVVVVVVVVVVXwAAAPVVVVVVVVVVVVVVVVVV8AAAA9VVVVVVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVVVVXwAAAAD1VVVVVVVVVVVVVVVV8AAAAAPVVVVVVVVVVVVVVVVXwAAAAA9VVVVVVVVVVVVVVVV8AAAAAD1VVVVVVVVVVVVVVVfAAAAAAPVVVVVVVVVVVVVVVXwAAAAAA9VVVVVVVVVVVVVVV8AAAAAAD1VVVVVVVVVVVVVVXwAAAAAAPVVVVVVVVVVVVVVV8AAAAAAA9VVVVVVVVVVVVVVfAAAAAAAD1VVVVVVVVVVVVVXwAAAAAAAPVVVVVVVVVVVVVV8AAAAAAAA9VVVVVVVVVVVVVfAAAAAAAAD1VVVVVVVVVVVVV8AAAAAAAAPVVVVVVVVVVVVVfAAAAAAAAA9VVVVVVVVVVVVXwAAAAAAAAD1VVVVVVVVVVVV8AAAAAAAAAPVVVVVVVVVVVVfAAAAAAAAAA9VVVVVVVVVVVV8AAAAAAAAAD1VVVVVVVVVVVfAAAAAwAAAAPVVVVVVVVVVVXwAAAAPwAAAA9VVVVVVVVVVV8AAAAD3wAAAD1VVVVVVVVVVfAAAAAPfAAAAPVVVVVVVVVVV8AAAAD18AAAA9VVVVVVVVVVfAAAAA9XwAAAD1VVVVVVVVVXwAAAAPVfAAAAPVVVVVVVVVV8AAAAD1V8AAAA9VVVVVVVVVfAAAAAPVXwAAAD1VVVVVVVVXwAAAAD1VfAAAAPVVVVVVVVVfAAAAA9VV8AAAA9VVVVVVVVXwAAAAPVVXwAAAD1VVVVVVVV8AAAAD1VVfAAAAPVVVVVVVVfAAAAA9VVV8AAAA9VVVVVVVXwAAAAD1VVXwAAAD1VVVVVVVfAAAAA9VVVfAAAAPVVVVVVVXwAAAAPVVVV8AAAA9VVVVVVV8AAAAD1VVVXwAAAD1VVVVVVfAAAAA9VVVVfAAAAPVVVVVVXwAAAAD1VVVV8AAAA9VVVVVV8AAAAA9VVVVXwAAAD1VVVVVXwAAAAPVVVVVfAAAAPVVVVVV8AAAAD1VVVVV8AAAA9VVVVVfAAAAAD//////AAAAA///1VXwAAAAAD/////wAAAAA///9V8AAAAAAAAAAAAAAAAAAAAD9XwAAAAAAAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAAAAAAAAD3wAAAAAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAAAAAAAD1V/wAAAAAAAAAAAAAAAAAAP9VV////////////AAAAAD///VVVX///////////AAAAA//9VVVVVVVVVVVVVVVfAAAAPVVVVVVVVVVVVVVVVVV8AAAA9VVVVVVVVVVVVVVVVVXwAAAD1VVVVVVVVVVVVVVVVVfAAAAPVVVVVVVVVVVVVVVVVV8AAAA9VVVVVVVVVVVVVVVVVXwAAAD1VVVVVVVVVVVVVVVVVfAAAAPVVVVVVVVVVVVVVVVVV8AAAA9VVVVVVVVVVVVVVVVVXwAAAD1VVVVVVVVVVVVVVVVVfAAAAPVVVVVVVVVVVVVVVVVV8AAAA9VVVVVVVVVVVVVVVVVXwAAAD1VVVVVVVVVVVVVVVVVfAAAAPVVVVVVVVVVVVVVVVVV8AAAA9VVVVVVVVVVVVVVVVVXwAAAD1VVVVVVVVVVVVVVVVVfAAAAPVVVVVVVVVVVVVVVVVV8AAAA9VVVVVVVVVVVVVVVVVXwAAAPVVVVVVVVVVVVVVVVVVXwAAA9VVVVVVVVVVVVVVVVVVfAAAPVVVVVVVVVVVVVVVVVVVfwAD9VVVVVVVVVVVVVVVVVVVf///VVVVVVVVVVVVVVVVVVVVX//VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVA=" },
|
||||||
|
{"width" : "58", "buffer":"VVVVVVVVVVVVVVVVVVVVVVf/////////////9VVVV///////////////1VVV/AAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAAAA9VVfAAAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAAAD9VXwAAAAAAAAAAAAAA/9VV8AAAA///////////1VVfAAAA//////////9VVVXwAAA9VVVVVVVVVVVVVXwAAAPVVVVVVVVVVVVVV8AAAD1VVVVVVVVVVVVVfAAAA9VVVVVVVVVVVVVXwAAAPVVVVVVVVVVVVVV8AAAPVVVVVVVVVVVVVVfAAAD1VVVVVVVVVVVVVXwAAA9VVVVVVVVVVVVVV8AAAPVVVVVVVVVVVVVV8AAAD1VVVVVVVVVVVVVfAAAA9VVVVVVVVVVVVVXwAAAPVVVVVVVVVVVVVV8AAAD1V////1VVVVVVVfAAAD1//////9VVVVVVXwAAAP/8AAAA//VVVVVV8AAAA8AAAAAAP/VVVVV8AAAAAAAAAAAAD/VVVVfAAAAAAAAAAAAAD9VVVXwAAAAAAAAAAAAAD1VVV8AAAAAAAAAAAAAAP1VVfAAAAAAAAAAAAAAA/VVXwAAAAAAAAAAAAAAD1VV8AAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAAA9VfAAAAAAP///AAAAAAD1V8AAAAA/////AAAAAAPVfAAAAD/VVVX8AAAAAD1V/AAA/9VVVVX8AAAAAPVX/wP/1VVVVVfwAAAAD1VX//9VVVVVVVfAAAAA9VVV/VVVVVVVVV8AAAAD1VVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVXwAAAD1VVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVXwAAAD1VVVVVVVVVVVVV8AAAA9VVVVVVVVVVVVVfAAAAPVVVVVVVVVVVVVXwAAAD1VVVVVVVVVVVVV8AAAA9VVVVVVVVVVVVVfAAAAPVVVVVVVVVVVVVXwAAAD1VVVVVVVVVVVVV8AAAA9VVVVVVVVVVVVVfAAAAPVVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVV8AAAA9VVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVfAAAAA9VV/VVVVVVVVVfAAAAA9Vf//1VVVVVVVfAAAAAPVf8D/1VVVVVVfAAAAAD1fAAA/VVVVVV/AAAAAD1XwAAA/VVVVX/AAAAAA9XwAAAD/1VV/8AAAAAA9V8AAAAD////wAAAAAAPVfAAAAAA//8AAAAAAAPVXwAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAAAD1VV8AAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAP1VVV8AAAAAAAAAAAAAP1VVVXwAAAAAAAAAAAA/VVVVV/AAAAAAAAAAAA/VVVVVV/AAAAAAAAAAP9VVVVVVX/wAAAAAAAA/9VVVVVVVX/8AAAAAA//VVVVVVVVVV////////9VVVVVVVVVVVf/////9VVVVVVVV" },
|
||||||
|
{"width" : "60", "buffer":"VVVVVVVVVVVVf//VVVVVVVVVVVVVVVVf///9VVVVVVVVVVVVVVf/wAA/VVVVVVVVVVVVVX/wAAAD1VVVVVVVVVVVV/wAAAAD1VVVVVVVVVVVf8AAAAAD1VVVVVVVVVVV/AAAAAAA9VVVVVVVVVVfwAAAAAAA9VVVVVVVVVV/AAAAAAAA9VVVVVVVVVXwAAAAAAAD1VVVVVVVVVfAAAAAAAAD1VVVVVVVVX8AAAAAAAAD1VVVVVVVVfwAAAAAAAAPVVVVVVVVV8AAAAAAAAA9VVVVVVVVV8AAAAAAAA/1VVVVVVVVXwAAAAAAAP/VVVVVVVVVfAAAAAAAP/VVVVVVVVVV8AAAAAAD/1VVVVVVVVVXwAAAAAA/1VVVVVVVVVVXwAAAAAD9VVVVVVVVVVVfAAAAAAPVVVVVVVVVVVV8AAAAAD9VVVVVVVVVVVV8AAAAAP1VVVVVVVVVVVXwAAAAA9VVVVVVVVVVVVfAAAAAD1VVVVVVVVVVVVfAAAAAPVVVVVVVVVVVVV8AAAAA9VVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVfAAAAD1X///1VVVVVVVVfAAAAPX/////9VVVVVVVfAAAAD/8AAAP/1VVVVVV8AAAAA8AAAAAD/VVVVVV8AAAAAAAAAAAAP1VVVVV8AAAAAAAAAAAAA/VVVVXwAAAAAAAAAAAAAP1VVVXwAAAAAAAAAAAAAA9VVVXwAAAAAAAAAAAAAAPVVVfAAAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAAA9VVfAAAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAAPVVfAAAAAAAADwAAAAAAD1VfAAAAAAAP//8AAAAAA9V8AAAAAAD/9f/wAAAAA9V8AAAAAAP1VVX8AAAAAPV8AAAAAA9VVVVfAAAAAPV8AAAAAD1VVVVXwAAAAD18AAAAAPVVVVVV8AAAAD18AAAAA9VVVVVVfAAAAD18AAAAD1VVVVVVXwAAAA98AAAAD1VVVVVVXwAAAA98AAAAPVVVVVVVV8AAAA98AAAAPVVVVVVVV8AAAA98AAAA9VVVVVVVV8AAAAP8AAAA9VVVVVVVVfAAAAP8AAAA9VVVVVVVVfAAAAP8AAAA9VVVVVVVVfAAAAP8AAAA9VVVVVVVVfAAAAP8AAAA9VVVVVVVVfAAAAP8AAAA9VVVVVVVVfAAAAPfAAAA9VVVVVVVVfAAAAPfAAAA9VVVVVVVV8AAAAPfAAAAPVVVVVVVV8AAAA9fAAAAPVVVVVVVV8AAAA9fAAAAPVVVVVVVXwAAAA9XwAAAD1VVVVVVXwAAAA9XwAAAA9VVVVVVfAAAAA9V8AAAA9VVVVVV8AAAAD1V8AAAAP1VVVVXwAAAAD1V8AAAAD9VVVVfAAAAAD1VfAAAAAPVVVX8AAAAAPVVfAAAAAD/VV/wAAAAA9VVXwAAAAA///8AAAAAA9VVV8AAAAAA//AAAAAAD1VVV8AAAAAAAAAAAAAAD1VVVfAAAAAAAAAAAAAAPVVVVXwAAAAAAAAAAAAA9VVVVXwAAAAAAAAAAAAD1VVVVV8AAAAAAAAAAAAP1VVVVVfAAAAAAAAAAAA9VVVVVVX8AAAAAAAAAAD1VVVVVVV/AAAAAAAAAA/VVVVVVVVX8AAAAAAAAP9VVVVVVVVV/wAAAAAAD/VVVVVVVVVVX/wAAAAD/1VVVVVVVVVVVf//////9VVVVVVVVVVVVVf////9VVVVVVV" },
|
||||||
|
{"width" : "60", "buffer":"VVVVVVVVVVVVVVVVVVVVVX////////////////1VV//////////////////VX8AAAAAAAAAAAAAAAAP1fAAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAAA9X/AAAAAAAAAAAAAAAAA9Vf///////////AAAAAD1VV///////////wAAAAD1VVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVVXwAAAD1VVVVVVVVVVVVVXwAAAPVVVVVVVVVVVVVVXwAAAPVVVVVVVVVVVVVVXwAAA9VVVVVVVVVVVVVVV8AAA9VVVVVVVVVVVVVVVfwAP1VVVVVVVVVVVVVVVX///VVVVVVVVVVVVVVVVVf/1VVVVVVVVVVVV" },
|
||||||
|
{"width" : "60", "buffer":"VVVVVVVVf//1VVVVVVVVVVVVVVV//////VVVVVVVVVVVVV//wAAP/9VVVVVVVVVVVf/AAAAAA/1VVVVVVVVVX/AAAAAAAD/VVVVVVVVVfwAAAAAAAAP9VVVVVVVX8AAAAAAAAAA/VVVVVVVfwAAAAAAAAAAD1VVVVVV8AAAAAAAAAAAA9VVVVVXwAAAAAAAAAAAAPVVVVVfAAAAAAAAAAAAAD1VVVV8AAAAAAAAAAAAAA9VVVV8AAAAAAAAAAAAAA9VVVXwAAAAAAAAAAAAAAPVVVXwAAAAAD//AAAAAAPVVVfAAAAAA///8AAAAAD1VV8AAAAAP9VV/wAAAAD1VV8AAAAA/VVVX8AAAAA9VV8AAAAD1VVVVfAAAAA9VV8AAAAPVVVVVXwAAAAPVXwAAAA9VVVVVV8AAAAPVXwAAAA9VVVVVV8AAAAPVXwAAAD1VVVVVVfAAAAPVXwAAAD1VVVVVVfAAAAPVXwAAAD1VVVVVVfAAAAPVXwAAAD1VVVVVVfAAAAPVXwAAAD1VVVVVVfAAAAPVXwAAAD1VVVVVVfAAAAPVXwAAAD1VVVVVVfAAAAPVXwAAAD1VVVVVVfAAAAPVXwAAAD1VVVVVVfAAAAPVXwAAAA9VVVVVV8AAAAPVV8AAAA9VVVVVV8AAAAPVV8AAAAPVVVVVXwAAAA9VV8AAAAD1VVVVfAAAAA9VVfAAAAA/VVVX8AAAAD1VVfAAAAAP9VV/wAAAAD1VVXwAAAAA///8AAAAAPVVVV8AAAAAD//AAAAAA9VVVVfAAAAAAAAAAAAAD1VVVVXwAAAAAAAAAAAAPVVVVVV8AAAAAAAAAAAA9VVVVVVfAAAAAAAAAAAD1VVVVVVfAAAAAAAAAAAD1VVVVVX8AAAAAAAAAAAA9VVVVVfwAAAAAAAAAAAAP1VVVV8AAAAAAAAAAAAAD9VVVXwAAAAAAAAAAAAAAPVVVfAAAAAAAPwAAAAAAPVVVfAAAAAA///8AAAAAD1VV8AAAAAP/1f/wAAAAA9VXwAAAAA/VVVX/AAAAAPVXwAAAAD1VVVVfwAAAAPVfAAAAAPVVVVVV8AAAAD1fAAAAA9VVVVVVfAAAAD18AAAAD1VVVVVVfAAAAD18AAAAPVVVVVVVXwAAAA98AAAA9VVVVVVVV8AAAA98AAAA9VVVVVVVV8AAAA98AAAA9VVVVVVVV8AAAA98AAAA9VVVVVVVVfAAAAP8AAAA9VVVVVVVVfAAAAP8AAAA9VVVVVVVVfAAAAP8AAAA9VVVVVVVV8AAAAP8AAAA9VVVVVVVV8AAAAP8AAAA9VVVVVVVV8AAAA98AAAA9VVVVVVVV8AAAA98AAAAPVVVVVVVXwAAAA98AAAAD1VVVVVVfAAAAA98AAAAA9VVVVVVfAAAAA9fAAAAAPVVVVVX8AAAAD1fAAAAAD1VVVVfwAAAAD1XwAAAAA/VVVX8AAAAAPVXwAAAAAP/VX/wAAAAAPVV8AAAAAA///8AAAAAA9VV8AAAAAAA/8AAAAAAA9VVfAAAAAAAAAAAAAAAD1VVXwAAAAAAAAAAAAAAPVVVV8AAAAAAAAAAAAAAPVVVV8AAAAAAAAAAAAAA9VVVVfwAAAAAAAAAAAAP1VVVVX8AAAAAAAAAAAA/VVVVVVfAAAAAAAAAAAD1VVVVVVX8AAAAAAAAAA/VVVVVVVV/wAAAAAAAAP9VVVVVVVVX/wAAAAAAD/VVVVVVVVVVf/wAAAAP/1VVVVVVVVVVVf//////9VVVVVVVVVVVVVf////1VVVVVVVVVVVVVVVVVVVVVVVVVVV" },
|
||||||
|
{"width" : "60", "buffer":"VVVVVVf//////1VVVVVVVVVVVX////////VVVVVVVVVVV/wAAAAAAP9VVVVVVVVVf8AAAAAAAA/1VVVVVVVV/AAAAAAAAAD9VVVVVVVXwAAAAAAAAAAPVVVVVVVfAAAAAAAAAAAD1VVVVVX8AAAAAAAAAAAA9VVVVVXwAAAAAAAAAAAAPVVVVVfAAAAAAAAAAAAAD1VVVV8AAAAAAAAAAAAAA9VVVXwAAAAAAAAAAAAAA9VVVXwAAAAAAP8AAAAAAPVVVfAAAAAAP//8AAAAAD1VV8AAAAAD/1X/wAAAAD1VV8AAAAAP1VVX8AAAAA9VXwAAAAA9VVVVfAAAAA9VXwAAAAD1VVVVXwAAAAPVXwAAAAPVVVVVV8AAAAPVfAAAAA9VVVVVVfAAAAD1fAAAAD1VVVVVVXwAAAD1fAAAAPVVVVVVVXwAAAD18AAAAPVVVVVVVV8AAAA98AAAAPVVVVVVVV8AAAA98AAAA9VVVVVVVV8AAAA98AAAA9VVVVVVVVfAAAA98AAAA9VVVVVVVVfAAAA98AAAA9VVVVVVVVfAAAAP8AAAA9VVVVVVVVfAAAAP8AAAA9VVVVVVVVfAAAAP8AAAA9VVVVVVVVfAAAAP8AAAA9VVVVVVVVfAAAAP8AAAA9VVVVVVVV8AAAAP8AAAAPVVVVVVVV8AAAAP8AAAAPVVVVVVVV8AAAAPfAAAAPVVVVVVVXwAAAAPfAAAAD1VVVVVVfAAAAAPfAAAAD1VVVVVVfAAAAAPfAAAAA9VVVVVV8AAAAAPfAAAAAPVVVVVXwAAAAAPXwAAAAD1VVVVfAAAAAA9XwAAAAA/VVVX8AAAAAA9V8AAAAAP////wAAAAAA9V8AAAAAA///8AAAAAAA9V8AAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAAD1VVXwAAAAAAAAAAAAAAD1VVV8AAAAAAAAAAAAAAD1VVVfwAAAAAAAAAAAAAPVVVVX/AAAAAAAAAAAAAPVVVVVf8AAAAAAPAAAAAPVVVVVV/8AAAAD/wAAAA9VVVVVVX//////18AAAA9VVVVVVVX////9XwAAAA9VVVVVVVVVVVVVXwAAAD1VVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVfAAAAAPVVVVVVVVVVVVV8AAAAA9VVVVVVVVVVVVV8AAAAA9VVVVVVVVVVVVfwAAAAD1VVVVVVVVVVVV/AAAAAD1VVVVVVVVVVVXwAAAAAPVVVVVVVVVVVVfAAAAAA9VVVVVVVVVVVV8AAAAAA9VVVVVVVVVVVfwAAAAAD1VVVVVVVVVVX/AAAAAAPVVVVVVVVVVV/wAAAAAAPVVVVVVVVVVf8AAAAAAA9VVVVVVVVVf/AAAAAAAD1VVVVVVVVX/wAAAAAAAPVVVVVVVVVfwAAAAAAAA9VVVVVVVVV8AAAAAAAAD1VVVVVVVVXwAAAAAAAAPVVVVVVVVVXwAAAAAAAA9VVVVVVVVVfAAAAAAAAD1VVVVVVVVVfAAAAAAAAPVVVVVVVVVVfAAAAAAAD9VVVVVVVVVVfAAAAAAA/1VVVVVVVVVVfAAAAAAP9VVVVVVVVVVVXwAAAAD/VVVVVVVVVVVVXwAAAA/1VVVVVVVVVVVVV8AAA/9VVVVVVVVVVVVVVf////VVVVVVVVVVVVVVVX///VVVVVVVVVVVV" },
|
||||||
|
{"width" : "18", "buffer":"VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf//9VV////1XwAAD9fAAAAPfAAAAP8AAAAP8AAAAP8AAAAP8AAAAP8AAAAP8AAAAP8AAAAP8AAAAP8AAAAPfAAAAPfwAAA9X/wA/1Vf///VVVf/VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//1VV////VX/AAP1fAAAA9fAAAAP8AAAAP8AAAAP8AAAAP8AAAAP8AAAAP8AAAAP8AAAAP8AAAAP8AAAAPfAAAAPfAAAAPXwAAD9V////1Vf//9VVVVVVV" }
|
||||||
|
]
|
||||||
|
}
|
|
@ -0,0 +1,17 @@
|
||||||
|
{
|
||||||
|
"name":"SairaCond",
|
||||||
|
"size":"98",
|
||||||
|
"characters":[
|
||||||
|
{"width" : "61", "buffer":"VVVVf///////////VVVVVVVV/////////////VVVVVVX/AAAAAAAAAAAD/VVVVVX8AAAAAAAAAAAAD9VVVVXwAAAAAAAAAAAAAD1VVVXwAAAAAAAAAAAAAAPVVVXwAAAAAAAAAAAAAAA9VVV8AAAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAAAAA9VVfAAAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAAA9XwAAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAAAD18AAAAAAAA/8AAAAAAAA9fAAAAAAAA//wAAAAAAAD3wAAAAAAA9VfAAAAAAAA98AAAAAAAPVV8AAAAAAAP8AAAAAAAPVVfAAAAAAAD/AAAAAAAD1VXwAAAAAAA/wAAAAAAA9VV8AAAAAAAP8AAAAAAAPVVfAAAAAAAD/AAAAAAAD1VXwAAAAAAA/wAAAAAAA9VV8AAAAAAAP8AAAAAAAPVVfAAAAAAAD/AAAAAAAD1VXwAAAAAAA/wAAAAAAA9VV8AAAAAAAP8AAAAAAAPVVfAAAAAAAD/AAAAAAAD1VXwAAAAAAA/wAAAAAAA9VV8AAAAAAAP8AAAAAAAPVVfAAAAAAAD/AAAAAAAD1VXwAAAAAAA/wAAAAAAA9VV8AAAAAAAP8AAAAAAAPVVfAAAAAAAD/AAAAAAAD1VXwAAAAAAA/wAAAAAAA9VV8AAAAAAAP8AAAAAAAPVVfAAAAAAAD/AAAAAAAD1VXwAAAAAAA/wAAAAAAA9VV8AAAAAAAP8AAAAAAAPVVfAAAAAAAD/AAAAAAAD1VXwAAAAAAA/wAAAAAAA9VV8AAAAAAAP8AAAAAAAPVVfAAAAAAAD/AAAAAAAD1VXwAAAAAAA/wAAAAAAA9VV8AAAAAAAP8AAAAAAAPVVfAAAAAAAD/AAAAAAAD1VXwAAAAAAA/wAAAAAAA9VV8AAAAAAAP8AAAAAAAPVVfAAAAAAAD/AAAAAAAD1VXwAAAAAAA/wAAAAAAA9VV8AAAAAAAP8AAAAAAAPVVfAAAAAAAD/AAAAAAAD1VXwAAAAAAA/wAAAAAAA9VV8AAAAAAAP8AAAAAAAPVVfAAAAAAAD/AAAAAAAD1VXwAAAAAAA/wAAAAAAA9VV8AAAAAAAP8AAAAAAAPVVfAAAAAAAD/AAAAAAAD1VXwAAAAAAA/wAAAAAAA9VV8AAAAAAAP8AAAAAAAPVVfAAAAAAAD/AAAAAAAD1VXwAAAAAAA/wAAAAAAA9VV8AAAAAAAP8AAAAAAAPVVfAAAAAAAD/AAAAAAAD1VXwAAAAAAA/wAAAAAAA9VV8AAAAAAAP8AAAAAAAPVVfAAAAAAAD/AAAAAAAD1VXwAAAAAAA98AAAAAAAPVV8AAAAAAAPfAAAAAAAD1V8AAAAAAAD3wAAAAAAAP/8AAAAAAAD18AAAAAAAA/8AAAAAAAA9fAAAAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAAAD1VV8AAAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAAA9VVV8AAAAAAAAAAAAAAAPVVVXwAAAAAAAAAAAAAAPVVVVfwAAAAAAAAAAAAA/VVVVV/AAAAAAAAAAAAA/VVVVVV/wAAAAAAAAAAD9VVVVVVX////////////9VVVVVVVV///////////1VVVUA==" },
|
||||||
|
{"width" : "42", "buffer":"VVVVVVX///////VVVVVV////////VVVVVf8AAAAAAPVVVVX/AAAAAAAPVVVV/wAAAAAAAPVVVf8AAAAAAAAPVVX/AAAAAAAAAPVV/wAAAAAAAAAPVf8AAAAAAAAAAPX/AAAAAAAAAAAPfwAAAAAAAAAAAPfAAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAAAAAAAAAAP8AAAMAAAAAAAAP8AAD/AAAAAAAAP8AD/3wAAAAAAAP8D/9XwAAAAAAAP8/9VXwAAAAAAAPf9VVXwAAAAAAAPfVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVXwAAAAAAAPVVVVX/////////VVVVV/////////" },
|
||||||
|
{"width" : "59", "buffer":"Vf/////////////1VVVVf//////////////9VVVV8AAAAAAAAAAAAAD/VVVXwAAAAAAAAAAAAAA/VVVfAAAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAAAAPVVXwAAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAAAAA9XwAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAAAA9XwAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAD1/////////wAAAAAAAAPX/////////wAAAAAAAA9VVVVVVVVVXwAAAAAAAD1VVVVVVVVVXwAAAAAAAPVVVVVVVVVVfAAAAAAAA9VVVVVVVVVV8AAAAAAAD1VVVVVVVVVXwAAAAAAAPVVVVVVVVVVXwAAAAAAA9VVVVVVVVVVfAAAAAAAD1VVVVVVVVVV8AAAAAAAPVVVVVVVVVVfAAAAAAAA9VVVVVVVVVV8AAAAAAAD1VVVVVVVVVXwAAAAAAAPVVVVVVVVVVfAAAAAAAA9VVVVVVVVVV8AAAAAAAD1VVVVVVVVVfAAAAAAAAPVVVVVVVVVXwAAAAAAAA9VVVVVVVVX8AAAAAAAAD1VVVVVVVX/AAAAAAAAAPVVVVVVVV/AAAAAAAAAD1VVVVVVV/AAAAAAAAAAPVVVVVVV/wAAAAAAAAAA9VVVVVV/wAAAAAAAAAAD1VVVVV/wAAAAAAAAAAA9VVVVV/wAAAAAAAAAAAD1VVVV/wAAAAAAAAAAAAPVVVV/wAAAAAAAAAAAAD1VVVfwAAAAAAAAAAAAAPVVVfwAAAAAAAAAAAAAD1VVX8AAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAAAD1VVXwAAAAAAAAAAAAAA9VVV8AAAAAAAAAAAAAAPVVVfAAAAAAAAAAAAAAP1VVV8AAAAAAAAAAAAAP9VVVXwAAAAAAAAAAAAP9VVVV8AAAAAAAAAAAAP9VVVVXwAAAAAAAAAAAP9VVVVVfAAAAAAAAAAAP9VVVVVV8AAAAAAAAAAP9VVVVVVfAAAAAAAAAAP9VVVVVVV8AAAAAAAAAP9VVVVVVVXwAAAAAAAAP9VVVVVVVVfAAAAAAAAD9VVVVVVVVV8AAAAAAAA9VVVVVVVVVXwAAAAAAAPVVVVVVVVVVfAAAAAAAD1VVVVVVVVVV8AAAAAAAPVVVVVVVVVVXwAAAAAAA9VVVVVVVVVVfAAAAAAAD1VVVVVVVVVXwAAAAAAAPVVVVVVVVVVfAAAAAAAA9VVVVVVVVVV8AAAAAAAD1VVVVVVVVVXwAAAAAAAPVVVVVVVVVVfAAAAAAAA9VVVVVVVVVV8AAAAAAAA//////////3wAAAAAAAA///////////AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAP///////////////////////////////////////w" },
|
||||||
|
{"width" : "59", "buffer":"V//////////////VVVVV///////////////1VVVXwAAAAAAAAAAAAAP9VVVfAAAAAAAAAAAAAAD9VVV8AAAAAAAAAAAAAAA/VVXwAAAAAAAAAAAAAAA/VVfAAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAAAA9XwAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAPX/////////AAAAAAAAA9f/////////AAAAAAAAD1VVVVVVVVVfAAAAAAAAPVVVVVVVVVVfAAAAAAAA9VVVVVVVVVV8AAAAAAAD1VVVVVVVVVXwAAAAAAAPVVVVVVVVVVXwAAAAAAA9VVVVVVVVVVfAAAAAAAD1VVVVVVVVVV8AAAAAAAPVVVVVVVVVVXwAAAAAAA9VVVVVVVVVVfAAAAAAAD1VVVVVVVVVV8AAAAAAAPVVVVVVVVVVXwAAAAAAA9VVVVVVVVVV8AAAAAAAD1VVVVVVVVVXwAAAAAAA9VVVVVVVVVVfAAAAAAAD1VVVVVVVVVXwAAAAAAAPVVVVf/////8AAAAAAAA9VVVX//////AAAAAAAAPVVVVfAAAAAAAAAAAAAA9VVVV8AAAAAAAAAAAAAPVVVVXwAAAAAAAAAAAAA9VVVVfAAAAAAAAAAAAAPVVVVV8AAAAAAAAAAAAD1VVVVXwAAAAAAAAAAAA9VVVVVfAAAAAAAAAAAA/VVVVVV8AAAAAAAAAAAP1VVVVVXwAAAAAAAAAAD1VVVVVVfAAAAAAAAAAAPVVVVVVV8AAAAAAAAAAAP1VVVVVXwAAAAAAAAAAAP9VVVVVfAAAAAAAAAAAAD9VVVVV8AAAAAAAAAAAAA9VVVVXwAAAAAAAAAAAAA9VVVVfAAAAAAAAAAAAAA9VVVV8AAAAAAAAAAAAAD1VVVXwAAAAAAAAAAAAAD1VVVfAAAAAAAAAAAAAAPVVVV//////wAAAAAAAA9VVVV//////wAAAAAAAA9VVVVVVVVVXwAAAAAAAD1VVVVVVVVVXwAAAAAAAPVVVVVVVVVVXwAAAAAAA9VVVVVVVVVVfAAAAAAAA9VVVVVVVVVV8AAAAAAAD1VVVVVVVVVXwAAAAAAAPVVVVVVVVVVfAAAAAAAA9VVVVVVVVVV8AAAAAAAD1VVVVVVVVVXwAAAAAAAPVVVVVVVVVVfAAAAAAAA9VVVVVVVVVV8AAAAAAAD1VVVVVVVVVXwAAAAAAAPVVVVVVVVVVfAAAAAAAA9VVVVVVVVVV8AAAAAAAD1VVVVVVVVVXwAAAAAAAPVVVVVVVVVV8AAAAAAAA9//////////AAAAAAAAD//////////wAAAAAAAAP8AAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAAAAD3wAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAA9XwAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAA/VV8AAAAAAAAAAAAAAAP1VXwAAAAAAAAAAAAAAP1VVf/AAAAAAAAAAAAA/9VVVf//////////////9VVVVVf////////////1VVVVQ" },
|
||||||
|
{"width" : "66", "buffer":"VVVVVX/////////VVVVVVVVVVVVf/////////VVVVVVVVVVVVfAAAAAAAAPVVVVVVVVVVVVfAAAAAAAAPVVVVVVVVVVVVfAAAAAAAA9VVVVVVVVVVVV8AAAAAAAA9VVVVVVVVVVVV8AAAAAAAA9VVVVVVVVVVVV8AAAAAAAD1VVVVVVVVVVVXwAAAAAAAD1VVVVVVVVVVVXwAAAAAAAD1VVVVVVVVVVVXwAAAAAAAPVVVVVVVVVVVVXwAAAAAAAPVVVVVVVVVVVVfAAAAAAAAPVVVVVVVVVVVVfAAAAAAAAPVVVVVVVVVVVVfAAAAAAAA9VVVVVVVVVVVVfAAAAAAAA9VVVVVVVVVVVV8AAAAAAAD1VVVVVVVVVVVV8AAAAAAAD1VVVVVVVVVVVV8AAAAAAAD1VVVVVVVVVVVXwAAAAAAAD1VVVVVVVVVVVXwAAAAAAAPVVVVVVVVVVVVXwAAAAAAAPVVVVVVVVVVVVXwAAAAAAAPVVVVVVVVVVVVfAAAAAAAA9VVVVVVVVVVVVfAAAAAAAA9VVVVVVVVVVVVfAAAAAAAA9VVVVVVVVVVVV8AAAAAAAD1VVVVVVVVVVVV8AAAAAAAD1VVVVVVVVVVVV8AAAAAAAD1VVVVVVVVVVVV8AAAAAAAPVVVVVVVVVVVVXwAAAAAAAPVVVVVVVVVVVVXwAAAAAAAPVVVVVVVVVVVVXwAAAAAAA9VVVVVVVVVVVVXwAAAAAAA9VVVVVVVVVVVVfAAAAAAAA9VVVVVVVVVVVVfAAAAAAAD1VVVVVVVVVVVVfAAAAAAAD1VVVVVVVVVVVV8AAAAAAAD1VVVVVVVVVVVV8AAAAAAAPVVf/////1VVVV8AAAAAAAPVV//////9VVVV8AAAAAAAPVV8AAAAA9VVVXwAAAAAAA9VV8AAAAA9VVVXwAAAAAAA9VXwAAAAA9VVVXwAAAAAAA9VXwAAAAA9VVVfAAAAAAAA9VfAAAAAA9VVVfAAAAAAAD1VfAAAAAA9VVVfAAAAAAAD1VfAAAAAA9VVVfAAAAAAAPVV8AAAAAA9VVVfAAAAAAAPVV8AAAAAA9VVV8AAAAAAAPVV8AAAAAA9VVV8AAAAAAAPVXwAAAAAA9VVXwAAAAAAA9VXwAAAAAA9VVXwAAAAAAA9VXwAAAAAA9VVXwAAAAAAA9VfAAAAAAA9VVXwAAAAAAD1VfAAAAAAA9VVfAAAAAAAD1V8AAAAAAA9VVfAAAAAAAD1V8AAAAAAA9VVfAAAAAAAPVXwAAAAAAA9VVfAAAAAAAD//AAAAAAAAP//8AAAAAAAA/8AAAAAAAAD//8AAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAAP//////////8AAAAAAAAD/////////////AAAAAAAAP//VVVVVVVVVVXwAAAAAAA9VVVVVVVVVVVVXwAAAAAAA9VVVVVVVVVVVVXwAAAAAAA9VVVVVVVVVVVVXwAAAAAAA9VVVVVVVVVVVVXwAAAAAAA9VVVVVVVVVVVVXwAAAAAAA9VVVVVVVVVVVVXwAAAAAAA9VVVVVVVVVVVVXwAAAAAAA9VVVVVVVVVVVVXwAAAAAAA9VVVVVVVVVVVVXwAAAAAAA9VVVVVVVVVVVVXwAAAAAAA9VVVVVVVVVVVVXwAAAAAAA9VVVVVVVVVVVVXwAAAAAAA9VVVVVVVVVVVVXwAAAAAAA9VVVVVVVVVVVVXwAAAAAAA9VVVVVVVVVVVVX////////9VVVVVVVVVVVVX////////9VV" },
|
||||||
|
{"width" : "59", "buffer":"f/////////////////VV//////////////////VXwAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAAA9VfAAAAAAAD/////////VV8AAAAAAA/////////1VXwAAAAAAPVVVVVVVVVVVfAAAAAAA9VVVVVVVVVVV8AAAAAAD1VVVVVVVVVVXwAAAAAAPVVVVVVVVVVVfAAAAAAA9VVVVVVVVVVV8AAAAAAD1VVVVVVVVVVXwAAAAAAPVVVVVVVVVVVfAAAAAAA9VVVVVVVVVVV8AAAAAAD1VVVVVVVVVVXwAAAAAAPVVVVVVVVVVVfAAAAAAA9Vf/1VVVVVVV8AAAAAAA//////VVVVVXwAAAAAAA/8AD//9VVVVfAAAAAAAAAAAAAP/VVVV8AAAAAAAAAAAAAA/1VVXwAAAAAAAAAAAAAAP1VVfAAAAAAAAAAAAAAAD1VV8AAAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAAAA9XwAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAD1/////////wAAAAAAAAPX/////////wAAAAAAAA9VVVVVVVVVXwAAAAAAAA9VVVVVVVVVXwAAAAAAAD1VVVVVVVVVfAAAAAAAAPVVVVVVVVVVfAAAAAAAA9VVVVVVVVVV8AAAAAAAD1VVVVVVVVVXwAAAAAAAPVVVVVVVVVVfAAAAAAAA9VVVVVVVVVV8AAAAAAAD1VVVVVVVVVXwAAAAAAAPVVVVVVVVVVfAAAAAAAA9VVVVVVVVVV8AAAAAAAD1VVVVVVVVVXwAAAAAAAPVVVVVVVVVVfAAAAAAAA9VVVVVVVVVV8AAAAAAAD1VVVVVVVVVXwAAAAAAAPVVVVVVVVVVfAAAAAAAA9VVVVVVVVVXwAAAAAAAPVVVVVVVVVVfAAAAAAAA9VVVVVVVVVXwAAAAAAAD3/////////8AAAAAAAAPf/////////AAAAAAAAA98AAAAAAAAAAAAAAAAAD3wAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAA9XwAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAD9VV8AAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAA/VVVf8AAAAAAAAAAAAA/1VVVf//////////////1VVVVV/////////////1VVVVQ" },
|
||||||
|
{"width" : "62", "buffer":"VVVVVV////////////1VVVVVVV//////////////VVVVVV/wAAAAAAAAAAAD/VVVVVfwAAAAAAAAAAAAA9VVVVfwAAAAAAAAAAAAAD1VVVX8AAAAAAAAAAAAAAPVVVV8AAAAAAAAAAAAAAA9VVVfAAAAAAAAAAAAAAAD1VVV8AAAAAAAAAAAAAAAPVVVfAAAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAAAPVVXwAAAAAAAAAAAAAAAA9VVfAAAAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAAAAD1V8AAAAAAAAD///////8PVXwAAAAAAAA/////////9VfAAAAAAAAPVVVVVVVV/VV8AAAAAAAD1VVVVVVVVVVXwAAAAAAA9VVVVVVVVVVV8AAAAAAAD1VVVVVVVVVVXwAAAAAAAPVVVVVVVVVVVfAAAAAAAD1VVVVVVVVVVV8AAAAAAAPVVVVVVVVVVVXwAAAAAAA9VVVVVVVVVVVfAAAAAAAD1VVVVVVVVVVV8AAAAAAAPVVVVVVVVVVVXwAAAAAAA9VVVVVVVVVVVfAAAAAAAD1VVX/9VVVVVV8AAAAAAAPVV/////1VVVXwAAAAAAA9V//AA//9VVVfAAAAAAAD1/wAAAAD/VVXwAAAAAAAPfwAAAAAA/1VfAAAAAAAAPwAAAAAAAP1V8AAAAAAAAMAAAAAAAAPVXwAAAAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAAAAA9XwAAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAAAAAD3wAAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAA/wAAAAAAAA//wAAAAAAAD/AAAAAAAAP//wAAAAAAAP8AAAAAAAD1VXwAAAAAAA/wAAAAAAAPVVfAAAAAAAD/AAAAAAAA9VVfAAAAAAAP8AAAAAAAD1VV8AAAAAAA/wAAAAAAAPVVXwAAAAAAD/AAAAAAAA9VVfAAAAAAAPfAAAAAAAD1VV8AAAAAAA98AAAAAAAPVVXwAAAAAAD3wAAAAAAA9VVfAAAAAAAPfAAAAAAAD1VV8AAAAAAA98AAAAAAAPVVXwAAAAAAD3wAAAAAAA9VVfAAAAAAAPfAAAAAAAD1VV8AAAAAAA98AAAAAAAPVVXwAAAAAAD3wAAAAAAA9VVfAAAAAAAPfAAAAAAAD1VV8AAAAAAA98AAAAAAAPVVXwAAAAAAD3wAAAAAAA9VVfAAAAAAAPXwAAAAAAD1VXwAAAAAAA9fAAAAAAAD1V8AAAAAAAD18AAAAAAAD//AAAAAAAAPXwAAAAAAAD/wAAAAAAAA9fAAAAAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAAAAPVVXwAAAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAAA9VVVfAAAAAAAAAAAAAAAPVVVV8AAAAAAAAAAAAAAA9VVVV8AAAAAAAAAAAAAAPVVVVV/AAAAAAAAAAAAAP1VVVVV/AAAAAAAAAAAAP9VVVVVVfwAAAAAAAAAAP9VVVVVVVf///////////9VVVVVVVVX//////////9VVVVQ==" },
|
||||||
|
{"width" : "58", "buffer":"///////////////////////////////////////wAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAP/////////8AAAAAAAAD3/////////wAAAAAAAD1VVVVVVVVVfAAAAAAAA9VVVVVVVVVXwAAAAAAAPVVVVVVVVVXwAAAAAAAPVVVVVVVVVV8AAAAAAAD1VVVVVVVVVfAAAAAAAA9VVVVVVVVVfAAAAAAAA9VVVVVVVVVXwAAAAAAAPVVVVVVVVVV8AAAAAAAD1VVVVVVVVV8AAAAAAAA9VVVVVVVVVfAAAAAAAA9VVVVVVVVVXwAAAAAAAPVVVVVVVVVXwAAAAAAAD1VVVVVVVVV8AAAAAAAD1VVVVVVVVVfAAAAAAAA9VVVVVVVVVfAAAAAAAAPVVVVVVVVVXwAAAAAAAPVVVVVVVVVV8AAAAAAAD1VVVVVVVVV8AAAAAAAA9VVVVVVVVVfAAAAAAAA9VVVVVVVVVXwAAAAAAAPVVVVVVVVVXwAAAAAAAD1VVVVVVVVV8AAAAAAAD1VVVVVVVVVfAAAAAAAA9VVVVVVVVVfAAAAAAAAPVVVVVVVVVXwAAAAAAAPVVVVVVVVVV8AAAAAAAD1VVVVVVVVV8AAAAAAAA9VVVVVVVVVfAAAAAAAA9VVVVVVVVVXwAAAAAAAPVVVVVVVVVXwAAAAAAAD1VVVVVVVVV8AAAAAAAD1VVVVVVVVV8AAAAAAAA9VVVVVVVVVfAAAAAAAAPVVVVVVVVVXwAAAAAAAPVVVVVVVVVXwAAAAAAAD1VVVVVVVVV8AAAAAAAA9VVVVVVVVVfAAAAAAAA9VVVVVVVVVfAAAAAAAAPVVVVVVVVVXwAAAAAAAD1VVVVVVVVV8AAAAAAAD1VVVVVVVVV8AAAAAAAA9VVVVVVVVVfAAAAAAAAPVVVVVVVVVXwAAAAAAAPVVVVVVVVVXwAAAAAAAD1VVVVVVVVV8AAAAAAAA9VVVVVVVVVfAAAAAAAAPVVVVVVVVVfAAAAAAAAPVVVVVVVVVXwAAAAAAAD1VVVVVVVVV8AAAAAAAA9VVVVVVVVV8AAAAAAAA9VVVVVVVVVfAAAAAAAAPVVVVVVVVVXwAAAAAAAPVVVVVVVVVXwAAAAAAAD1VVVVVVVVV8AAAAAAAA9VVVVVVVVVfAAAAAAAAPVVVVVVVVVfAAAAAAAAPVVVVVVVVVXwAAAAAAAD1VVVVVVVVXwAAAAAAAA9VVVVVVVVV8AAAAAAAA9VVVVVVVVVfAAAAAAAAPVVVVVVVVVXwAAAAAAAD1VVVVVVVVXwAAAAAAAD1VVVVVVVVV8AAAAAAAA9VVVVVVVVV8AAAAAAAAPVVVVVVVVVfAAAAAAAAPVVVVVVVVVXwAAAAAAAD1VVVVVVVVXwAAAAAAAA9VVVVVVVVV8AAAAAAAA9VVVVVVVVVfAAAAAAAAPVVVVVVVVVfAAAAAAAAD1VVVVVVVVXwAAAAAAAA9VVVVVVVVV8AAAAAAAA9VVVVVVVVV8AAAAAAAAPVVVVVVVVVf/////////VVVVVVVVVX/////////1VVVVVVVU=" },
|
||||||
|
{"width" : "64", "buffer":"VVVVX///////////1VVVVVVVVf////////////9VVVVVVV/wAAAAAAAAAAA/9VVVVVV/AAAAAAAAAAAAAP1VVVVV8AAAAAAAAAAAAAAPVVVVX8AAAAAAAAAAAAAAA9VVVV8AAAAAAAAAAAAAAAD1VVV8AAAAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAAAAAA9VVfAAAAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAAAA9XwAAAAAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAAAAAD1fAAAAAAAAA/AAAAAAAAAPXwAAAAAAAD//AAAAAAAAD18AAAAAAAD9X8AAAAAAAA9fAAAAAAAD1VXwAAAAAAAPXwAAAAAAA9VV8AAAAAAAD18AAAAAAAPVVXwAAAAAAA9fAAAAAAAD1VV8AAAAAAAPXwAAAAAAA9VVfAAAAAAAD18AAAAAAAPVVXwAAAAAAA9fAAAAAAAD1VV8AAAAAAAPXwAAAAAAA9VVfAAAAAAAD18AAAAAAAPVVXwAAAAAAA9fAAAAAAAD1VV8AAAAAAAPXwAAAAAAA9VVfAAAAAAAD18AAAAAAAPVVXwAAAAAAD1fAAAAAAAD1VV8AAAAAAA9XwAAAAAAA9VVfAAAAAAAPVfAAAAAAAPVVXwAAAAAAD1XwAAAAAAD1VXwAAAAAAA9V8AAAAAAAPVV8AAAAAAA9VXwAAAAAAA//8AAAAAAAPVV8AAAAAAAD/8AAAAAAAPVVXwAAAAAAAAAAAAAAAAD1VV8AAAAAAAAAAAAAAAAD1VVXwAAAAAAAAAAAAAAAA9VVVfAAAAAAAAAAAAAAAA9VVVV8AAAAAAAAAAAAAAD9VVVVX8AAAAAAAAAAAAAD9VVVVVfwAAAAAAAAAAAAD1VVVVVVfAAAAAAAAAAAAD1VVVVVVfAAAAAAAAAAAAA9VVVVVVfAAAAAAAAAAAAAD9VVVVV/AAAAAAAAAAAAAAP9VVVV/AAAAAAAAAAAAAAAP1VVV8AAAAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAAAPVXwAAAAAAAD/8AAAAAAAA9XwAAAAAAAD//wAAAAAAAPV8AAAAAAAD1VfAAAAAAAA9fAAAAAAAD1VV8AAAAAAAPXwAAAAAAA9VVfAAAAAAAD3wAAAAAAAPVVXwAAAAAAA98AAAAAAAD1VV8AAAAAAAPfAAAAAAAA9VVfAAAAAAAD3wAAAAAAAPVVXwAAAAAAAP8AAAAAAAPVVV8AAAAAAAD/AAAAAAAD1VVfAAAAAAAA/wAAAAAAA9VVXwAAAAAAAP8AAAAAAAPVVV8AAAAAAAD/AAAAAAAA9VVfAAAAAAAA/wAAAAAAAPVVXwAAAAAAAP8AAAAAAAD1VV8AAAAAAAD/AAAAAAAA9VVfAAAAAAAA/wAAAAAAAPVVXwAAAAAAAP8AAAAAAAD1VV8AAAAAAAD/AAAAAAAA9VV8AAAAAAAA/wAAAAAAAD//8AAAAAAAAP8AAAAAAAAP/8AAAAAAAAD/AAAAAAAAAAAAAAAAAAAD3wAAAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAAAAA9VVfAAAAAAAAAAAAAAAAA9VVV8AAAAAAAAAAAAAAAA9VVVXwAAAAAAAAAAAAAAA9VVVVfwAAAAAAAAAAAAAA9VVVVV/wAAAAAAAAAAAAD9VVVVVV/wAAAAAAAAAAA/9VVVVVVV/////////////1VVVVVVVV///////////9VVVVU=" },
|
||||||
|
{"width" : "62", "buffer":"VVVVX///////////VVVVVVVVX////////////1VVVVVVX/AAAAAAAAAAAP9VVVVVV/AAAAAAAAAAAAD9VVVVVfAAAAAAAAAAAAAA9VVVVXwAAAAAAAAAAAAAA9VVVV8AAAAAAAAAAAAAAA9VVVfAAAAAAAAAAAAAAAD1VVXwAAAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAAAAAA9XwAAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAAAPV8AAAAAAAA/8AAAAAAAA9XwAAAAAAAP/8AAAAAAAA9fAAAAAAAD1V8AAAAAAAD18AAAAAAA9VV8AAAAAAAPXwAAAAAAD1VXwAAAAAAA98AAAAAAAPVVXwAAAAAAD3wAAAAAAA9VVfAAAAAAAPfAAAAAAAD1VV8AAAAAAA98AAAAAAAPVVXwAAAAAAD3wAAAAAAA9VVfAAAAAAAD/AAAAAAAD1VV8AAAAAAAP8AAAAAAAPVVXwAAAAAAA/wAAAAAAA9VVfAAAAAAAD/AAAAAAAD1VV8AAAAAAAP8AAAAAAAPVVXwAAAAAAA/wAAAAAAA9VVfAAAAAAAD/AAAAAAAD1VV8AAAAAAAP8AAAAAAAPVVXwAAAAAAA/wAAAAAAA9VVfAAAAAAAD/AAAAAAAD1VV8AAAAAAAP8AAAAAAAPVVfAAAAAAAA/wAAAAAAA9VV8AAAAAAAD/AAAAAAAA///AAAAAAAAP8AAAAAAAA//wAAAAAAAA/wAAAAAAAAAAAAAAAAAAD3wAAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAAAAAD3wAAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAAAAA9XwAAAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAAAAA9VfAAAAAAAAAwAAAAAAAD1VfAAAAAAAA/wAAAAAAAPVVfwAAAAAAP3wAAAAAAA9VVf/AAAAAP1fAAAAAAAD1VVX//////9V8AAAAAAAPVVVVf////9VXwAAAAAAA9VVVVVVVVVVVfAAAAAAAD1VVVVVVVVVVV8AAAAAAAPVVVVVVVVVVVXwAAAAAAA9VVVVVVVVVVVfAAAAAAAD1VVVVVVVVVVV8AAAAAAA9VVVVVVVVVVVfAAAAAAAD1VVVVVVVVVVV8AAAAAAAPVVVVVVVVVVVXwAAAAAAA9VVVVVVVVVVVfAAAAAAAD1VVVVVVVVVVXwAAAAAAAPVVVVVVVVVVV8AAAAAAAA9Vf/VVVVVVVfAAAAAAAAPVX/////////wAAAAAAAA9VfAP//////8AAAAAAAAD1V8AAAAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAAAA9VVfAAAAAAAAAAAAAAAAD1VV8AAAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAAAPVVVfAAAAAAAAAAAAAAAA9VVV8AAAAAAAAAAAAAAAPVVVXwAAAAAAAAAAAAAAD1VVVfAAAAAAAAAAAAAAA9VVVV8AAAAAAAAAAAAAA/VVVVXwAAAAAAAAAAAAA/1VVVVX/AAAAAAAAAAAA/1VVVVVf/////////////1VVVVVVVf///////////1VVVVVQ==" },
|
||||||
|
{"width" : "26", "buffer":"VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX///////9/////////AAAAAAAP8AAAAAAA/wAAAAAAD/AAAAAAAP8AAAAAAA/wAAAAAAD/AAAAAAAP8AAAAAAA/wAAAAAAD/AAAAAAAP8AAAAAAA/wAAAAAAD/AAAAAAAP8AAAAAAA/wAAAAAAD/AAAAAAAP8AAAAAAA/wAAAAAAD/AAAAAAAP8AAAAAAA/////////3////////VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/////////////////AAAAAAAP8AAAAAAA/wAAAAAAD/AAAAAAAP8AAAAAAA/wAAAAAAD/AAAAAAAP8AAAAAAA/wAAAAAAD/AAAAAAAP8AAAAAAA/wAAAAAAD/AAAAAAAP8AAAAAAA/wAAAAAAD/AAAAAAAP8AAAAAAA/wAAAAAAD/AAAAAAAP/////////////////w==" }
|
||||||
|
]
|
||||||
|
}
|
|
@ -0,0 +1,17 @@
|
||||||
|
{
|
||||||
|
"name":"SairaEC",
|
||||||
|
"size":"100",
|
||||||
|
"characters":[
|
||||||
|
{"width" : "51", "buffer":"VVVVf///////9VVVVVVVf/////////1VVVVVV/wAAAAAAAD/VVVVVfwAAAAAAAAAP1VVVV/AAAAAAAAAAA9VVVV8AAAAAAAAAAAPVVVXwAAAAAAAAAAAPVVVfAAAAAAAAAAAAD1VVfAAAAAAAAAAAAA9VV8AAAAAAAAAAAAA9VV8AAAAAAAAAAAAAPVXwAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAA9fAAAAAAA/AAAAAAA9fAAAAAAD/wAAAAAA9fAAAAAAPV8AAAAAA98AAAAAA9V8AAAAAA98AAAAAA9VfAAAAAA98AAAAAA9VfAAAAAA98AAAAAA9VfAAAAAA98AAAAAA9VfAAAAAA98AAAAAD1VfAAAAAA98AAAAAD1VfAAAAAA98AAAAAD1VfAAAAAA98AAAAAD1VfAAAAAA98AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAAP8AAAAAD1VfAAAAAA98AAAAAD1VfAAAAAA98AAAAAD1VfAAAAAA98AAAAAD1VfAAAAAA98AAAAAA9VfAAAAAA98AAAAAA9VfAAAAAA98AAAAAA9VfAAAAAA98AAAAAA9VfAAAAAA98AAAAAA9V8AAAAAA9fAAAAAAPXwAAAAAA9fAAAAAAD/AAAAAAA9fAAAAAAA8AAAAAAA9fAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAPVV8AAAAAAAAAAAAA9VVfAAAAAAAAAAAAA9VVfAAAAAAAAAAAAD1VVXwAAAAAAAAAAAD1VVV8AAAAAAAAAAAPVVVV/AAAAAAAAAAD9VVVVfwAAAAAAAAAP1VVVVV/wAAAAAAAP9VVVVVVf/////////1VVVVVVVf///////1VVVV"},
|
||||||
|
{"width" : "37", "buffer":"VVVVVV//////1VVVVX//////9VVVVf8AAAAAPVVVV/wAAAAAD1VVX/AAAAAAA9VVf8AAAAAAAPVV/wAAAAAAAD1X/AAAAAAAAA9X8AAAAAAAAAPfwAAAAAAAAAD/wAAAAAAAAAA/wAAAAAAAAAAP8AAAAAAAAAAD/AAAAAAAAAAA/wAAAAAAAAAAP8AAAAAAAAAAD/AAAAAAAAAAA/wAAAAAAAAAAP8AAAAAAAAAAD/AAAAAAAAAAA/wAAAAAAAAAAP8AAAAAAAAAAD/AAAAAAAAAAA/wAAAAAAAAAAP8AAAAAAAAAAD/AAAMAAAAAAA/wAA/wAAAAAAP8AP/fAAAAAAD/D/9XwAAAAAA///VV8AAAAAAP/1VVfAAAAAAD1VVVXwAAAAAA9VVVV8AAAAAAPVVVVfAAAAAAD1VVVXwAAAAAA9VVVV8AAAAAAPVVVVfAAAAAAD1VVVXwAAAAAA9VVVV8AAAAAAPVVVVfAAAAAAD1VVVXwAAAAAA9VVVV8AAAAAAPVVVVfAAAAAAD1VVVXwAAAAAA9VVVV8AAAAAAPVVVVfAAAAAAD1VVVXwAAAAAA9VVVV8AAAAAAPVVVVfAAAAAAD1VVVXwAAAAAA9VVVV8AAAAAAPVVVVfAAAAAAD1VVVXwAAAAAA9VVVV8AAAAAAPVVVVfAAAAAAD1VVVXwAAAAAA9VVVV8AAAAAAPVVVVfAAAAAAD1VVVXwAAAAAA9VVVV8AAAAAAPVVVVfAAAAAAD1VVVXwAAAAAA9VVVV8AAAAAAPVVVVfAAAAAAD1VVVXwAAAAAA9VVVV8AAAAAAPVVVVfAAAAAAD1VVVXwAAAAAA9VVVV8AAAAAAPVVVVfAAAAAAD1VVVXwAAAAAA9VVVV8AAAAAAPVVVVfAAAAAAD1VVVXwAAAAAA9VVVV8AAAAAAPVVVVfAAAAAAD1VVVXwAAAAAA9VVVV8AAAAAAPVVVVfAAAAAAD1VVVXwAAAAAA9VVVV8AAAAAAPVVVVfAAAAAAD1VVVXwAAAAAA9VVVV8AAAAAAPVVVVfAAAAAAD1VVVXwAAAAAA9VVVV8AAAAAAPVVVVfAAAAAAD1VVVXwAAAAAA9VVVV8AAAAAAPVVVVfAAAAAAD1VVVXwAAAAAA9VVVV8AAAAAAPVVVVfAAAAAAD1VVVXwAAAAAA9VVVV8AAAAAAPVVVVfAAAAAAD1VVVXwAAAAAA9VVVV////////VVVVf///////w=="},
|
||||||
|
{"width" : "50", "buffer":"Vf//////////1VVVV////////////9VVVX8AAAAAAAAAAD/VVVfAAAAAAAAAAAA/VVV8AAAAAAAAAAAAPVVXwAAAAAAAAAAAAPVVfAAAAAAAAAAAAAPVV8AAAAAAAAAAAAA9VXwAAAAAAAAAAAAA9VfAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAD1XwAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAA9XwAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAPXwAAAAAAAAAAAAAA9fAD////8AAAAAAAD1////////AAAAAAAPX//VVVVV/AAAAAAA9VVVVVVVVfAAAAAAD1VVVVVVVV8AAAAAAPVVVVVVVVV8AAAAAA9VVVVVVVVXwAAAAAD1VVVVVVVVfAAAAAAPVVVVVVVVV8AAAAAAPVVVVVVVVXwAAAAAA9VVVVVVVVfAAAAAAD1VVVVVVVV8AAAAAAPVVVVVVVVXwAAAAAA9VVVVVVVVfAAAAAAD1VVVVVVVV8AAAAAA9VVVVVVVVXwAAAAAD1VVVVVVVVfAAAAAAPVVVVVVVVXwAAAAAA9VVVVVVVVfAAAAAAD1VVVVVVVXwAAAAAAPVVVVVVVV8AAAAAAA9VVVVVVV/AAAAAAAD1VVVVVVfwAAAAAAAPVVVVVVfwAAAAAAAD1VVVVVX8AAAAAAAAPVVVVVX8AAAAAAAAA9VVVVX/AAAAAAAAAD1VVVV/AAAAAAAAAA9VVVV/AAAAAAAAAAD1VVVfwAAAAAAAAAAPVVVfwAAAAAAAAAAD1VVX8AAAAAAAAAAA9VVV8AAAAAAAAAAAD1VVfAAAAAAAAAAAA9VVXwAAAAAAAAAAAPVVVfAAAAAAAAAAAP1VVXwAAAAAAAAAAD9VVVfAAAAAAAAAAD9VVVXwAAAAAAAAAA/VVVVfAAAAAAAAAA/VVVVV8AAAAAAAAA/1VVVVXwAAAAAAAAP1VVVVVfAAAAAAAAP1VVVVVXwAAAAAAAD9VVVVVVfAAAAAAAD9VVVVVVV8AAAAAAA/VVVVVVVXwAAAAAAPVVVVVVVVfAAAAAAD1VVVVVVVV8AAAAAAPVVVVVVVVXwAAAAAA9VVVVVVVVfAAAAAAPVVVVVVVVV8AAAAAA9VVVVVVVVXwAAAAAD1VVVVVVVVfAAAAAAPVVVVVVVVV8AAAAAA9VVVVVVVVXwAAAAAD1VVVVVVVVfAAAAAAPVVVVVVVVV8AAAAAA9VVVVVVVVXwAAAAAD1VVVVVVVVfAAAAAAPVVVVVVVVV8AAAAAA9VVVVVVVVXwAAAAAA/////////fAAAAAAA/////////8AAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAD/////////////////////////////////0="},
|
||||||
|
{"width" : "50", "buffer":"VX//////////1VVVV////////////9VVVf/AAAAAAAAAAD/VVV8AAAAAAAAAAAA/VVXwAAAAAAAAAAAAPVVfAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAPVXwAAAAAAAAAAAAAPVfAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAA9XwAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAPXwAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAD3wAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAA98A/////8AAAAAAAD3////////AAAAAAAPX/1VVVVV/AAAAAAA9VVVVVVVVfAAAAAAD1VVVVVVVV8AAAAAAPVVVVVVVVV8AAAAAA9VVVVVVVVXwAAAAAD1VVVVVVVVfAAAAAAPVVVVVVVVV8AAAAAA9VVVVVVVVXwAAAAAD1VVVVVVVVfAAAAAAPVVVVVVVVV8AAAAAA9VVVVVVVVXwAAAAAD1VVVVVVVVfAAAAAAPVVVVVVVVV8AAAAAA9VVVVVVVVXwAAAAAD1VVVVVVVVfAAAAAAPVVVVVVVVV8AAAAAA9VVVVVVVVfAAAAAAPVVVVVVVVV8AAAAAA9VVVVVVVV/AAAAAAD1VVf/////wAAAAAA9VVV/////wAAAAAAD1VVXwAAAAAAAAAAAPVVVfAAAAAAAAAAAD1VVV8AAAAAAAAAAAPVVVXwAAAAAAAAAAD1VVVfAAAAAAAAAAA9VVVV8AAAAAAAAAA/VVVVXwAAAAAAAAAP1VVVVfAAAAAAAAAD1VVVVV8AAAAAAAAAPVVVVVXwAAAAAAAAAP1VVVVfAAAAAAAAAAP1VVVV8AAAAAAAAAAD9VVVXwAAAAAAAAAAD9VVVfAAAAAAAAAAAD1VVV8AAAAAAAAAAAD1VVXwAAAAAAAAAAAD1VVfAAAAAAAAAAAAPVVV/////8AAAAAAA9VVX/////8AAAAAAA9VVVVVVVV8AAAAAAD1VVVVVVVV8AAAAAAPVVVVVVVVV8AAAAAA9VVVVVVVVXwAAAAAA9VVVVVVVVfAAAAAAD1VVVVVVVVfAAAAAAPVVVVVVVVV8AAAAAA9VVVVVVVVXwAAAAAD1VVVVVVVVfAAAAAAPVVVVVVVVV8AAAAAA9VVVVVVVVXwAAAAAD1VVVVVVVVfAAAAAAPVVVVVVVVV8AAAAAA9VVVVVVVVXwAAAAAD1VVVVVVVVfAAAAAAPVVVVVVVVV8AAAAAA9VVVVVVVVfAAAAAAD1VVVVVVVV8AAAAAAPVVVVVVVVfAAAAAAA9//9VVVVfwAAAAAAD////////8AAAAAAAP8AA////8AAAAAAAA/wAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAD3wAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAPXwAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAD18AAAAAAAAAAAAAA9XwAAAAAAAAAAAAAD1fAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAPVXwAAAAAAAAAAAAD9VfAAAAAAAAAAAAA/VV8AAAAAAAAAAAA/VVX/wAAAAAAAAAA/1VVX////////////1VVVVX//////////1VVVU="},
|
||||||
|
{"width" : "56", "buffer":"VVVV///////9VVVVVVVVVVf///////1VVVVVVVVVV8AAAAAAPVVVVVVVVVVXwAAAAAA9VVVVVVVVVVfAAAAAAPVVVVVVVVVVV8AAAAAA9VVVVVVVVVVXwAAAAAD1VVVVVVVVVV8AAAAAAPVVVVVVVVVVXwAAAAAA9VVVVVVVVVVfAAAAAAPVVVVVVVVVVV8AAAAAA9VVVVVVVVVVXwAAAAAD1VVVVVVVVVV8AAAAAAPVVVVVVVVVVXwAAAAAA9VVVVVVVVVVfAAAAAAPVVVVVVVVVVV8AAAAAA9VVVVVVVVVVXwAAAAAD1VVVVVVVVVVfAAAAAAPVVVVVVVVVVXwAAAAAA9VVVVVVVVVVfAAAAAAPVVVVVVVVVVV8AAAAAA9VVVVVVVVVVXwAAAAAD1VVVVVVVVVVfAAAAAAPVVVVVVVVVVXwAAAAAD1VVVVVVVVVVfAAAAAAPVVVVVVVVVVV8AAAAAA9VVVVVVVVVVXwAAAAAD1VVVVVVVVVVfAAAAAAPVVVVVVVVVVV8AAAAAD1VVVVVVVVVVfAAAAAAPVVVVVVVVVVV8AAAAAA9VVVVVVVVVVXwAAAAAD1VVVVVVVVVVfAAAAAAPVVVVVVVVVVV8AAAAAD1VVVVVVVVVVXwAAAAAPVVVVVVVVVVV8AAAAAA9VVVVVVVVVVXwAAAAAD1VVVVVVVVVVfAAAAAAPVVVVVVVVVVV8AAAAAD1VVVVVVVVVVXwAAAAAPVVVVVVVVVVVfAAAAAA9VX/////1VVXwAAAAAD1Vf/////VVVfAAAAAA9VV8AAAA9VVV8AAAAAD1VfAAAAD1VVXwAAAAAPVV8AAAAPVVVfAAAAAA9VXwAAAA9VVXwAAAAAD1V8AAAAD1VVfAAAAAA9VXwAAAAPVVV8AAAAAD1VfAAAAA9VVXwAAAAAPVV8AAAAD1VVfAAAAAA9VfAAAAAPVVV8AAAAAD1V8AAAAA9VVfAAAAAA9VXwAAAAD1VV8AAAAAD1V8AAAAAPVVXwAAAAAPVXwAAAAA9VVfAAAAAA9VfAAAAAD1VV8AAAAAPVXwAAAAAPVVfAAAAAA9VfAAAAAA9VV8AAAAAD1V8AAAAAD1VXwAAAAAPVXwAAAAAPVVfAAAAAA9V8AAAAAA9VV8AAAAAA//AAAAAAA//3wAAAAAA/wAAAAAAA//8AAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAD/////////wAAAAAAA///////////wAAAAAAP/9VVVVVVVVXwAAAAAD1VVVVVVVVVVfAAAAAAPVVVVVVVVVVV8AAAAAA9VVVVVVVVVVXwAAAAAD1VVVVVVVVVVfAAAAAAPVVVVVVVVVVV8AAAAAA9VVVVVVVVVVXwAAAAAD1VVVVVVVVVVfAAAAAAPVVVVVVVVVVV8AAAAAA9VVVVVVVVVVXwAAAAAD1VVVVVVVVVVfAAAAAAPVVVVVVVVVVV8AAAAAA9VVVVVVVVVVXwAAAAAD1VVVVVVVVVVfAAAAAAPVVVVVVVVVVV8AAAAAA9VVVVVVVVVVXwAAAAAD1VVVVVVVVVVf///////VVVVVVVVVVV///////9VU="},
|
||||||
|
{"width" : "50", "buffer":"f//////////////9V///////////////1XwAAAAAAAAAAAAAPVfAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAD1XwAAAAAAAAAAAAAPVfAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAD1XwAAAAAAAAAAAAAPVfAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAD1XwAAAAAAAAAAAAAPVfAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAD1XwAAAAAAAAAAAAAPVfAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAD1XwAAAAAAAAAAAAAPVfAAAAAAAAAAAAAA9V8AAAAAAP///////1XwAAAAAD////////VfAAAAAA9VVVVVVVVV8AAAAAD1VVVVVVVVXwAAAAAPVVVVVVVVVfAAAAAA9VVVVVVVVV8AAAAAD1VVVVVVVVXwAAAAAPVVVVVVVVVfAAAAAA9VVVVVVVVV8AAAAAD1VVVVVVVVXwAAAAAPVVVVVVVVVfAAAAAA9VVVVVVVVV8AAAAAD1VVVVVVVVXwAAAAAPVVVVVVVVVfAAAAAA9VVVVVVVVV8AAAAAD1VVVVVVVVXwAAAAAD////1VVVVfAAAAAAD/////VVVV8AAAAAAAAAAD/VVVXwAAAAAAAAAAAP1VVfAAAAAAAAAAAAP1VV8AAAAAAAAAAAAD1VXwAAAAAAAAAAAAD1VfAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAPVXwAAAAAAAAAAAAA9VfAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAD1XwAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAA9XwAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAPXwAAAAAAAAAAAAAA9f//////8AAAAAAAD1////////AAAAAAAPV1VVVVVV/AAAAAAA9VVVVVVVVfAAAAAAD1VVVVVVVV8AAAAAAPVVVVVVVVV8AAAAAAPVVVVVVVVXwAAAAAA9VVVVVVVVfAAAAAAD1VVVVVVVV8AAAAAAPVVVVVVVVXwAAAAAA9VVVVVVVVfAAAAAAD1VVVVVVVV8AAAAAAPVVVVVVVVXwAAAAAA9VVVVVVVVfAAAAAAD1VVVVVVVV8AAAAAAPVVVVVVVVXwAAAAAA9VVVVVVVVfAAAAAAD1VVVVVVVV8AAAAAAPVVVVVVVVXwAAAAAA9VVVVVVVVfAAAAAAD1VVVVVVVV8AAAAAA9VVVVVVVVXwAAAAAD1VVVVVVVVfAAAAAAPVVVVVVVVXwAAAAAA9VVVVVVVVfAAAAAAD1//9VVVV/wAAAAAAPf///////8AAAAAAA98AA////wAAAAAAAD3wAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAPXwAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAD18AAAAAAAAAAAAAA9XwAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAD1XwAAAAAAAAAAAAAPVfAAAAAAAAAAAAAD1V8AAAAAAAAAAAAA9VXwAAAAAAAAAAAAP1VfAAAAAAAAAAAAD9VV8AAAAAAAAAAAD9VVX/wAAAAAAAAAD/VVVX////////////VVVVVX//////////VVVVU="},
|
||||||
|
{"width" : "51", "buffer":"VVVVVX////////9VVVVVVV//////////9VVVVVf8AAAAAAAAD/1VVVV/AAAAAAAAAAD1VVVXwAAAAAAAAAAD1VVVfAAAAAAAAAAAD1VVV8AAAAAAAAAAAD1VVXwAAAAAAAAAAAD1VVfAAAAAAAAAAAAD1VVfAAAAAAAAAAAAD1VV8AAAAAAAAAAAAD1VXwAAAAAAAAAAAAD1VXwAAAAAAAAAAAAD1VfAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAD1V8AAAAAAAAAAAAAD1V8AAAAAAAD///8AD1V8AAAAAAD///////1XwAAAAAAP9VVVX//1XwAAAAAA9VVVVVVVVXwAAAAAD1VVVVVVVVXwAAAAAD1VVVVVVVVXwAAAAAPVVVVVVVVVfAAAAAAPVVVVVVVVVfAAAAAAPVVVVVVVVVfAAAAAAPVVVVVVVVVfAAAAAAPVVVVVVVVVfAAAAAAPVVVVVVVVVfAAAAAA9VVVVVVVVVfAAAAAA9VVVVVVVVVfAAAAAA9VVVVVVVVVfAAAAAA9VVVVVVVVVfAAAAAA9VVVVVVVVVfAAAAAA9VV////VVVfAAAAAA9Vf////9VVfAAAAAA9X/AAAA/VVfAAAAAA9fwAAAAD1VfAAAAAA98AAAAAA9VfAAAAAA98AAAAAAPVfAAAAAAPwAAAAAAPV8AAAAAADAAAAAAAD18AAAAAAAAAAAAAAD18AAAAAAAAAAAAAAD18AAAAAAAAAAAAAAA98AAAAAAAAAAAAAAA98AAAAAAAAAAAAAAA98AAAAAAAAAAAAAAA98AAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAP8AAAAAAA/wAAAAAAP8AAAAAAD/8AAAAAAP8AAAAAAPVfAAAAAAP8AAAAAAPVfAAAAAAP8AAAAAAPVXwAAAAAPfAAAAAA9VXwAAAAAPfAAAAAA9VXwAAAAAPfAAAAAA9VXwAAAAAPfAAAAAA9VXwAAAAAPfAAAAAA9VXwAAAAAPfAAAAAA9VXwAAAAAPfAAAAAA9VXwAAAAAPfAAAAAA9VXwAAAAAPfAAAAAA9VXwAAAAAPfAAAAAA9VXwAAAAAPfAAAAAA9VXwAAAAAPfAAAAAA9VXwAAAAAPfAAAAAA9VXwAAAAAPfAAAAAA9VXwAAAAAPfAAAAAA9VXwAAAAAPfAAAAAA9VXwAAAAAPfAAAAAA9VXwAAAAAPfAAAAAAPVXwAAAAAPfAAAAAAPVXwAAAAAPXwAAAAAPVfAAAAAAPXwAAAAAPVfAAAAAAPXwAAAAAD/8AAAAAAPXwAAAAAA/wAAAAAAPXwAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAA9V8AAAAAAAAAAAAAA9V8AAAAAAAAAAAAAA9V8AAAAAAAAAAAAAD1VfAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAPVVXwAAAAAAAAAAAAPVVXwAAAAAAAAAAAA9VVV8AAAAAAAAAAAA9VVV8AAAAAAAAAAAD1VVVfAAAAAAAAAAAD1VVVXwAAAAAAAAAA/VVVVV/AAAAAAAAAD9VVVVVf8AAAAAAAD/VVVVVVV/////////9VVVVVVVX///////9VVVV"},
|
||||||
|
{"width" : "50", "buffer":"//////////////////////////////////AAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAA/////////wAAAAAAD/////////wAAAAAAPVVVVVVVVXwAAAAAA9VVVVVVVVfAAAAAAPVVVVVVVVXwAAAAAA9VVVVVVVVfAAAAAAD1VVVVVVVV8AAAAAA9VVVVVVVVXwAAAAAD1VVVVVVVV8AAAAAAPVVVVVVVVXwAAAAAD1VVVVVVVVfAAAAAAPVVVVVVVVXwAAAAAA9VVVVVVVVfAAAAAAD1VVVVVVVV8AAAAAA9VVVVVVVVfAAAAAAD1VVVVVVVV8AAAAAAPVVVVVVVVXwAAAAAD1VVVVVVVVfAAAAAAPVVVVVVVVXwAAAAAA9VVVVVVVVfAAAAAAD1VVVVVVVV8AAAAAA9VVVVVVVVfAAAAAAD1VVVVVVVV8AAAAAAPVVVVVVVVXwAAAAAA9VVVVVVVV8AAAAAAPVVVVVVVVXwAAAAAA9VVVVVVVVfAAAAAAD1VVVVVVVV8AAAAAA9VVVVVVVVfAAAAAAD1VVVVVVVV8AAAAAAPVVVVVVVVXwAAAAAA9VVVVVVVV8AAAAAAPVVVVVVVVXwAAAAAA9VVVVVVVVfAAAAAAD1VVVVVVVV8AAAAAA9VVVVVVVVfAAAAAAD1VVVVVVVV8AAAAAAPVVVVVVVVXwAAAAAA9VVVVVVVV8AAAAAAPVVVVVVVVXwAAAAAA9VVVVVVVVfAAAAAAD1VVVVVVVXwAAAAAA9VVVVVVVVfAAAAAAD1VVVVVVVV8AAAAAAPVVVVVVVVXwAAAAAA9VVVVVVVV8AAAAAAPVVVVVVVVXwAAAAAA9VVVVVVVVfAAAAAAD1VVVVVVVXwAAAAAA9VVVVVVVVfAAAAAAD1VVVVVVVV8AAAAAAPVVVVVVVVXwAAAAAA9VVVVVVVV8AAAAAAPVVVVVVVVXwAAAAAA9VVVVVVVVfAAAAAAD1VVVVVVVXwAAAAAAPVVVVVVVVfAAAAAAD1VVVVVVVV8AAAAAAPVVVVVVVVfAAAAAAA9VVVVVVVV8AAAAAAPVVVVVVVVXwAAAAAA9VVVVVVVVfAAAAAAD1VVVVVVVXwAAAAAA9VVVVVVVVfAAAAAAD1VVVVVVVV8AAAAAAPVVVVVVVVfAAAAAAA9VVVVVVVV8AAAAAAPVVVVVVVVXwAAAAAA9VVVVVVVVfAAAAAAD1VVVVVVVXwAAAAAAPVVVVVVVVfAAAAAAD1VVVVVVVV8AAAAAAPVVVVVVVVfAAAAAAA9VVVVVVVV8AAAAAAPVVVVVVVVXwAAAAAA9VVVVVVVV8AAAAAAD1VVVVVVVXwAAAAAAPVVVVVVVVfAAAAAAD1VVVVVVVV8AAAAAAPVVVVVVVVf///////9VVVVVVVV////////VVVVVVVU="},
|
||||||
|
{"width" : "53", "buffer":"VVVVf////////VVVVVVVVf/////////9VVVVVVf8AAAAAAAAP9VVVVVX8AAAAAAAAAA/VVVVV8AAAAAAAAAAA/VVVVfAAAAAAAAAAAAPVVVXwAAAAAAAAAAAAPVVV8AAAAAAAAAAAAA9VVXwAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAA9XwAAAAAAP8AAAAAAA9fAAAAAAD/8AAAAAAD18AAAAAA9V8AAAAAAPXwAAAAAD1V8AAAAAA9fAAAAAAPVXwAAAAAD18AAAAAA9VfAAAAAAPXwAAAAAD1V8AAAAAA9fAAAAAAPVXwAAAAAD18AAAAAA9VfAAAAAAPXwAAAAAD1V8AAAAAA9fAAAAAAPVXwAAAAAD18AAAAAA9VfAAAAAAPXwAAAAAD1V8AAAAAA9fAAAAAAPVXwAAAAAD18AAAAAA9VfAAAAAAPXwAAAAAD1V8AAAAAA9fAAAAAAPVXwAAAAAPV8AAAAAA9VfAAAAAA9V8AAAAAD1V8AAAAAD1XwAAAAAPVXwAAAAAPVfAAAAAA9VfAAAAAA9V8AAAAAD1V8AAAAAPVV8AAAAAD1/AAAAAA9VXwAAAAAD/wAAAAAD1VXwAAAAADwAAAAAA9VVfAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAA9VVV8AAAAAAAAAAAAPVVVV/AAAAAAAAAAAD1VVVV/wAAAAAAAAAD9VVVVVfwAAAAAAAAA/VVVVVVXwAAAAAAAAPVVVVVVV8AAAAAAAAAPVVVVVV/AAAAAAAAAAPVVVVVfwAAAAAAAAAAP1VVVXwAAAAAAAAAAAP1VVV8AAAAAAAAAAAAD1VVfAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAAPVXwAAAAAAPwAAAAAAPVfAAAAAAD/wAAAAAA9XwAAAAAA9XwAAAAAD1fAAAAAAPVXwAAAAAD18AAAAAA9VfAAAAAAPXwAAAAAD1V8AAAAAA98AAAAAAPVXwAAAAAD3wAAAAAA9VfAAAAAAPfAAAAAAD1V8AAAAAAP8AAAAAAPVXwAAAAAA/wAAAAAA9VfAAAAAAD/AAAAAAD1V8AAAAAAP8AAAAAAPVXwAAAAAA/wAAAAAA9VfAAAAAAD/AAAAAAD1V8AAAAAAP8AAAAAAPVXwAAAAAA/wAAAAAA9VfAAAAAAD/AAAAAAD1V8AAAAAAP8AAAAAAPVXwAAAAAA/wAAAAAA9VfAAAAAAD/AAAAAAD1V8AAAAAAP8AAAAAAPVXwAAAAAA/wAAAAAA9VfAAAAAAD/AAAAAAA9XwAAAAAAP8AAAAAAA/8AAAAAAD3wAAAAAAA/AAAAAAAPfAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAPVVXwAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAPVVVXwAAAAAAAAAAAD1VVVXwAAAAAAAAAAD9VVVVX8AAAAAAAAAA/VVVVVX/wAAAAAAAD/VVVVVVV//////////1VVVVVVVX////////VVVVU="},
|
||||||
|
{"width" : "51", "buffer":"VVVVf///////9VVVVVVVX/////////1VVVVVV/wAAAAAAAD/VVVVVX8AAAAAAAAAP1VVVVfAAAAAAAAAAA9VVVV8AAAAAAAAAAAPVVVXwAAAAAAAAAAAPVVVXwAAAAAAAAAAAD1VVfAAAAAAAAAAAAD1VVfAAAAAAAAAAAAA9VV8AAAAAAAAAAAAA9VV8AAAAAAAAAAAAAPVV8AAAAAAAAAAAAAPVXwAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAD1fAAAAAAA/AAAAAAA9fAAAAAAD/wAAAAAA9fAAAAAAPV8AAAAAA9fAAAAAA9VfAAAAAA9fAAAAAA9VfAAAAAA9fAAAAAA9VfAAAAAA9fAAAAAA9VfAAAAAA9fAAAAAA9VfAAAAAA98AAAAAA9VfAAAAAAP8AAAAAA9VfAAAAAAP8AAAAAA9VfAAAAAAP8AAAAAA9VfAAAAAAP8AAAAAA9VfAAAAAAP8AAAAAA9VfAAAAAAP8AAAAAA9VfAAAAAAP8AAAAAA9VfAAAAAAP8AAAAAA9VfAAAAAAP8AAAAAA9VfAAAAAAP8AAAAAA9VfAAAAAAP8AAAAAA9VfAAAAAAP8AAAAAA9VfAAAAAAP8AAAAAA9VfAAAAAAP8AAAAAA9VfAAAAAAP8AAAAAA9VfAAAAAAP8AAAAAA9VfAAAAAAP8AAAAAAPV8AAAAAAPfAAAAAAD/wAAAAAAPfAAAAAAA/AAAAAAAPfAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAPV8AAAAAAAwAAAAAAPVfAAAAAAD8AAAAAAPVXwAAAAAPfAAAAAAPVX8AAAAA9fAAAAAAPVV/wAAAP1fAAAAAAPVVX/////VfAAAAAAPVVVf///1VfAAAAAAPVVVVVVVVVfAAAAAAPVVVVVVVVVfAAAAAAPVVVVVVVVVfAAAAAAPVVVVVVVVVfAAAAAAPVVVVVVVVVfAAAAAAPVVVVVVVVVfAAAAAAPVVVVVVVVVfAAAAAA9VVVVVVVVVfAAAAAA9VVVVVVVVVfAAAAAA9VVVVVVVVVfAAAAAA9VVVVVVVVV8AAAAAA9VVVVVVVVV8AAAAAA9VVVVVVVVXwAAAAAA9VVVVVVVVXwAAAAAD1V///VVVX/AAAAAAD1V///////8AAAAAAD1V8AA///8AAAAAAAD1V8AAAAAAAAAAAAAPVV8AAAAAAAAAAAAAPVV8AAAAAAAAAAAAAPVV8AAAAAAAAAAAAA9VV8AAAAAAAAAAAAA9VV8AAAAAAAAAAAAA9VV8AAAAAAAAAAAAD1VV8AAAAAAAAAAAAD1VV8AAAAAAAAAAAAPVVV8AAAAAAAAAAAAPVVV8AAAAAAAAAAAA9VVV8AAAAAAAAAAAD1VVV8AAAAAAAAAAAPVVVV8AAAAAAAAAAD9VVVV8AAAAAAAAAAP1VVVV/8AAAAAAAAP9VVVVVf//////////1VVVVVVX////////1VVVVV"},
|
||||||
|
{"width" : "22", "buffer":"VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX//////////////8AAAAAD/AAAAAA/wAAAAAP8AAAAAD/AAAAAA/wAAAAAP8AAAAAD/AAAAAA/wAAAAAP8AAAAAD/AAAAAA/wAAAAAP8AAAAAD/AAAAAA/wAAAAAP8AAAAAD/AAAAAA/wAAAAAP8AAAAAD///////9///////VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV///////////////wAAAAAP8AAAAAD/AAAAAA/wAAAAAP8AAAAAD/AAAAAA/wAAAAAP8AAAAAD/AAAAAA/wAAAAAP8AAAAAD/AAAAAA/wAAAAAP8AAAAAD/AAAAAA/wAAAAAP8AAAAAD/AAAAAA///////////////w=="}
|
||||||
|
]
|
||||||
|
}
|
|
@ -0,0 +1,17 @@
|
||||||
|
{
|
||||||
|
"name":"Teko",
|
||||||
|
"size":"99",
|
||||||
|
"characters":[
|
||||||
|
{"width" : "50", "buffer":"VVV//////////9VVVVVf///////////VVVVfwAAAAAAAAAA/1VVX8AAAAAAAAAAAP1VV8AAAAAAAAAAAAD1VfAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAPVfAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAA9fAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAD3wAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAP8AAAAAAP/8AAAAAA/wAAAAAD//8AAAAAD/AAAAAA9VV8AAAAAP8AAAAAPVVXwAAAAA/wAAAAA9VVfAAAAAD/AAAAAD1VV8AAAAAP8AAAAAPVVXwAAAAA/wAAAAA9VVfAAAAAD/AAAAAD1VV8AAAAAP8AAAAAPVVXwAAAAA/wAAAAA9VVfAAAAAD/AAAAAD1VV8AAAAAP8AAAAAPVVXwAAAAA/wAAAAA9VVfAAAAAD/AAAAAD1VV8AAAAAP8AAAAAPVVXwAAAAA/wAAAAA9VVfAAAAAD/AAAAAD1VV8AAAAAP8AAAAAPVVXwAAAAA/wAAAAA9VVfAAAAAD/AAAAAD1VV8AAAAAP8AAAAAPVVXwAAAAA/wAAAAA9VVfAAAAAD/AAAAAD1VV8AAAAAP8AAAAAPVVXwAAAAA/wAAAAA9VVfAAAAAD/AAAAAD1VV8AAAAAP8AAAAAPVVXwAAAAA/wAAAAA9VVfAAAAAD/AAAAAD1VV8AAAAAP8AAAAAPVVXwAAAAA/wAAAAA9VVfAAAAAD/AAAAAD1VV8AAAAAP8AAAAAPVVXwAAAAA/wAAAAA9VVfAAAAAD/AAAAAD1VV8AAAAAP8AAAAAPVVXwAAAAA/wAAAAA9VVfAAAAAD/AAAAAD1VV8AAAAAP8AAAAAPVVXwAAAAA/wAAAAA9VVfAAAAAD/AAAAAD1VV8AAAAAP8AAAAAPVVXwAAAAA/wAAAAA9VVfAAAAAD/AAAAAD1VV8AAAAAP8AAAAAPVVXwAAAAA/wAAAAA9VVfAAAAAD/AAAAAD1VV8AAAAAP8AAAAAPVVXwAAAAA/wAAAAA9VVfAAAAAD/AAAAAD1VV8AAAAAP8AAAAAPVVXwAAAAA/wAAAAA9VVfAAAAAD/AAAAAD1VV8AAAAAP8AAAAAPVVXwAAAAA/wAAAAA9VVfAAAAAD/AAAAAD1VV8AAAAAP8AAAAAPVVXwAAAAA/wAAAAA9VVfAAAAAD/AAAAAD1VV8AAAAAP8AAAAAD1VXwAAAAA/wAAAAAPVV8AAAAAD/AAAAAAP//AAAAAAP8AAAAAAP/wAAAAAA/wAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAD3wAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAD3wAAAAAAAAAAAAAA9XwAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAPVV8AAAAAAAAAAAAD1VX8AAAAAAAAAAAA9VVX8AAAAAAAAAAA/VVVV////////////1VVVV///////////1VVA="},
|
||||||
|
{"width" : "31", "buffer":"/////////////////////wAAAAAAAAP8AAAAAAAAD/AAAAAAAAA/wAAAAAAAAP8AAAAAAAAD/AAAAAAAAA/wAAAAAAAAP8AAAAAAAAD/AAAAAAAAA/wAAAAAAAAP8AAAAAAAAD/AAAAAAAAA/wAAAAAAAAP8AAAAAAAAD/AAAAAAAAA/wAAAAAAAAP///wAAAAAD////AAAAAA9VVV8AAAAAPVVVfAAAAAD1VVXwAAAAA9VVV8AAAAAPVVVfAAAAAD1VVXwAAAAA9VVV8AAAAAPVVVfAAAAAD1VVXwAAAAA9VVV8AAAAAPVVVfAAAAAD1VVXwAAAAA9VVV8AAAAAPVVVfAAAAAD1VVXwAAAAA9VVV8AAAAAPVVVfAAAAAD1VVXwAAAAA9VVV8AAAAAPVVVfAAAAAD1VVXwAAAAA9VVV8AAAAAPVVVfAAAAAD1VVXwAAAAA9VVV8AAAAAPVVVfAAAAAD1VVXwAAAAA9VVV8AAAAAPVVVfAAAAAD1VVXwAAAAA9VVV8AAAAAPVVVfAAAAAD1VVXwAAAAA9VVV8AAAAAPVVVfAAAAAD1VVXwAAAAA9VVV8AAAAAPVVVfAAAAAD1VVXwAAAAA9VVV8AAAAAPVVVfAAAAAD1VVXwAAAAA9VVV8AAAAAPVVVfAAAAAD1VVXwAAAAA9VVV8AAAAAPVVVfAAAAAD1VVXwAAAAA9VVV8AAAAAPVVVfAAAAAD1VVXwAAAAA9VVV8AAAAAPVVVfAAAAAD1VVXwAAAAA9VVV8AAAAAPVVVfAAAAAD1VVXwAAAAA9VVV8AAAAAPVVVfAAAAAD1VVXwAAAAA9VVV8AAAAAPVVVfAAAAAD1VVXwAAAAA9VVV8AAAAAPVVVfAAAAAD1VVXwAAAAA9VVV8AAAAAPVVVfAAAAAD1VVXwAAAAA9VVV8AAAAAPVVVfAAAAAD1VVXwAAAAA9VVV8AAAAAPVVVfAAAAAD1VVXwAAAAA9VVV8AAAAAPVVVfAAAAAD1VVX//////9VVV///////A"},
|
||||||
|
{"width" : "49", "buffer":"VVV//////////1VVVVV///////////1VVVX8AAAAAAAAAA/VVVX8AAAAAAAAAAA9VVXwAAAAAAAAAAAD1VXwAAAAAAAAAAAAPVV8AAAAAAAAAAAAA9V8AAAAAAAAAAAAAPVfAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAD18AAAAAAAAAAAAAAPfAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAD/AAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAP8AAAAAAP/wAAAAAD/AAAAAAP//AAAAAA/wAAAAAPVV8AAAAAP8AAAAAPVVfAAAAAD/AAAAAD1VV8AAAAA/wAAAAA9VVfAAAAAP8AAAAAPVVXwAAAAD/AAAAAD1VV8AAAAA/wAAAAA9VVfAAAAAP8AAAAAPVVXwAAAAD/AAAAAD1VV8AAAAA/wAAAAA9VVfAAAAAP8AAAAAPVVXwAAAAD/AAAAAD1VV8AAAAA///////9VVfAAAAAP///////VVXwAAAAD1VVVVVVVVV8AAAAA9VVVVVVVVVfAAAAAPVVVVVVVVVfAAAAAD1VVVVVVVVXwAAAAA9VVVVVVVVV8AAAAAPVVVVVVVVVfAAAAAD1VVVVVVVVXwAAAAA9VVVVVVVVXwAAAAAPVVVVVVVVV8AAAAAPVVVVVVVVVfAAAAAD1VVVVVVVVfAAAAAA9VVVVVVVVXwAAAAAPVVVVVVVVXwAAAAAD1VVVVVVVXwAAAAAD1VVVVVVVV8AAAAAA9VVVVVVVV8AAAAAA9VVVVVVVV8AAAAAAPVVVVVVVVfAAAAAAPVVVVVVVVfAAAAAAD1VVVVVVVfAAAAAAD1VVVVVVVXwAAAAAA9VVVVVVVXwAAAAAA9VVVVVVVXwAAAAAAPVVVVVVVV8AAAAAAPVVVVVVVV8AAAAAAD1VVVVVVV8AAAAAAD1VVVVVVV8AAAAAAD1VVVVVVVfAAAAAAD1VVVVVVVfAAAAAAA9VVVVVVVfAAAAAAA9VVVVVVVXwAAAAAAPVVVVVVVXwAAAAAAPVVVVVVVXwAAAAAAPVVVVVVVV8AAAAAAD1VVVVVVV8AAAAAAD1VVVVVVV8AAAAAAD1VVVVVVVfAAAAAAA9VVVVVVVfAAAAAAA9VVVVVVVfAAAAAAA9VVVVVVVfAAAAAAAPVVVVVVVXwAAAAAAPVVVVVVVXwAAAAAAPVVVVVVVXwAAAAAAD1VVVVVVV8AAAAAAD1VVVVVVV8AAAAAAD1VVVVVVV8AAAAAAA9VVVVVVVfAAAAAAAD///////fAAAAAAAAP//////3wAAAAAAAAAAAAAA98AAAAAAAAAAAAAAPfAAAAAAAAAAAAAAD3wAAAAAAAAAAAAAA98AAAAAAAAAAAAAAPfAAAAAAAAAAAAAAD3wAAAAAAAAAAAAAA98AAAAAAAAAAAAAAPfAAAAAAAAAAAAAAD3wAAAAAAAAAAAAAA98AAAAAAAAAAAAAAPfAAAAAAAAAAAAAAD3wAAAAAAAAAAAAAA98AAAAAAAAAAAAAAPfAAAAAAAAAAAAAAD3///////////////9////////////////A=="},
|
||||||
|
{"width" : "50", "buffer":"VVV//////////1VVVVVf//////////9VVVVfwAAAAAAAAAD/VVVX8AAAAAAAAAAA/VVV8AAAAAAAAAAAA9VVXwAAAAAAAAAAAA9VV8AAAAAAAAAAAAA9VfAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAD1XwAAAAAAAAAAAAAPV8AAAAAAAAAAAAAA9XwAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAPfAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAD3wAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAA98AAAAAAP/wAAAAAA/wAAAAAD//wAAAAAD/AAAAAA9VXwAAAAAP8AAAAAPVVXwAAAAA/wAAAAA9VVfAAAAAD/AAAAAD1VV8AAAAAP8AAAAAPVVXwAAAAA/wAAAAA9VVfAAAAAD/AAAAAD1VV8AAAAAP8AAAAAPVVXwAAAAA/wAAAAA9VVfAAAAAD/AAAAAD1VV8AAAAAP8AAAAAPVVXwAAAAA///////9VVfAAAAAD3//////1VV8AAAAA9VVVVVVVVVXwAAAAD1VVVVVVVVVfAAAAAPVVVVVVVVVV8AAAAA9VVVVVVVVVXwAAAAD1VVVVVVVVVfAAAAAPVVVVVVVVVXwAAAAA9VVVVVX///8AAAAAD1VVVVV////AAAAAAPVVVVVXwAAAAAAAAD1VVVVVfAAAAAAAAAPVVVVVV8AAAAAAAAA9VVVVVXwAAAAAAAAPVVVVVVfAAAAAAAAA9VVVVVV8AAAAAAAAPVVVVVVXwAAAAAAAA9VVVVVVfAAAAAAAAPVVVVVVV8AAAAAAAA9VVVVVVXwAAAAAAAA9VVVVVVfAAAAAAAAA9VVVVVV8AAAAAAAAA9VVVVVXwAAAAAAAAD1VVVVVfAAAAAAAAAPVVVVVV8AAAAAAAAAPVVVVVXwAAAAAAAAA9VVVVVf///wAAAAAD1VVVVVf///wAAAAAPVVVVVVVVVXwAAAAA9VVVVVVVVVXwAAAAD1VVVVVVVVVfAAAAAPVVVVVVVVVV8AAAAA9VVVVVVVVVXwAAAAD1VVVVVVVVVfAAAAAD1VVVVVVVVV8AAAAAPVVVVVVVVVXwAAAAA///////9VVfAAAAAD///////1VV8AAAAAP8AAAAAPVVXwAAAAA/wAAAAA9VVfAAAAAD/AAAAAD1VV8AAAAAP8AAAAAPVVXwAAAAA/wAAAAA9VVfAAAAAD/AAAAAD1VV8AAAAAP8AAAAAPVVXwAAAAA/wAAAAA9VVfAAAAAD/AAAAAD1VV8AAAAAP8AAAAAD1VfAAAAAA/wAAAAAPVV8AAAAAD/AAAAAAP//AAAAAAP8AAAAAAP/wAAAAAD3wAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAD18AAAAAAAAAAAAAAPXwAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAPXwAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAPVfAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAPVV8AAAAAAAAAAAAA9VV8AAAAAAAAAAAAPVVV8AAAAAAAAAAAD1VVV8AAAAAAAAAAD9VVVV////////////VVVVV///////////VVVA="},
|
||||||
|
{"width" : "59", "buffer":"VVVVVVVVVf//////1VVVVVVVVVVVX///////VVVVVVVVVVVVfAAAAAD1VVVVVVVVVVVXwAAAAAPVVVVVVVVVVVVfAAAAAD1VVVVVVVVVVVXwAAAAAPVVVVVVVVVVVVfAAAAAD1VVVVVVVVVVVXwAAAAAPVVVVVVVVVVVVfAAAAAD1VVVVVVVVVVVV8AAAAAPVVVVVVVVVVVVfAAAAAD1VVVVVVVVVVVXwAAAAAPVVVVVVVVVVVVfAAAAAD1VVVVVVVVVVVV8AAAAAPVVVVVVVVVVVVfAAAAAA9VVVVVVVVVVVV8AAAAAPVVVVVVVVVVVVfAAAAAA9VVVVVVVVVVVV8AAAAAPVVVVVVVVVVVVfAAAAAA9VVVVVVVVVVVV8AAAAAPVVVVVVVVVVVVfAAAAAA9VVVVVVVVVVVV8AAAAAPVVVVVVVVVVVVfAAAAAA9VVVVVVVVVVVV8AAAAAPVVVVVVVVVVVVfAAAAAA9VVVVVVVVVVVV8AAAAAPVVVVVVVVVVVVfAAAAAA9VVVVVVVVVVVV8AAAAAPVVVVVVVVVVVVfAAAAAA9VVVVVVVVVVVV8AAAAAPVVVVVVVVVVVVfAAAAAA9VVVVVVVVVVVV8AAAAAPVVVVVVVVVVVVfAAAAAA9VVVVVVVVVVVV8AAAAAPVVVVVVVVVVVVfAAAAAA9VVVVVVVVVVVV8AAAAAPVVVVVVVVVVVVfAAAAAA9VVVVVVVVVVVV8AAAAAPVVVVVVVVVVVVfAAAAAA9VVVVVVVVVVVV8AAAAAD1VVVVVVVVVVVXwAAAAA9VVVVVVVVVVVV8AAAAAD1VVVVVVVVVVVXwAAAAA9f//////VVVVV8AAAAAD1//////9VVVVXwAAAAA9XwAAAAD1VVVV8AAAAAD1fAAAAAPVVVVXwAAAAA9V8AAAAA9VVVV8AAAAAD1XwAAAAD1VVVXwAAAAA9VfAAAAAPVVVV8AAAAAD1V8AAAAA9VVVXwAAAAA9VXwAAAAD1VVV8AAAAAD1VfAAAAAPVVVXwAAAAA9VV8AAAAA9VVV8AAAAAD1VXwAAAAD1VVXwAAAAA9VVfAAAAAPVVV8AAAAAD1VV8AAAAA9VVXwAAAAA9VVXwAAAAD1VV8AAAAAD1VVfAAAAAPVVXwAAAAA9VVV8AAAAA9VVfAAAAAD1VVXwAAAAD1VV8AAAAA9VVVfAAAAAPVVXwAAAAD1VVV8AAAAA9VVfAAAAAD////AAAAAA///8AAAAAD///wAAAAAA///wAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAP//////////wAAAAAA//9//////////wAAAAAP//VVVVVVVVVVXwAAAAD1VVVVVVVVVVVVfAAAAAPVVVVVVVVVVVVV8AAAAA9VVVVVVVVVVVVXwAAAAD1VVVVVVVVVVVVfAAAAAPVVVVVVVVVVVVV8AAAAA9VVVVVVVVVVVVXwAAAAD1VVVVVVVVVVVVfAAAAAPVVVVVVVVVVVVV8AAAAA9VVVVVVVVVVVVXwAAAAD1VVVVVVVVVVVVfAAAAAPVVVVVVVVVVVVV8AAAAA9VVVVVVVVVVVVXwAAAAD1VVVVVVVVVVVVfAAAAAPVVVVVVVVVVVVV//////9VVVVVVVVVVVVX//////1VVA"},
|
||||||
|
{"width" : "51", "buffer":"f///////////////9f///////////////9fAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAA9fAAAAAAP////////9fAAAAAA/////////1fAAAAAD1VVVVVVVVVfAAAAAD1VVVVVVVVVfAAAAAD1VVVVVVVVVfAAAAAD1VVVVVVVVVfAAAAAD1VVVVVVVVVfAAAAAD1VVVVVVVVVfAAAAAD1VVVVVVVVVfAAAAAD1VVVVVVVVVfAAAAAD1VVVVVVVVVfAAAAAD1VVVVVVVVVfAAAAAD1VVVVVVVVVfAAAAAD1VVVVVVVVVfAAAAAD1VVVVVVVVVfAAAAAA/////1VVVVfAAAAAAP/////9VVVfAAAAAAAAAAAP/1VVfAAAAAAAAAAAAD9VVfAAAAAAAAAAAAAP1VfAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAPf////////8AAAAAAPf/////////AAAAAAPVVVVVVVVVXwAAAAAPVVVVVVVVVV8AAAAAPVVVVVVVVVV8AAAAAPVVVVVVVVVV8AAAAAPVVVVVVVVVV8AAAAAPVVVVVVVVVV8AAAAAPVVVVVVVVVV8AAAAAPVVVVVVVVVV8AAAAAPVVVVVVVVVV8AAAAAPVVVVVVVVVV8AAAAAPf//////VVV8AAAAAP///////VVV8AAAAAP8AAAAAPVVV8AAAAAP8AAAAAPVVV8AAAAAP8AAAAAPVVV8AAAAAP8AAAAAPVVV8AAAAAP8AAAAAPVVV8AAAAAP8AAAAAPVVV8AAAAAP8AAAAAPVVV8AAAAAP8AAAAAPVVV8AAAAAP8AAAAAPVVV8AAAAAP8AAAAAPVVV8AAAAAP8AAAAAPVVV8AAAAAP8AAAAAPVVV8AAAAAP8AAAAAD1VV8AAAAAP8AAAAAD1VXwAAAAAP8AAAAAA///AAAAAAP8AAAAAAP/8AAAAAAP8AAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAA9XwAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAPVV8AAAAAAAAAAAAAPVVfAAAAAAAAAAAAA9VVXwAAAAAAAAAAAD1VVX8AAAAAAAAAAA/VVVVf///////////9VVVVX///////////VVVA"},
|
||||||
|
{"width" : "50", "buffer":"VVV//////////1VVVVVf//////////9VVVVfwAAAAAAAAAD9VVVX8AAAAAAAAAAA/VVV8AAAAAAAAAAAA9VVfAAAAAAAAAAAAA9VV8AAAAAAAAAAAAA9VfAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAD1XwAAAAAAAAAAAAAPV8AAAAAAAAAAAAAA9XwAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAPfAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAD3wAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAA98AAAAAA//wAAAAAD3wAAAAAP//wAAAAAPfAAAAAD1VXwAAAAA98AAAAAPVVXwAAAAD3wAAAAA9VVfAAAAAPfAAAAAD1VV8AAAAA98AAAAAPVVXwAAAAD3wAAAAA9VVfAAAAAPfAAAAAD1VV8AAAAA98AAAAAPVVXwAAAAD3wAAAAA9VVfAAAAAPfAAAAAD1VV//////98AAAAAPVVX//////3wAAAAA9VVVVVVVVVfAAAAAD1VVVVVVVVV8AAAAAPVVVVVVVVVXwAAAAA9VVVVVVVVVfAAAAAD1VVVVVVVVV8AAAAAPVVVVVVVVVXwAAAAA9VVVVVVVVVfAAAAAD1VVVVVVVVV8AAAAAD/////1VVVXwAAAAAD//////1VVfAAAAAAAAAAAD/9VV8AAAAAAAAAAAAD9VXwAAAAAAAAAAAAA9VfAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAA9XwAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAD3wAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAP8AAAAAA//8AAAAAA/wAAAAAP//8AAAAAD/AAAAAD1VV8AAAAAP8AAAAAPVVV8AAAAA/wAAAAA9VVXwAAAAD/AAAAAD1VVfAAAAAP8AAAAAPVVV8AAAAA/wAAAAA9VVXwAAAAD/AAAAAD1VVfAAAAAP8AAAAAPVVV8AAAAA/wAAAAA9VVXwAAAAD/AAAAAD1VVfAAAAAP8AAAAAPVVV8AAAAA/wAAAAA9VVXwAAAAD/AAAAAD1VVfAAAAAP8AAAAAPVVV8AAAAA/wAAAAA9VVXwAAAAD/AAAAAD1VVfAAAAAP8AAAAAPVVV8AAAAA/wAAAAA9VVXwAAAAD/AAAAAD1VVfAAAAAP8AAAAAPVVV8AAAAA/wAAAAAPVVfAAAAAD/AAAAAAP//wAAAAAP8AAAAAAP/8AAAAAA/wAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAA98AAAAAAAAAAAAAAD3wAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAD3wAAAAAAAAAAAAAA9XwAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAD1V8AAAAAAAAAAAAAPVV8AAAAAAAAAAAAD1VX8AAAAAAAAAAAA9VVX8AAAAAAAAAAA/VVVV////////////1VVVV///////////1VVA="},
|
||||||
|
{"width" : "48", "buffer":"////////////////////////////////8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAAP8AAAAAAAAAAAAAA98AAAAAAAAAAAAAA98AAAAAAAAAAAAAA9////////wAAAAAA9////////8AAAAAD1VVVVVVVVfAAAAAD1VVVVVVVVfAAAAAD1VVVVVVVVfAAAAAD1VVVVVVVV8AAAAAPVVVVVVVVV8AAAAAPVVVVVVVVV8AAAAAPVVVVVVVVV8AAAAA9VVVVVVVVXwAAAAA9VVVVVVVVXwAAAAA9VVVVVVVVXwAAAAA9VVVVVVVVfAAAAAD1VVVVVVVVfAAAAAD1VVVVVVVVfAAAAAD1VVVVVVVVfAAAAAD1VVVVVVVV8AAAAAPVVVVVVVVV8AAAAAPVVVVVVVVV8AAAAAPVVVVVVVVXwAAAAAPVVVVVVVVXwAAAAA9VVVVVVVVXwAAAAA9VVVVVVVVXwAAAAA9VVVVVVVVfAAAAAA9VVVVVVVVfAAAAAD1VVVVVVVVfAAAAAD1VVVVVVVVfAAAAAD1VVVVVVVV8AAAAAPVVVVVVVVV8AAAAAPVVVVVVVVV8AAAAAPVVVVVVVVXwAAAAAPVVVVVVVVXwAAAAA9VVVVVVVVXwAAAAA9VVVVVVVVXwAAAAA9VVVVVVVVfAAAAAA9VVVVVVVVfAAAAAD1VVVVVVVVfAAAAAD1VVVVVVVV8AAAAAD1VVVVVVVV8AAAAAD1VVVVVVVV8AAAAAPVVVVVVVVV8AAAAAPVVVVVVVVXwAAAAAPVVVVVVVVXwAAAAAPVVVVVVVVXwAAAAA9VVVVVVVVXwAAAAA9VVVVVVVVfAAAAAA9VVVVVVVVfAAAAAD1VVVVVVVVfAAAAAD1VVVVVVVV8AAAAAD1VVVVVVVV8AAAAAD1VVVVVVVV8AAAAAPVVVVVVVVV8AAAAAPVVVVVVVVXwAAAAAPVVVVVVVVXwAAAAAPVVVVVVVVXwAAAAA9VVVVVVVVfAAAAAA9VVVVVVVVfAAAAAA9VVVVVVVVfAAAAAA9VVVVVVVVfAAAAAD1VVVVVVVV8AAAAAD1VVVVVVVV8AAAAAD1VVVVVVVV8AAAAAD1VVVVVVVV8AAAAAPVVVVVVVVXwAAAAAPVVVVVVVVXwAAAAAPVVVVVVVVXwAAAAA9VVVVVVVVfAAAAAA9VVVVVVVVfAAAAAA9VVVVVVVVfAAAAAA9VVVVVVVVfAAAAAD1VVVVVVVV8AAAAAD1VVVVVVVV8AAAAAD1VVVVVVVV8AAAAAD1VVVVVVVXwAAAAAPVVVVVVVVXwAAAAAPVVVVVVVVXwAAAAAPVVVVVVVVXwAAAAA9VVVVVVVVfAAAAAA9VVVVVVVVf//////9VVVVVVVVf//////9VVVVVVV"},
|
||||||
|
{"width" : "51", "buffer":"VVV///////////VVVVVX///////////1VVVV/AAAAAAAAAAA/VVVX8AAAAAAAAAAAP1VVfAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAPVV8AAAAAAAAAAAAAPVXwAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAA98AAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAP8AAAAAAP/8AAAAAAP8AAAAAA///AAAAAAP8AAAAAD1VXwAAAAAP8AAAAAPVVV8AAAAAP8AAAAA9VVV8AAAAAP8AAAAA9VVVfAAAAAP8AAAAA9VVVfAAAAAP8AAAAA9VVVfAAAAAP8AAAAA9VVVfAAAAAP8AAAAA9VVVfAAAAAP8AAAAA9VVVfAAAAAP8AAAAA9VVVfAAAAAP8AAAAA9VVVfAAAAAP8AAAAA9VVVfAAAAAP8AAAAA9VVVfAAAAAP8AAAAA9VVVfAAAAAP8AAAAA9VVVfAAAAAP8AAAAA9VVVfAAAAAP8AAAAA9VVVfAAAAAP8AAAAA9VVVfAAAAA98AAAAA9VVVfAAAAA9fAAAAAPVVV8AAAAA9fAAAAAPVVV8AAAAA9fAAAAAD///wAAAAA9fAAAAAA///AAAAAA9XwAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAPVV8AAAAAAAAAAAAAPVVfAAAAAAAAAAAAA9VVXwAAAAAAAAAAAD1VVXwAAAAAAAAAAAA9VVfAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAPVXwAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAA9fAAAAAA///AAAAAA9fAAAAAD///wAAAAA9fAAAAAPVVV8AAAAA98AAAAAPVVV8AAAAAP8AAAAA9VVVfAAAAAP8AAAAA9VVVfAAAAAP8AAAAA9VVVfAAAAAP8AAAAA9VVVfAAAAAP8AAAAA9VVVfAAAAAP8AAAAA9VVVfAAAAAP8AAAAA9VVVfAAAAAP8AAAAA9VVVfAAAAAP8AAAAA9VVVfAAAAAP8AAAAA9VVVfAAAAAP8AAAAA9VVVfAAAAAP8AAAAA9VVVfAAAAAP8AAAAA9VVVfAAAAAP8AAAAA9VVVfAAAAAP8AAAAA9VVVfAAAAAP8AAAAA9VVVfAAAAAP8AAAAA9VVVfAAAAAP8AAAAA9VVVfAAAAAP8AAAAAPVVV8AAAAAP8AAAAAPVVV8AAAAAP8AAAAAD///wAAAAAP8AAAAAA///AAAAAAP8AAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAA9XwAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAPVV8AAAAAAAAAAAAAPVVfAAAAAAAAAAAAA9VVXwAAAAAAAAAAAD1VVX8AAAAAAAAAAA/VVVVf///////////9VVVVX///////////VVVA"},
|
||||||
|
{"width" : "50", "buffer":"VVV//////////9VVVVV////////////VVVVfwAAAAAAAAAA/VVVXwAAAAAAAAAAAP1VV8AAAAAAAAAAAAPVVfAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAPVfAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAA9fAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAP8AAAAAA//8AAAAAA/wAAAAAP//8AAAAAD/AAAAAD1VV8AAAAAP8AAAAAPVVV8AAAAA/wAAAAA9VVXwAAAAD/AAAAAPVVVfAAAAAP8AAAAA9VVV8AAAAA/wAAAAD1VVXwAAAAD/AAAAAPVVVfAAAAAP8AAAAA9VVV8AAAAA/wAAAAD1VVXwAAAAD/AAAAAPVVVfAAAAAP8AAAAA9VVV8AAAAA/wAAAAD1VVXwAAAAD/AAAAAPVVVfAAAAAP8AAAAA9VVV8AAAAA/wAAAAD1VVXwAAAAD/AAAAAPVVVfAAAAAP8AAAAA9VVV8AAAAA/wAAAAD1VVXwAAAAD/AAAAAPVVVfAAAAAP8AAAAA9VVV8AAAAA/wAAAAA9VVXwAAAAD/AAAAAD1VVfAAAAAP8AAAAAD1VV8AAAAA/wAAAAAD///AAAAAD/AAAAAAD//wAAAAAP8AAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAD3wAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAPV8AAAAAAAAAAAAAA9XwAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAPVX8AAAAAAAAAAAAA9VX8AAAAAAAAAAAAD1VV//AAAAAAAAAAAPVVV///////AAAAAA9VVVVf/////AAAAAD1VVVVVVVVVfAAAAAPVVVVVVVVVV8AAAAA9VVVVVVVVVXwAAAAD1VVVVVVVVVfAAAAAPVVVVVVVVVV8AAAAA9VVVVVVVVVXwAAAAD1VVVVVVVVVfAAAAAPVVVVVVVVVV8AAAAA9//////9VVXwAAAAD3//////1VVfAAAAAPfAAAAAPVVV8AAAAA98AAAAA9VVXwAAAAD3wAAAAD1VVfAAAAAPfAAAAAPVVV8AAAAA98AAAAA9VVXwAAAAD3wAAAAD1VVfAAAAAPfAAAAAD1VV8AAAAA98AAAAAPVVfAAAAAD3wAAAAAP//wAAAAAPfAAAAAAP/8AAAAAA98AAAAAAAAAAAAAAD3wAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAA98AAAAAAAAAAAAAAD3wAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAA9XwAAAAAAAAAAAAAD1XwAAAAAAAAAAAAA9VfAAAAAAAAAAAAAD1VfAAAAAAAAAAAAA9VV8AAAAAAAAAAAAD1VV8AAAAAAAAAAAA9VVV/AAAAAAAAAAA/VVVV////////////1VVVVf//////////1VVA="},
|
||||||
|
{"width" : "20", "buffer":"VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//////////////AAAAAP8AAAAA/wAAAAD/AAAAAP8AAAAA/wAAAAD/AAAAAP8AAAAA/wAAAAD/AAAAAP8AAAAA/wAAAAD/AAAAAP8AAAAA/wAAAAD/AAAAAP8AAAAA/wAAAAD/AAAAAP8AAAAA/wAAAAD/AAAAAP8AAAAA//////////////VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/////////////wAAAAD/AAAAAP8AAAAA/wAAAAD/AAAAAP8AAAAA/wAAAAD/AAAAAP8AAAAA/wAAAAD/AAAAAP8AAAAA/wAAAAD/AAAAAP8AAAAA/wAAAAD/AAAAAP8AAAAA/wAAAAD/AAAAAP8AAAAA//////////////"}
|
||||||
|
]
|
||||||
|
}
|
|
@ -0,0 +1,17 @@
|
||||||
|
{
|
||||||
|
"name":"Yumaro",
|
||||||
|
"size":"88",
|
||||||
|
"characters":[
|
||||||
|
{"width" : "59", "buffer":"VVVVVVV/////1VVVVVVVVVVVVV///////VVVVVVVVVVVVfwAAAAD/1VVVVVVVVVVXwAAAAAAP1VVVVVVVVVV8AAAAAAAD9VVVVVVVVVfAAAAAAAAD9VVVVVVVVXwAAAAAAAAA9VVVVVVVV8AAAAAAAAAA9VVVVVVVfAAAAAAAAAAA9VVVVVVV8AAAAAAAAAAA9VVVVVVfAAAAAAAAAAAD1VVVVVXwAAAAAAAAAAAD1VVVVV8AAAAAAAAAAAAD1VVVVXwAAAAAAAAAAAAPVVVVV8AAAAAAAAAAAAAPVVVVXwAAAAAAAAAAAAA9VVVV8AAAAAAAAAAAAAA9VVVXwAAAAAAPwAAAAAD1VVV8AAAAAAP/wAAAAAPVVVXwAAAAAD9XwAAAAAPVVV8AAAAAA9VXwAAAAA9VVXwAAAAAPVVXwAAAAA9VV8AAAAAD1VVfAAAAAD1VXwAAAAAPVVVfAAAAAPVVfAAAAAD1VVV8AAAAA9VXwAAAAAPVVVV8AAAAD1VfAAAAAD1VVVXwAAAAD1V8AAAAAPVVVVXwAAAAPVfAAAAAD1VVVVfAAAAA9V8AAAAAPVVVVV8AAAAD1XwAAAAA9VVVVXwAAAAPVfAAAAAPVVVVVfAAAAAPV8AAAAA9VVVVVfAAAAA9fAAAAAD1VVVVV8AAAAD18AAAAA9VVVVVXwAAAAPXwAAAAD1VVVVVfAAAAA9fAAAAAPVVVVVV8AAAAD18AAAAA9VVVVVXwAAAAPXwAAAAPVVVVVVfAAAAA9fAAAAA9VVVVVV8AAAAD3wAAAAD1VVVVVXwAAAAD/AAAAAPVVVVVVfAAAAAP8AAAAA9VVVVVV8AAAAA/wAAAAD1VVVVVXwAAAAD/AAAAAPVVVVVVfAAAAAP8AAAAA9VVVVVV8AAAAA/wAAAAD1VVVVVXwAAAAD/AAAAAPVVVVVVfAAAAAP8AAAAA9VVVVVXwAAAAA/wAAAAD1VVVVVfAAAAAD/AAAAAPVVVVVV8AAAAAP8AAAAA9VVVVVXwAAAAA/wAAAAD1VVVVVfAAAAAD/AAAAAPVVVVVV8AAAAA98AAAAAPVVVVVXwAAAAD3wAAAAA9VVVVV8AAAAAPfAAAAAD1VVVVXwAAAAA9fAAAAAPVVVVVfAAAAAD18AAAAA9VVVVV8AAAAA9XwAAAAD1VVVVfAAAAAD1fAAAAAD1VVVV8AAAAAPV8AAAAAPVVVVfAAAAAA9XwAAAAA9VVVV8AAAAAPVXwAAAAD1VVVXwAAAAA9VfAAAAAPVVVV8AAAAAD1V8AAAAA9VVVXwAAAAA9VV8AAAAA9VVV8AAAAAD1VXwAAAAD1VVfAAAAAA9VVfAAAAAD1VV8AAAAAD1VVfAAAAAD1VfAAAAAA9VVV8AAAAAD9fwAAAAAD1VVV8AAAAAD/8AAAAAA9VVVXwAAAAAA8AAAAAAPVVVVXwAAAAAAAAAAAAA9VVVVfAAAAAAAAAAAAAPVVVVVfAAAAAAAAAAAAD1VVVVVfAAAAAAAAAAAA9VVVVVV8AAAAAAAAAAAPVVVVVVV8AAAAAAAAAAD1VVVVVVV8AAAAAAAAAA9VVVVVVVV/AAAAAAAAAPVVVVVVVVV/AAAAAAAAD1VVVVVVVVVfwAAAAAAD9VVVVVVVVVVf8AAAAAA/VVVVVVVVVVVX/AAAAA/VVVVVVVVVVVVV//wA//1VVVVVVVVVVVVVf////1VVVVVVVVVVVVVVVX/1VVVVVVVVU="},
|
||||||
|
{"width" : "37", "buffer":"VVVVVVX///1VVVVVVVf////1VVVVVVfwAAA/VVVVVVfAAAAA9VVVVVfAAAAAD1VVVVfAAAAAA9VVVVfAAAAAAD1VVVfAAAAAAA9VVVfAAAAAAAPVVVfAAAAAAAD1VVfAAAAAAAA9VVfAAAAAAAAPVVfAAAAAAAAD1VfAAAAAAAAA9VXwAAAAAAAAPVXwAAAAAAAAD1XwAAAAAAAAA9V8AAAAAAAAAPV8AAAAAAAAAD18AAAAAAAAAA9fAAAAAAAAAAPfAAAAAAAAAAD/AAAAAAAAAAA/wAAAAAAAAAAP8AAAAAAAAAAD/AAAAAAAAAAA/wAAAAAAAAAAP8AAAAAAAAAAD/AAAAAAAAAAA/wAAAAAAAAAA98AAAAAAAAAAPfAAAAAAAAAAD18AAAAAAAAAA9fwAAAAAAAAAPVf8AAAAAAAAD1V////AAAAAA9VVf//8AAAAAPVVVVVXwAAAAD1VVVVV8AAAAA9VVVVVfAAAAAPVVVVVXwAAAAD1VVVVV8AAAAA9VVVVVfAAAAAPVVVVVXwAAAAD1VVVVV8AAAAA9VVVVVfAAAAAPVVVVVXwAAAAD1VVVVV8AAAAA9VVVVVfAAAAAPVVVVVXwAAAAD1VVVVV8AAAAA9VVVVVfAAAAAPVVVVVfAAAAAD1VVVVXwAAAAA9VVVVV8AAAAAPVVVVVfAAAAAD1VVVVXwAAAAA9VVVVV8AAAAAPVVVVVfAAAAAD1VVVVV8AAAAA9VVVVVfAAAAAPVVVVVXwAAAAD1VVVVV8AAAAA9VVVVVfAAAAAPVVVVVXwAAAAD1VVVVV8AAAAA9VVVVVfAAAAAPVVVVVV8AAAAD1VVVVVfAAAAA9VVVVVXwAAAAPVVVVVV8AAAAA9VVVVVfAAAAAPVVVVVXwAAAAD1VVVVVfAAAAA9VVVVVXwAAAAPVVVVVV8AAAAD1VVVVVfAAAAA9VVVVVXwAAAAPVVVVVV8AAAAD1VVVVVXwAAAA9VVVVVV8AAAAPVVVVVVfAAAAD1VVVVVV8AAAD9VVVVVVfAAAD9VVVVVVV/AAP1VVVVVVVX///1VVVVVVVVX//VVVVVVVVVVVVVVQ=="},
|
||||||
|
{"width" : "52", "buffer":"VVVVVV///////VVVVVVVVVf////////1VVVVVVX/8AAAAAAD/1VVVVVf/AAAAAAAAA/VVVVVfwAAAAAAAAAA/VVVVfAAAAAAAAAAAD1VVVfAAAAAAAAAAAAPVVVfAAAAAAAAAAAAA9VVfAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAA9XwAAAAP/AAAAAAAAPV8AAAA///AAAAAAAD1XwAAP/VX8AAAAAAA9V/AD/9VVXwAAAAAA9VX///VVVVfAAAAAAPVVX/1VVVVXwAAAAAD1VVVVVVVVVfAAAAAA9VVVVVVVVVXwAAAAAPVVVVVVVVVXwAAAAAPVVVVVVVVVV8AAAAAD1VVVVVVVVVfAAAAAA9VVVVVVVVVfAAAAAA9VVVVVVVVVfAAAAAAPVVVVVVVVVXwAAAAAPVVVVVVVVVXwAAAAAD1VVVVVVVVXwAAAAAD1VVVVVVVVXwAAAAAA9VVVVVVVVXwAAAAAA9VVVVVVVVV8AAAAAA9VVVVVVVVV8AAAAAAPVVVVVVVVV8AAAAAAPVVVVVVVVVfAAAAAAPVVVVVVVVVfAAAAAAD1VVVVVVVVfAAAAAAD1VVVVVVVVXwAAAAAD1VVVVVVVVXwAAAAAD1VVVVVVVVXwAAAAAA9VVVVVVVVXwAAAAAA9VVVVVVVVV8AAAAAA9VVVVVVVVV8AAAAAA9VVVVVVVVV8AAAAAAPVVVVVVVVVfAAAAAAPVVVVVVVVVfAAAAAAPVVVVVVVVVXwAAAAAPVVVVVVVVVXwAAAAAD1VVVVVVVVXwAAAAAD1VVVVVVVVV8AAAAAD1VVVVVVVVV8AAAAAD1VVVVVVVVV8AAAAAA9VVVVVVVVVfAAAAAA9VVVVVVVVVfAAAAAA9VVVVVVVVVXwAAAAAPVVVVVVVVVXwAAAAAPVVVVVVVVVXwAAAAAD1VVVVVVVVV8AAAAAD1VVVVVVVVV8AAAAAA9VVVVVVVVVfAAAAAA9VVVVVVVVVXwAAAAAPVVVVVVVVVXwAAAAAPVVVVVVVVVV8AAAAAD1VVVVVVVVV8AAAAAA9VVVVVVVVVfAAAAAAPVVVVVVVVVXwAAAAAA9VVVVVVVVXwAAAAAAD////9VVVV8AAAAAAAP/////1VVfAAAAAAAAAAAAP/1VXwAAAAAAAAAAAAA/VXwAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAA9XwAAAAAAAAAAAAAAPV8AAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAA9VfAAAAAAAAAAAAAD/VV/AAAAAAAAAAP///VVX//wAAAAA/////1VVVX//////////VVVVVVVVV/////9VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVQ=="},
|
||||||
|
{"width" : "52", "buffer":"VVVVX///////9VVVVVVVX/////////9VVVVVV//wAAAAAAAP9VVVVX/wAAAAAAAAAP1VVVf8AAAAAAAAAAAPVVVfwAAAAAAAAAAAA9VVfAAAAAAAAAAAAAD1VXwAAAAAAAAAAAAAPVXwAAAAAAAAAAAAAD1VfAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAA9VfAAAAD/wAAAAAAAPVV/wP/////AAAAAAD1VX////1V//AAAAAA9VVV/VVVVVX8AAAAAPVVVVVVVVVVXwAAAAA9VVVVVVVVVVfAAAAAPVVVVVVVVVVXwAAAAD1VVVVVVVVVV8AAAAA9VVVVVVVVVVfAAAAA9VVVVVVVVVVXwAAAAPVVVVVVVVVVXwAAAAD1VVVVVVVVVXwAAAAA9VVVVVVVVVXwAAAAAPVVVVVVVVVXwAAAAAPVVVVVVVVVXwAAAAAD1VVVVVVVVfwAAAAAA9VVVVVVVVfwAAAAAA9VVVVVVVV/AAAAAAAPVVVVVVVV/AAAAAAAPVVVVVVVX8AAAAAAAD1VVVVVVX8AAAAAAAD1VVVVVVfwAAAAAAAD1VVVVVVfwAAAAAAAA9VVVVVVfAAAAAAAAA9VVVVVVfAAAAAAAAA9VVVVVVfAAAAAAAAA9VVVVVVXwAAAAAAAA9VVVVVVV8AAAAAAAAPVVVVVVV8AAAAAAAAA9VVVVVVfAAAAAAAAAD1VVVVVXwAAAAAAAAAP1VVVVV8AAAAAAAAAA/VVVVVfAAAAAAAAAAA9VVVVV8AAAAAAAAAAD1VVVVfAAAAAAAAAAAPVVVVV///AAAAAAAAD1VVVVX///8AAAAAAAPVVVVVVVX/8AAAAAAA9VVVVVVVVfwAAAAAAPVVVVVVVVVfAAAAAAA9VVVVVVVVV8AAAAAAPVVVVVVVVVXwAAAAAA9VVVVVVVVV8AAAAAAPVVVVVVVVVXwAAAAAD1VVVVVVVVV8AAAAAA9VVVVVVVVVfAAAAAAD1VVVVVVVVXwAAAAAA9VVVVVVVVV8AAAAAAPVVVVVVVVVfAAAAAAD1VVVVVVVVfAAAAAAA9VVVVVVVVfAAAAAAAPVVVVVVVVfAAAAAAAPVVVVVVVVfAAAAAAAD1VVVVVVVfAAAAAAAA9VVVVVVV/AAAAAAAAPVVVVVVf/AAAAAAAAPVVVVX//8AAAAAAAAD1VVf///AAAAAAAAAD1VVf/wAAAAAAAAAAA9VVXwAAAAAAAAAAAA9VVXwAAAAAAAAAAAA9VVV8AAAAAAAAAAAA9VVVfAAAAAAAAAAAA9VVVfAAAAAAAAAAAA9VVVXwAAAAAAAAAAA9VVVV8AAAAAAAAAAD9VVVVfAAAAAAAAAAD9VVVVXwAAAAAAAAA/1VVVVVfwAAAAAAAP/1VVVVVV/wAAAAAP/9VVVVVVVV/8AAAA//VVVVVVVVVV//wAP/VVVVVVVVVVVVf///9VVVVVVVVVVVVVV//VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVQ=="},
|
||||||
|
{"width" : "62", "buffer":"VVV////1VVVVVVVVVVVVVVX/////1VVVVVVVVVVVVVV/wAAAD1VVVVVVVVVVVVVfAAAAAD1VVVVVVVVVVVVXwAAAAAPVVVVVVVVVVVVVfAAAAAA9VVVVVVVVVVVVV8AAAAAA9VVVVVVVVVVVVXwAAAAAD1VVVVVVVVVVVV8AAAAAAPVVVVV/VVVVVVXwAAAAAD1VVVX//9VVVVVfAAAAAAPVVVX/wP/VVVVV8AAAAAA9VVVfAAA/VVVVXwAAAAAD1VVXwAAAPVVVV8AAAAAA9VVVfAAAA9VVVXwAAAAAD1VVV8AAAA9VVVfAAAAAAPVVVXwAAAD1VVV8AAAAAD1VVVfAAAAD1VVXwAAAAAPVVVXwAAAAPVVVfAAAAAA9VVVfAAAAA9VVV8AAAAAD1VVV8AAAAD1VVfAAAAAAPVVVXwAAAAPVVV8AAAAAD1VVVfAAAAA9VVXwAAAAAPVVVV8AAAAD1VVfAAAAAA9VVVXwAAAAPVVV8AAAAAD1VVVfAAAAA9VVXwAAAAAPVVVV8AAAAD1VVfAAAAAA9VVVXwAAAAPVVV8AAAAAD1VVVfAAAAA9VVXwAAAAAPVVVXwAAAAD1VVfAAAAAD1VVVfAAAAAPVVV8AAAAAPVVVV8AAAAD1VVXwAAAAA9VVVXwAAAAPVVVfAAAAAD1VVVfAAAAA9VVV8AAAAAPVVVV8AAAAD1VVXwAAAAA9VVVXwAAAAPVVVfAAAAAD1VVVfAAAAA9VVV8AAAAAPVVVV8AAAAD1VVXwAAAAA9VVVXwAAAAPVVVfAAAAAD1VVVfAAAAA9VVV8AAAAAD1VVV8AAAAD1VVXwAAAAAPVVVXwAAAAPVVVfAAAAAA9VVVfAAAAA9VVV8AAAAAD1VVV8AAAAD1VVXwAAAAAD1VVXwAAAAPVVVfAAAAAAPVVVfAAAAA9VVV8AAAAAAPVVV8AAAAD1VVXwAAAAAAP1VXwAAAAPVVVXwAAAAAAP1V8AAAAAP1VVfAAAAAAAD//AAAAAAP/9V8AAAAAAAD/wAAAAAAD//V8AAAAAAAAAAAAAAAAAA9XwAAAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAAAAPVV/AAAAAAAAAAAAAAAAD1VV/wAAAAAAAAAAAAAAAPVVVf/AAAAAAAAAAAAAAP1VVVX//AAAAAAAAAAAA/9VVVVVf//AAAAAAAAAA/9VVVVVVVf//wAAAAAAAP1VVVVVVVVVf//AAAAAAD1VVVVVVVVVVVX/AAAAAAPVVVVVVVVVVVVVfAAAAAA9VVVVVVVVVVVVV8AAAAAD1VVVVVVVVVVVVXwAAAAAPVVVVVVVVVVVVV8AAAAAA9VVVVVVVVVVVVXwAAAAAD1VVVVVVVVVVVVXwAAAAAPVVVVVVVVVVVVVfAAAAAA9VVVVVVVVVVVVV8AAAAAD1VVVVVVVVVVVVXwAAAAAPVVVVVVVVVVVVVfAAAAAA9VVVVVVVVVVVVV8AAAAAPVVVVVVVVVVVVVV8AAAAA9VVVVVVVVVVVVVXwAAAAD1VVVVVVVVVVVVVfAAAAAPVVVVVVVVVVVVVV8AAAAA9VVVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVVV8AAAA9VVVVVVVVVVVVVVXwAAAPVVVVVVVVVVVVVVVXwAAP1VVVVVVVVVVVVVVVX8AP9VVVVVVVVVVVVVVVVX//9VVVVVVVVVVVVVVVVVV/9VVVVVVVVVVVVVVVVVVVVVVVVVVU="},
|
||||||
|
{"width" : "48", "buffer":"VVV////////1VVVVVVf/////////9VVVVV/AAAAAAAAP/9VVVXwAAAAAAAAAD/1VVfAAAAAAAAAAAD9VV8AAAAAAAAAAAAPVV8AAAAAAAAAAAAPVXwAAAAAAAAAAAAD1XwAAAAAAAAAAAAD1XwAAAAAAAAAAAAD1fAAAAAAAAAAAAAD1fAAAAAAAAAAAAAPVfAAAAAAAAAAAAAPVfAAAAAAP/wAAAAPVfAAAAAA////8AD9V8AAAAAD1Vf////1V8AAAAAPVVVVX/9VV8AAAAAPVVVVVVVVV8AAAAAPVVVVVVVVV8AAAAAPVVVVVVVVV8AAAAAPVVVVVVVVV8AAAAAPVVVVVVVVV8AAAAAPVVVVVVVVV8AAAAAPVVVVVVVVV8AAAAAPVVVVVVVVV8AAAAAPVVVVVVVVV8AAAAAPVVVVVVVVV8AAAAAPVVVVVVVVV8AAAAAPVVVVVVVVV8AAAAAPVVVVVVVVV8AAAAAD1VVVVVVVV8AAAAAD1VVVVVVVV8AAAAAD1VVVVVVVV8AAAAAD1VVVVVVVVfAAAAAD1VVVVVVVVfAAAAAA9VVVVVVVVfAAAAAAP1VVVVVVVfAAAAAAD//1VVVVVfAAAAAAAP//1VVVVfAAAAAAAAAP/VVVVfAAAAAAAAAAP9VVVfAAAAAAAAAAA/VVVfAAAAAAAAAAAD9VVfAAAAAAAAAAAA/VVfAAAAAAAAAAAAD1VfAAAAAAAAAAAAA9VfAAAAAAAAAAAAA9VXwAAAAAAAAAAAAPVXwAAAAAAAAAAAAD1V/wAAAAAAAAAAAD1Vf/8AAAAAAAAAAA9VVf////8AAAAAAA9VVVX////wAAAAAA9VVVVVVVX8AAAAAA9VVVVVVVVfAAAAAAPVVVVVVVVfAAAAAAPVVVVVVVVXwAAAAAPVVVVVVVVXwAAAAAPVVVVVVVVXwAAAAAPVVVVVVVVfAAAAAAPVVVVVVVVfAAAAAAPVVVVVVVVfAAAAAA9VVVVVVVV8AAAAAA9VVVVVVVXwAAAAAA9VVVVVVVXwAAAAAA9VVVVVVVfAAAAAAD1VVVVVVV8AAAAAAD1VVVVVVXwAAAAAAPVVVVVVV/AAAAAAAPVVVVVVX8AAAAAAAPVVVVVVfAAAAAAAA9VVVVVV8AAAAAAAA9VVVVVXwAAAAAAAD1VVVVVfAAAAAAAAPVVVVVV8AAAAAAAAPVVVVVV8AAAAAAAA9VVVVVXwAAAAAAAD1VVVVVV8AAAAAAAD1VVVVVV8AAAAAAAPVVVVVVV8AAAAAAD9VVVVVVVfAAAAAAP1VVVVVVVXwAAAAA9VVVVVVVVV8AAAAP1VVVVVVVVVfwAAA/VVVVVVVVVVX/AAP1VVVVVVVVVVVf///VVVVVVVVVVVVV//1VVVVVVVVVVVVVVVVVVVVVV"},
|
||||||
|
{"width" : "56", "buffer":"VVVVVVVV////1VVVVVVVVVVVVV/////1VVVVVVVVVVVVfwAAAD1VVVVVVVVVVVXwAAAAPVVVVVVVVVVVX8AAAAAPVVVVVVVVVVV/AAAAAA9VVVVVVVVVVfAAAAAAD1VVVVVVVVVXwAAAAAA9VVVVVVVVVV8AAAAAAD1VVVVVVVVVfAAAAAAA9VVVVVVVVVXwAAAAAAPVVVVVVVVVVfAAAAAAD1VVVVVVVVVXwAAAAAA9VVVVVVVVVVfAAAAAAPVVVVVVVVVVXwAAAAAD1VVVVVVVVVVfAAAAAA9VVVVVVVVVVV8AAAAAPVVVVVVVVVVVfAAAAAD1VVVVVVVVVVV8AAAAAPVVVVVVVVVVVfAAAAAD1VVVVVVVVVVV8AAAAA9VVVVVVVVVVVfAAAAAD1VVVVVVVVVVV8AAAAA9VVVVVVVVVVVfAAAAAPVVVVVVVVVVVV8AAAAA9VVVVVVVVVVVfAAAAAPVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVXwAAAAPVVVVVVVVVVVV8AAAAA9f//VVVVVVVVXwAAAAA/////VVVVVVVfAAAAAA8AAP/1VVVVVXwAAAAAAAAAAP9VVVVVfAAAAAAAAAAAD/VVVVV8AAAAAAAAAAAA/VVVVfAAAAAAAAAAAAAPVVVV8AAAAAAAAAAAAAPVVVXwAAAAAAAAAAAAAPVVVfAAAAAAAAAAAAAAPVVXwAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAA9VXwAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAA9V8AAAAAAD/8AAAAAAD1XwAAAAAA///AAAAAAD18AAAAAAPVV/AAAAAAPXwAAAAAD1VVfAAAAAAPfAAAAAA9VVVfAAAAAA98AAAAAD1VVV8AAAAAD3wAAAAAPVVVV8AAAAAPfAAAAAA9VVVXwAAAAAP8AAAAAD1VVVfAAAAAA/wAAAAAPVVVV8AAAAAD/AAAAAA9VVVXwAAAAAP8AAAAAD1VVVfAAAAAA/wAAAAAPVVVV8AAAAAD/AAAAAA9VVVXwAAAAAP8AAAAAD1VVVfAAAAAA/wAAAAAD1VVV8AAAAAD/AAAAAAPVVVXwAAAAA9fAAAAAA9VVVfAAAAAD18AAAAAD1VVXwAAAAAPXwAAAAAPVVVfAAAAAA9XwAAAAAPVVV8AAAAAD1fAAAAAA9VVfAAAAAA9VfAAAAAD1VV8AAAAAD1V8AAAAAD1VfAAAAAAPVXwAAAAAPVXwAAAAAA9VXwAAAAAPV8AAAAAAPVVfAAAAAA9fAAAAAAA9VVfAAAAAA/wAAAAAAPVVV8AAAAAA8AAAAAAA9VVXwAAAAAAAAAAAAAPVVVXwAAAAAAAAAAAAA9VVVXwAAAAAAAAAAAAPVVVVXwAAAAAAAAAAAA9VVVVXwAAAAAAAAAAAPVVVVVXwAAAAAAAAAAD1VVVVVXwAAAAAAAAAA9VVVVVVXwAAAAAAAAA/VVVVVVVXwAAAAAAAAP1VVVVVVVX8AAAAAAAP1VVVVVVVVX8AAAAAAD9VVVVVVVVVV/AAAAAD9VVVVVVVVVVV/wAAAP/VVVVVVVVVVVVf/////VVVVVVVVVVVVVX///9VVVVVVVVVVVVVVVVVVVVVVVVVU="},
|
||||||
|
{"width" : "51", "buffer":"VVV////////////1VV//////////////9VX//AAAAAAAAAAAAPVfAAAAAAAAAAAAAAD18AAAAAAAAAAAAAAA98AAAAAAAAAAAAAAA98AAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAA98AAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAD1V/AAAAAAAAAAAAAD1Vf//AAAAAAAAAAAD1VV//////AAAAAAAD1VVVV/////AAAAAAD1VVVVVVVV/wAAAAAPVVVVVVVVVV8AAAAAPVVVVVVVVVV8AAAAAPVVVVVVVVVV8AAAAAPVVVVVVVVVV8AAAAAPVVVVVVVVVV8AAAAAPVVVVVVVVVXwAAAAAPVVVVVVVVVXwAAAAAPVVVVVVVVVXwAAAAAPVVVVVVVVVXwAAAAAPVVVVVVVVVXwAAAAAPVVVVVVVVVXwAAAAA9VVVVVVVVVfAAAAAA9VVVVVVVVVfAAAAAA9VVVVVVVVVfAAAAAA9VVVVVVVVVfAAAAAA9VVVVVVVVVfAAAAAD1VVVVVVVVV8AAAAAD1VVVVVVVVV8AAAAAD1VVVVVVVVV8AAAAAD1VVVVVVVVV8AAAAAD1VVVVVVVVV8AAAAAD1VVVVVVVVV8AAAAAPVVVVVVVVVXwAAAAAPVVVVVVVVVXwAAAAAPVVVVVVVVVXwAAAAAPVVVVVVVVVXwAAAAAPVVVVVVVVVXwAAAAA9VVVVVVVVVXwAAAAA9VVVVVVVVVfAAAAAA9VVVVVVVVVfAAAAAA9VVVVVVVVVfAAAAAA9VVVVVVVVVfAAAAAA9VVVVVVVVVfAAAAAD1VVVVVVVVV8AAAAAD1VVVVVVVVV8AAAAAD1VVVVVVVVV8AAAAAD1VVVVVVVVV8AAAAAPVVVVVVVVVV8AAAAAPVVVVVVVVVV8AAAAAPVVVVVVVVVXwAAAAAPVVVVVVVVVXwAAAAAPVVVVVVVVVXwAAAAA9VVVVVVVVVXwAAAAA9VVVVVVVVVXwAAAAA9VVVVVVVVVXwAAAAA9VVVVVVVVVfAAAAAD1VVVVVVVVVfAAAAAD1VVVVVVVVVfAAAAAD1VVVVVVVVVfAAAAAD1VVVVVVVVV8AAAAAD1VVVVVVVVV8AAAAAPVVVVVVVVVV8AAAAAPVVVVVVVVVV8AAAAAPVVVVVVVVVV8AAAAAPVVVVVVVVVV8AAAAA9VVVVVVVVVV8AAAAA9VVVVVVVVVV8AAAAA9VVVVVVVVVV8AAAAD1VVVVVVVVVV8AAAAD1VVVVVVVVVV8AAAAPVVVVVVVVVVV8AAAAPVVVVVVVVVVV8AAAA9VVVVVVVVVVV8AAAP1VVVVVVVVVVVfAAA/VVVVVVVVVVVVX8A/1VVVVVVVVVVVVV///VVVVVVVVVVVVVVX/VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV"},
|
||||||
|
{"width" : "56", "buffer":"VVVVVVX////9VVVVVVVVVVVVf//////1VVVVVVVVVVf/AAAAA/9VVVVVVVVVX8AAAAAAD/1VVVVVVVX8AAAAAAAA/9VVVVVVV/AAAAAAAAAD9VVVVVVfAAAAAAAAAAA9VVVVVfwAAAAAAAAAAA9VVVVV8AAAAAAAAAAAA9VVVVfAAAAAAAAAAAAA9VVVXwAAAAAAAAAAAAD1VVV8AAAAAAAAAAAAAD1VVXwAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAAAPVVXwAAAAAAAAAAAAAA9VVfAAAAAAP/AAAAAAD1VV8AAAAAD//wAAAAAD1VfAAAAAA9VfwAAAAAPVV8AAAAAPVVXwAAAAA9VXwAAAAA9VVXwAAAAD1VfAAAAAPVVVfAAAAAPVV8AAAAA9VVVfAAAAAPVXwAAAAD1VVVfAAAAA9VXwAAAAPVVVV8AAAAD1VfAAAAAPVVVXwAAAAPVV8AAAAA9VVVfAAAAA9VXwAAAAA9VVV8AAAAD1VXwAAAAD1VVXwAAAAPVVfAAAAAD1VVfAAAAA9VV8AAAAAD9VfwAAAAD1VV8AAAAAD//8AAAAAPVVXwAAAAAA/8AAAAAA9VVXwAAAAAAAAAAAAAPVVVfAAAAAAAAAAAAAA9VVVfAAAAAAAAAAAAAPVVVV8AAAAAAAAAAAAA9VVVXwAAAAAAAAAAAAPVVVVfAAAAAAAAAAAAA9VVVV8AAAAAAAAAAAAPVVVVfAAAAAAAAAAAAD1VVVV8AAAAAAAAAAAAPVVVVfAAAAAAAAAAAAD1VVVXwAAAAAAAAAAAAD1VVV8AAAAAAAAAAAAAPVVVfAAAAAAPwAAAAAAPVVV8AAAAAD/wAAAAAAPVVXwAAAAA9XwAAAAAA9VV8AAAAAD1XwAAAAAA9VXwAAAAA9VXwAAAAAD1VfAAAAAPVVfAAAAAAD1V8AAAAA9VVfAAAAAAPVfAAAAAPVVVfAAAAAAPV8AAAAA9VVVfAAAAAA9XwAAAAPVVVV8AAAAAA9fAAAAA9VVVV8AAAAAD18AAAAD1VVVXwAAAAAPfAAAAAPVVVVXwAAAAAP8AAAAA9VVVVfAAAAAA/wAAAAD1VVVV8AAAAAD/AAAAAPVVVVXwAAAAAP8AAAAA9VVVVfAAAAAA/wAAAAD1VVVV8AAAAAD/AAAAAPVVVVXwAAAAAP8AAAAA9VVVVfAAAAAA/wAAAAD1VVVV8AAAAAD3wAAAAD1VVVfAAAAAAPfAAAAAPVVVV8AAAAAA98AAAAAPVVVfAAAAAAD3wAAAAA9VVV8AAAAAA9fAAAAAA9VVfAAAAAAD1fAAAAAA9VXwAAAAAAPV8AAAAAA/X8AAAAAAA9XwAAAAAA//AAAAAAAPVXwAAAAAAPAAAAAAAA9VfAAAAAAAAAAAAAAAPVV8AAAAAAAAAAAAAAA9VV8AAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAPVVVXwAAAAAAAAAAAAP1VVVXwAAAAAAAAAAAD9VVVVXwAAAAAAAAAAD9VVVVVX8AAAAAAAAAD/VVVVVVX/AAAAAAAAD/VVVVVVVV/wAAAAAAA/VVVVVVVVVf/wAAAAD/VVVVVVVVVVX///////1VVVVVVVVVVVX/////VVVVVVU="},
|
||||||
|
{"width" : "58", "buffer":"VVVVVVV//////1VVVVVVVVVVVX///////9VVVVVVVVVVf8AAAAAA/9VVVVVVVVVfwAAAAAAAP/VVVVVVVVfAAAAAAAAAP/9VVVVVV/AAAAAAAAAAD/9VVVVV/AAAAAAAAAAAAP1VVVV8AAAAAAAAAAAAAPVVVV8AAAAAAAAAAAAAA9VVV8AAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAAAD1VV8AAAAAAAAAAAAAAAPVVfAAAAAAAAAAAAAAAD1VfAAAAAAAwAAAAAAAA9VfAAAAAAA/8AAAAAAAPVXwAAAAAD9/wAAAAAAD1XwAAAAAD9VfAAAAAAA9V8AAAAAD1VXwAAAAAAPVfAAAAAD1VV8AAAAAAD1fAAAAAD1VVfAAAAAAD1XwAAAAA9VVXwAAAAAA9XwAAAAA9VVXwAAAAAAPV8AAAAA9VVV8AAAAAAD1fAAAAA9VVVfAAAAAAA9fAAAAAPVVVfAAAAAAAPXwAAAAPVVVXwAAAAAAD18AAAAD1VVXwAAAAAAA9fAAAAD1VVV8AAAAAAAPXwAAAA9VVV8AAAAAAAD3wAAAAPVVV8AAAAAAAD18AAAAPVVV8AAAAAAAA9fAAAAD1VV8AAAAAAAAPXwAAAA9VV8AAAAAAAAD18AAAAPVX8AAAAAAAAA9fAAAAA//8AAAAAAAAAPXwAAAAD/wAAAAAAAAAD18AAAAAAAAAAAAAAAAA9fAAAAAAAAAAAAAAAAAPXwAAAAAAAAAAAAAAAAD1fAAAAAAAAAAAAAAAAD1XwAAAAAAAAAAAAAAAA9V8AAAAAAAAAAAAAAAAPVfAAAAAAAAAAAAAAAAD1V8AAAAAAAAAAAAAAAA9VfAAAAAAAAAAAAAAAAPVXwAAAAAAAAADAAAAAD1VfAAAAAAAAAD8AAAAA9VV8AAAAAAAAD3wAAAAPVVXwAAAAAAAP18AAAAD1VVfwAAAAAA/1fAAAAA9VVV/8AAAAP/VXwAAAAPVVVV//////9VV8AAAAPVVVVVf////VVVfAAAAD1VVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVV8AAAA9VVVVVVVVVVVVVfAAAAPVVVVVVVVVVVVVXwAAAD1VVVVVVVVVVVVV8AAAA9VVVVVVVVVVVVVfAAAAPVVVVVVVVVVVVVXwAAAD1VVVVVVVVVVVVV8AAAA9VVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVXwAAAD1VVVVVVVVVVVVV8AAAA9VVVVVVVVVVVVVfAAAAPVVVVVVVVVVVVVXwAAAD1VVVVVVVVVVVVV8AAAA9VVVVVVVVVVVVVXwAAAPVVVVVVVVVVVVVV8AAAD1VVVVVVVVVVVVVfAAAA9VVVVVVVVVVVVVX/AAA9VVVVVVVVVVVVVVf//wPVVVVVVVVVVVVVVVX///1VVVVVVVVVVVVVVVVV/1VVQ=="},
|
||||||
|
{"width" : "25", "buffer":"VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX1VVVVX///9VVVf//w/1VVfwAAAP1VfAAAAA/VfAAAAAA9XwAAAAAD3wAAAAAA98AAAAAAD/AAAAAAA/wAAAAAAP8AAAAAAD3wAAAAAA98AAAAAAPXwAAAAAD1fAAAAAA9V8AAAAA9VXwAAAA9VVfAAAAPVVV/AAA/VVVX////VVVVX//9VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX//9VVVVf////VVV/wAAP9VV/AAAAD1VfAAAAAPVfAAAAAA9XwAAAAAPXwAAAAAD18AAAAAA9fAAAAAAPXwAAAAAD18AAAAAA9XwAAAAAPV8AAAAAD1fAAAAAA9V8AAAAAPVfAAAAAPVXwAAAAPVVf/////VVV/////VQ=="}
|
||||||
|
]
|
||||||
|
}
|
|
@ -0,0 +1,17 @@
|
||||||
|
{
|
||||||
|
"name":"YuseiMagic",
|
||||||
|
"size":"96",
|
||||||
|
"characters":[
|
||||||
|
{"width" : "67", "buffer":"VVVVVVVVVX///1VVVVVVVVVVVVVVVVf//////VVVVVVVVVVVVVVX//wAAA//1VVVVVVVVVVVV//AAAAAAD/1VVVVVVVVVVX/wAAAAAAAA/1VVVVVVVVVX8AAAAAAAAAA/VVVVVVVVVfwAAAAAAAAAAA/VVVVVVVVfwAAAAAAAAAAAD9VVVVVVVfAAAAAAAAAAAAAD1VVVVVVfAAAAAA//8AAAAA9VVVVVVfAAAAAD///wAAAAD1VVVVVfAAAAAD9VVfAAAAAPVVVVVXwAAAAD1VVV8AAAAA9VVVVXwAAAAD1VVVXwAAAAPVVVVV8AAAAD1VVVVfAAAAA9VVVV8AAAAD1VVVVXwAAAAPVVVV8AAAAA9VVVVVfAAAAA9VVVfAAAAA9VVVVVV8AAAAD1VVfAAAAA9VVVVVVfAAAAA9VVXwAAAAPVVVVVVV8AAAAPVVXwAAAAPVVVVVVVfAAAAA9VV8AAAAD1VVVVVVXwAAAAPVVfAAAAD1VVVVVVVfAAAAD1VfAAAAA9VVVVVVVXwAAAAPVXwAAAAPVVVVVVVV8AAAAD1V8AAAAPVVVVVVVVXwAAAA9V8AAAAD1VVVVVVVV8AAAAD1fAAAAA9VVVVVVVVfAAAAA9XwAAAAPVVVVVVVVXwAAAAPV8AAAAPVVVVVVVVVfAAAAD1fAAAAD1VVVVVVVVXwAAAA9fAAAAA9VVVVVVVVV8AAAAPXwAAAAPVVVVVVVVVfAAAAA98AAAAD1VVVVVVVVXwAAAAPfAAAAD1VVVVVVVVV8AAAAD3wAAAA9VVVVVVVVVXwAAAA98AAAAPVVVVVVVVVV8AAAAPfAAAAD1VVVVVVVVVfAAAAD3wAAAA9VVVVVVVVVXwAAAA98AAAAPVVVVVVVVVV8AAAAPfAAAAD1VVVVVVVVVfAAAAD3wAAAA9VVVVVVVVVXwAAAA98AAAAPVVVVVVVVVV8AAAAPfAAAAD1VVVVVVVVVfAAAAD3wAAAA9VVVVVVVVVXwAAAAP8AAAAPVVVVVVVVVV8AAAAD/AAAAD1VVVVVVVVVfAAAAA/wAAAA9VVVVVVVVVXwAAAAP8AAAAPVVVVVVVVVV8AAAAPfAAAAD1VVVVVVVVVfAAAAD3wAAAA9VVVVVVVVVXwAAAA98AAAAPVVVVVVVVVV8AAAAPfAAAAD1VVVVVVVVVfAAAAD3wAAAA9VVVVVVVVVXwAAAA98AAAAPVVVVVVVVVV8AAAAPfAAAAD1VVVVVVVVVfAAAAD3wAAAA9VVVVVVVVVXwAAAA98AAAAPVVVVVVVVVXwAAAAPfAAAAD1VVVVVVVVV8AAAAD3wAAAAPVVVVVVVVVfAAAAA98AAAAD1VVVVVVVVXwAAAAPfAAAAA9VVVVVVVVV8AAAAPXwAAAAPVVVVVVVVVfAAAAD1fAAAAD1VVVVVVVVXwAAAA9XwAAAA9VVVVVVVVXwAAAAPV8AAAAD1VVVVVVVV8AAAAD1fAAAAA9VVVVVVVVfAAAAA9XwAAAAPVVVVVVVVXwAAAA9VfAAAAD1VVVVVVVXwAAAAPVXwAAAAPVVVVVVVV8AAAAD1V8AAAAD1VVVVVVVfAAAAA9VfAAAAA9VVVVVVVXwAAAA9VV8AAAAD1VVVVVVXwAAAAPVVfAAAAA9VVVVVVV8AAAAD1VXwAAAAPVVVVVVVfAAAAD1VVfAAAAA9VVVVVVfAAAAA9VVXwAAAAPVVVVVVXwAAAAPVVVfAAAAA9VVVVVXwAAAAPVVVXwAAAAPVVVVVV8AAAAD1VVVfAAAAA9VVVVV8AAAAD1VVVXwAAAAPVVVVVfAAAAA9VVVVfAAAAA9VVVVfAAAAA9VVVVXwAAAAD1VVVfAAAAAPVVVVVfAAAAAPVVVfAAAAAPVVVVVXwAAAAA9VVfAAAAAPVVVVVVfAAAAAD1VfAAAAAD1VVVVVV8AAAAAP//AAAAAD1VVVVVVXwAAAAA//AAAAAD1VVVVVVVfAAAAAAAAAAAAD1VVVVVVVV8AAAAAAAAAAAD1VVVVVVVVX8AAAAAAAAAAP1VVVVVVVVVf8AAAAAAAAA/1VVVVVVVVVVf8AAAAAAAD/VVVVVVVVVVVVf/AAAAAA/9VVVVVVVVVVVVVf///////1VVVVVVVVVVVVVVX/////9VVVVVVVV" },
|
||||||
|
{"width" : "29", "buffer":"VVVVVVVVVVVVVX///VVVVVV/////1VVVfAAAP/1VVV8AAAAPVVVfAAAAAPVVXwAAAAA9VVfAAAAAD1VXwAAAAAPVVfAAAAAA9VXwAAAAAD1VfAAAAAAPVXwAAAAAA9VfAAAAAAD1XwAAAAAAPVfAAAAAAA9XwAAAAAAD18AAAAAAAPXwAAAAAAA98AAAAAAAD3wAAAAAAAP8AAAAAAAA/wAAAAAAAD/AAAAAAAAP8AAAAAAAA/wAAAAAAAD/AAAAAAAAP/AAAAAAAA9/8AAAAAAD1f/8AAAAAPVV/8AAAAA9VVV8AAAAD1VVXwAAAAPVVVfAAAAA9VVV8AAAAD1VVXwAAAAPVVVfAAAAA9VVV8AAAAD1VVXwAAAAPVVVfAAAAA9VVV8AAAAD1VVXwAAAAPVVVfAAAAA9VVV8AAAAD1VVXwAAAAPVVVfAAAAA9VVV8AAAAD1VVXwAAAAPVVVfAAAAA9VVV8AAAAD1VVXwAAAAPVVVfAAAAA9VVV8AAAAD1VVXwAAAAPVVVfAAAAA9VVV8AAAAD1VVXwAAAAPVVVfAAAAA9VVV8AAAAD1VVXwAAAAPVVVfAAAAA9VVV8AAAAD1VVXwAAAAPVVVfAAAAA9VVV8AAAAD1VVXwAAAAPVVVfAAAAA9VVV8AAAAD1VVXwAAAAPVVVfAAAAA9VVV8AAAAD1VVXwAAAAPVVVfAAAAA9VVV8AAAAD1VVXwAAAAPVVVfAAAAA9VVV8AAAAD1VVXwAAAAPVVVfAAAAA9VVV8AAAAD1VVXwAAAAPVVVfAAAAA9VVV8AAAAD1VVXwAAAAPVVVfAAAAA9VVV8AAAAD1VVXwAAAAPVVVfAAAAA9VVV8AAAAD1VVXwAAAAPVVVfAAAAA9VVVfAAAAD1VVV8AAAA9VVVV/////1VVVV////9VVVVVVVVVV" },
|
||||||
|
{"width" : "62", "buffer":"VVVVVVVVf////VVVVVVVVVVVVVVV///////VVVVVVVVVVVVX/8AAAAP/1VVVVVVVVVVX/wAAAAAAP9VVVVVVVVVX/AAAAAAAAD/VVVVVVVVX/AAAAAAAAAA/VVVVVVVV/AAAAAAAAAAAP1VVVVVVfAAAAAAAAAAAAP1VVVVVXwAAAAAD8AAAAAD1VVVVV8AAAAAP//AAAAAD1VVVVfAAAAAD/V/wAAAAD1VVVV8AAAAA9VVfwAAAAD1VVVfAAAAAPVVVXwAAAAD1VVXwAAAAD1VVVXwAAAAPVVVfAAAAA9VVVVfAAAAAPVVXwAAAAPVVVVVfAAAAAPVVfAAAAA9VVVVVfAAAAA9VXwAAAAPVVVVVV8AAAAD1VfAAAAA9VVVVVV8AAAAD1V8AAAAPVVVVVVXwAAAAPVfAAAAA9VVVVVVfAAAAA9V8AAAAD1VVVVVVfAAAAA9XwAAAA9VVVVVVV8AAAAD18AAAAD1VVVVVVXwAAAAPXwAAAAPVVVVVVVfAAAAA9fAAAAA9VVVVVVV8AAAAD18AAAAPVVVVVVVXwAAAAPXwAAAA9VVVVVVVfAAAAA98AAAAD1VVVVVVV8AAAAD3wAAAAPVVVVVVVXwAAAAPfAAAAA9VVVVVVVfAAAAA98AAAAD1VVVVVVXwAAAAPXwAAAAPVVVVVVVfAAAAA9fAAAAA9VVVVVVV8AAAAD18AAAAPVVVVVVVXwAAAAPXwAAAA9VVVVVVV8AAAAD1fAAAAD1VVVVVVXwAAAAPXwAAAAPVVVVVVVfAAAAA9fAAAAA9VVVVVVXwAAAAPV8AAAAD1VVVVVVfAAAAA9XwAAAAPVVVVVVXwAAAAD1XwAAAD1VVVVVVfAAAAA9Vf8AAD/VVVVVVXwAAAAD1Vf////1VVVVVVfAAAAA9VVV///VVVVVVVXwAAAAD1VVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVXwAAAAD1VVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVXwAAAAD1VVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVV8AAAAA9VVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVV8AAAAA9VVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVVfAAAAAPVVVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVVfAAAAAPVVVVVVVVVVVVVXwAAAAD1VVVVVVVVVVVVV8AAAAA9VVVVVVVVVVVVVXwAAAAD1VVVVVVVVVVVVV8AAAAA9VVVVVVVVVVVVVfAAAAAPVVVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVVfAAAAAPVVVVVVVVVVVVVXwAAAAD1VVVVVVVVVVVVV8AAAAA9VVVVVVVVVVVVVXwAAAAD1VVVVVVVVVVVVV8AAAAA9VVVVVVVVVVVVVfAAAAAPVVVVVVVVVVVVVXwAAAAD1VVVVVVVVVVVVV8AAAAAPVVVVVVVVVVVVVXwAAAAD1VVVVVVVVVVVVV8AAAAA9VVVVVVVVVVVVVfAAAAAPVVVVVVVVVVVVVXwAAAAD1VVVVVVVVVVVVV8AAAAAPVVVVVVVVVVVVVfAAAAAD1VVVVVVVVVVVVV8AAAAA9VVVVVVVVVVVVVfAAAAAPVVVVVVVVVVVVVXwAAAAD1VVVVVVVVVVVVV8AAAAA9VVVVVVVVVVVVVfAAAAAPVVVVVVVVVVVVVXwAAAAA9VVVVVVVVVVVVV8AAAAAA////////1VVVVfAAAAAAA/////////VVVV8AAAAAAAAAAAAAAD/VVVfAAAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAAAPVVXwAAAAAAAAAAAAAAAA9VVfAAAAAAAAAAAAAAAAD1VVf/////////////////VVVf////////////////VVVVVVVVVVVVVVVVVVVVVVV" },
|
||||||
|
{"width" : "63", "buffer":"VVVVVVVVVf///VVVVVVVVVVVVVVVV//////1VVVVVVVVVVVVV//wAAA//1VVVVVVVVVVVf/AAAAAAP/VVVVVVVVVVX/AAAAAAAAP9VVVVVVVVV/wAAAAAAAAA/VVVVVVVVX8AAAAAAAAAAD9VVVVVVVfAAAAAAAAAAAA/VVVVVVV8AAAAAAAAAAAAD1VVVVVXwAAAAA//wAAAAA9VVVVVfAAAAAP///AAAAAPVVVVV8AAAAA/VVfwAAAAD1VVVXwAAAAD1VVV8AAAAA9VVVfAAAAAPVVVVfAAAAAPVVVfAAAAA9VVVVXwAAAAPVVV8AAAAA9VVVVXwAAAAD1VV8AAAAD1VVVVV8AAAAD1VXwAAAAPVVVVVVfAAAAA9VXwAAAAPVVVVVVfAAAAA9VfAAAAA9VVVVVVfAAAAA9VfAAAAA9VVVVVVXwAAAAPVfAAAAD1VVVVVVXwAAAAPV8AAAAD1VVVVVVXwAAAAPV8AAAAD1VVVVVVV8AAAAPV8AAAAPVVVVVVVV8AAAAPV8AAAAPVVVVVVVV8AAAAPXwAAAAPVVVVVVVV8AAAAPXwAAAAPVVVVVVVV8AAAAPXwAAAAPVVVVVVVV8AAAAPXwAAAA9VVVVVVVV8AAAAPXwAAAA9VVVVVVVV8AAAAPXwAAAA9VVVVVVVV8AAAAPXwAAAA9VVVVVVVXwAAAAPXwAAAA9VVVVVVVXwAAAAPV/////1VVVVVVVXwAAAAPVf////VVVVVVVVXwAAAA9VVVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVV/AAAAAPVVVVVVVVVVVVVf8AAAAA9VVVVVVVVVVV///AAAAAD1VVVVVVVVV////wAAAAAD1VVVVVVVVX//AAAAAAAA/VVVVVVVVVfAAAAAAAAAD9VVVVVVVVVfAAAAAAAAAPVVVVVVVVVVfAAAAAAAAA9VVVVVVVVVVfAAAAAAAAA9VVVVVVVVVVfAAAAAAAAAP1VVVVVVVVVXwAAAAAAAAD9VVVVVVVVVX///wAAAAAAPVVVVVVVVVVf///wAAAAAD1VVVVVVVVVVVVf/AAAAAA9VVVVVVVVVVVVVf8AAAAAPVVVVVVVVVVVVVV/AAAAAPVVVVVVVVVVVVVVXwAAAAD1VVVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVVV8AAAAA9VVVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVVXwAAAAPVX//9VVVVVVVVVV8AAAAPX////9VVVVVVVVV8AAAAPf8AAD/VVVVVVVVV8AAAAPfAAAAPVVVVVVVVV8AAAAP8AAAAD1VVVVVVVV8AAAAP8AAAAD1VVVVVVVV8AAAAP8AAAAD1VVVVVVVV8AAAAPfAAAAD1VVVVVVVV8AAAAPfAAAAD1VVVVVVVXwAAAAPfAAAAA9VVVVVVVXwAAAAPfAAAAA9VVVVVVVXwAAAAPXwAAAA9VVVVVVVXwAAAA9XwAAAAPVVVVVVVXwAAAA9XwAAAAPVVVVVVVfAAAAA9V8AAAAD1VVVVVVfAAAAA9V8AAAAA9VVVVVV8AAAAD1VfAAAAAPVVVVVXwAAAAD1VfAAAAAD1VVVVfAAAAAPVVXwAAAAA/VVVX8AAAAAPVVV8AAAAAP/VX/wAAAAA9VVVfAAAAAA///8AAAAAD1VVVXwAAAAAA/8AAAAAAPVVVVV/AAAAAAAAAAAAAA9VVVVVf8AAAAAAAAAAAAP1VVVVVV/AAAAAAAAAAAD/VVVVVVVX/AAAAAAAAAD/1VVVVVVVV//AAAAAAAD/9VVVVVVVVVV/////////9VVVVVVVVVVVV///////9VVVVVV" },
|
||||||
|
{"width" : "68", "buffer":"VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf///1VVVVVVVVV//1VVVVVf////9VVVVVVVV/////VVVX8AAAD1VVVVVVVXwAD//VVVfAAAAD1VVVVVVV8AAAAPVVXwAAAAPVVVVVVVXwAAAA9VVfAAAAA9VVVVVVVfAAAAD1VV8AAAAD1VVVVVVV8AAAAPVVXwAAAAPVVVVVVVXwAAAA9VVfAAAAA9VVVVVVV8AAAAD1VV8AAAAD1VVVVVVXwAAAAPVVXwAAAAPVVVVVVVfAAAAA9VVfAAAAA9VVVVVVV8AAAAD1VV8AAAAD1VVVVVVXwAAAA9VVXwAAAAPVVVVVVVfAAAAD1VVfAAAAA9VVVVVVXwAAAAPVVV8AAAAD1VVVVVVfAAAAA9VVXwAAAAPVVVVVVV8AAAAD1VVfAAAAA9VVVVVVXwAAAAPVVV8AAAAD1VVVVVVfAAAAD1VVXwAAAAPVVVVVVV8AAAAPVVVfAAAAA9VVVVVVfAAAAA9VVV8AAAAD1VVVVVV8AAAAD1VVXwAAAAPVVVVVVXwAAAAPVVVfAAAAA9VVVVVVfAAAAA9VVV8AAAAD1VVVVVV8AAAAPVVVXwAAAAPVVVVVVXwAAAA9VVVfAAAAA9VVVVVV8AAAAD1VVV8AAAAD1VVVVVXwAAAAPVVVXwAAAAPVVVVVVfAAAAA9VVVfAAAAA9VVVVVV8AAAAD1VVV8AAAAD1VVVVVXwAAAA9VVVXwAAAAPVVVVVVfAAAAD1VVVfAAAAA9VVVVVXwAAAAPVVVV8AAAAD1VVVVVfAAAAA9VVVXwAAAAPVVVVVV8AAAAD1VVVfAAAAA9VVVVVXwAAAAPVVVV8AAAAD1VVVVVfAAAAD1VVVXwAAAAPVVVVVV8AAAAPVVVVfAAAAA9VVVVVfAAAAA9VVVV8AAAAD1VVVVV8AAAAD1VVVXwAAAAPVVVVVXwAAAAPVVVVfAAAAA9VVVVVfAAAAA9VVVV8AAAAD1VVVVV8AAAAPVVVVXwAAAAPVVVVVXwAAAA9VVVVfAAAAA9VVVVV8AAAAD1VVVV8AAAAD1VVVVXwAAAAPVVVVXwAAAAPVVVVVfAAAAA9VVVVfAAAAA9VVVVV8AAAAD1VVVV8AAAAD1VVVVXwAAAA9VVVVXwAAAAPVVVVVfAAAAD1VVVVfAAAAA9VVVVXwAAAAPVVVVV8AAAAD1VVVVfAAAAA9VVVVXwAAAAPVVVVV8AAAAD1VVVVfAAAAA9VVVVXwAAAAPVVVVV8AAAAD1VVVVfAAAAD1VVVVXwAAAAPVVVVV8AAAAPVVVVVfAAAAA9VVVVXwAAAA9VVVVV8AAAAD1VVVV8AAAAD1VVVVXwAAAAPVVVVXwAAAAPVVVVVfAAAAA9VVVVfAAAAA9VVVVV8AAAAD1VVVV8AAAAD1VVVVXwAAAAPVVVVXwAAAA9VVVVVfAAAAA9VVVVfAAAAD1VVVVV8AAAAD1VVVXwAAAAPVVVVVXwAAAAPVVVVfAAAAA9VVVVVfAAAAA9VVVV8AAAAD1VVVVV8AAAAD1VVVXwAAAAPVVVVVXwAAAAPVVVVfAAAAD1VVVVVfAAAAA9VVVV8AAAAD//////wAAAAA///VfAAAAAD/////8AAAAAA///18AAAAAAAAAAAAAAAAAAAAP3wAAAAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAAAA9/AAAAAAAAAAAAAAAAAAAAP1////////////AAAAAAP//9Vf///////////AAAAAD//9VVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVVVVX/////1VVVVVVVVVVVVVVVVX////9VVVVVVVVVVVVVVVVVVVVVVVVVVV" },
|
||||||
|
{"width" : "61", "buffer":"VVV////9VVVVVVVVVVVVVVV////////////////VVVV8AAAAP///////////VVVfAAAAAAAAAAAAAAAD9VVXwAAAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAAAAD1VVfAAAAAAAAAAAAAAAA9VVXwAAAAAAAAAAAAAAAPVVV8AAAAAAAAAAAAAAAD1VVfAAAAAP//////////9VVXwAAAAP//////////1VVV8AAAAPVVVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVVXwAAAAP////VVVVVVVVVV8AAAAA/////9VVVVVVVVfAAAAAAAAAD//VVVVVVVfAAAAAAAAAAAP/VVVVVVXwAAAAAAAAAAAD/VVVVVV8AAAAAAAAAAAAD/VVVVVfAAAAAAAAAAAAAD9VVVVXwAAAAAAAAAAAAAD1VVVV8AAAAAAAAAAAAAAPVVVVfAAAAA////AAAAAA9VVVXwAAA//////AAAAAD1VVV8AAP/9VVVX/AAAAAPVVVXwD/9VVVVVX8AAAAD1VVV///VVVVVVVXwAAAAPVVVV/1VVVVVVVV8AAAAA9VVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVXwAAAAD1VVVVVVVVVVVVV8AAAAD1VVX9VVVVVVVVV8AAAAA9VV//9VVVVVVVV8AAAAA9VX/wP9VVVVVVV8AAAAA9VX8AAP/VVVVVV8AAAAAPVXwAAAP/1VVVX8AAAAAPVV8AAAAD//1V/8AAAAAPVV8AAAAAA////wAAAAAPVVXwAAAAAAA/8AAAAAA/VVV8AAAAAAAAAAAAAAA/VVVX/AAAAAAAAAAAAAD9VVVVf/wAAAAAAAAAAAP9VVVVVX//AAAAAAAAAA/1VVVVVVV//8AAAAAAAP/VVVVVVVVVX/////////9VVVVVVVVVVVf///////VVVVVVV" },
|
||||||
|
{"width" : "64", "buffer":"VVVVVVVVV////1VVVVVVVVVVVVVVV//////9VVVVVVVVVVVVVX/8AAAA//VVVVVVVVVVVVf8AAAAAAP9VVVVVVVVVVVfwAAAAAAAD9VVVVVVVVVV/AAAAAAAAAP1VVVVVVVVV/AAAAAAAAAAPVVVVVVVVV8AAAAAAAAAAA9VVVVVVVV8AAAAAPAAAAAD1VVVVVVV8AAAAA//wAAAAPVVVVVVVfAAAAD/X/AAAAA9VVVVVVfAAAAD9VV8AAAAPVVVVVVfAAAAD1VVXwAAAA9VVVVVfAAAAD1VVVfAAAAD1VVVVXwAAAA9VVVV8AAAAPVVVVXwAAAA9VVVVXwAAAD1VVVV8AAAAPVVVVV8AAAAPVVVV8AAAAPVVVVVXwAAAD1VVVfAAAAD1VVVVV8AAAAPVVVXwAAAD1VVVVVXwAAAA9VVXwAAAA9VVVVVV8AAAAPVVV8AAAAPVVVVVVfAAAAD1VVfAAAAPVVVVVVV8AAAAPVVfAAAAD1VVVVVVfAAAAPVVXwAAAA9VVVVVVXwAAAD1VV8AAAA9VVVVVVVfAAAP1VV8AAAAPVVVVVVVX8A//1VVfAAAAD1VVVVVVVf///VVVXwAAAA9VVVVVVVVf9VVVVXwAAAA9VVVVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVVVfAAAAD1VVX///1VVVVVVVfAAAAA9Vf//////VVVVVVXwAAAAPX//wAAA//1VVVVV8AAAAA//AAAAAAD/1VVVVfAAAAADwAAAAAAAA/VVVVXwAAAAAAAAAAAAAAA/VVVV8AAAAAAAAAAAAAAAD9VVVfAAAAAAAAAAAAAAAAD1VVXwAAAAAAAAAAAAAAAAPVVXwAAAAAAAAA//wAAAAA9VV8AAAAAAAAP///AAAAAD1VfAAAAAAAAP9VV8AAAAA9VXwAAAAAAA/VVVXwAAAAD1V8AAAAAAA/VVVVfAAAAAPVfAAAAAAA9VVVVV8AAAAA9XwAAAAAA9VVVVVXwAAAAPV8AAAAAA9VVVVVV8AAAAA9fAAAAAA9VVVVVVXwAAAAPXwAAAAA9VVVVVVV8AAAAD18AAAAAPVVVVVVVXwAAAAPfAAAAAPVVVVVVVV8AAAAD3wAAAAPVVVVVVVVfAAAAA98AAAAD1VVVVVVVV8AAAAPfAAAAA9VVVVVVVVfAAAAA/wAAAAPVVVVVVVVXwAAAAP8AAAAD1VVVVVVVV8AAAAD/AAAAA9VVVVVVVVfAAAAA/wAAAAPVVVVVVVVXwAAAAP8AAAAD1VVVVVVVV8AAAAD/AAAAA9VVVVVVVVfAAAAA98AAAAPVVVVVVVVXwAAAAPfAAAAD1VVVVVVVV8AAAAD3wAAAA9VVVVVVVVfAAAAA98AAAAD1VVVVVVVXwAAAAPfAAAAA9VVVVVVVV8AAAAD18AAAAPVVVVVVVVfAAAAA9fAAAAD1VVVVVVVXwAAAAPXwAAAAPVVVVVVVV8AAAAPV8AAAAD1VVVVVVVfAAAAD1XwAAAA9VVVVVVVfAAAAA9V8AAAAD1VVVVVVXwAAAAPVXwAAAA9VVVVVVXwAAAAPVV8AAAAD1VVVVVV8AAAAD1VfAAAAAPVVVVVV8AAAAD1VV8AAAAD1VVVVV8AAAAA9VVXwAAAAPVVVVVfAAAAA9VVV8AAAAA/VVVV/AAAAAPVVVXwAAAAD/VVV/AAAAAPVVVVfAAAAAD/9f8AAAAAPVVVVV8AAAAAD//8AAAAAPVVVVVXwAAAAAAPAAAAAAPVVVVVVfAAAAAAAAAAAAAPVVVVVVV/AAAAAAAAAAAA/VVVVVVVX/AAAAAAAAAAD/VVVVVVVVX/AAAAAAAAAP9VVVVVVVVVX/8AAAAAAD/1VVVVVVVVVVX/////////VVVVVVVVVVVVVf//////1VVVVVV" },
|
||||||
|
{"width" : "61", "buffer":"X////1VVVVVVVVVVVVVVX//////////////////9XwAAAA//////////////98AAAAAAAAAAAAAAAAAAPfAAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAP8AAAAAAAAAAAAAAAAAAD/AAAAAAAAAAAAAAAAAAA/wAAAAAAAAAAAAAAAAAAP8AAAAAP//////8AAAAAPfAAAAAP///////wAAAAD3wAAAAPVVVVVVVfAAAAA98AAAAD1VVVVVVXwAAAAPfAAAAA9VVVVVVV8AAAAPXwAAAAPVVVVVVVfAAAAD18AAAAD1VVVVVVfAAAAA9fAAAAA9VVVVVVXwAAAAPXwAAAAPVVVVVVV8AAAAD18AAAAD1VVVVVVfAAAAD1fAAAAA9VVVVVVXwAAAA9XwAAAAPVVVVVVXwAAAAPV8AAAAD1VVVVVV8AAAAD1fAAAAA9VVVVVVfAAAAA9V8AAAAPVVVVVVXwAAAA9VfAAAAD1VVVVVV8AAAAPVXwAAAA9VVVVVV8AAAAD1V8AAAAPVVVVVVfAAAAA9VfAAAAD1VVVVVXwAAAAPVXwAAAA9VVVVVV8AAAAPVV8AAAAPVVVVVVfAAAAD1VfAAAAD1VVVVVfAAAAA9VXwAAAA9VVVVVXwAAAAPVV8AAAAD1VVVVV8AAAAD1VfAAAAA9VVVVVfAAAAD1VXwAAAAPVVVVVfAAAAA9VV8AAAAD1VVVVXwAAAAPVVfAAAAA9VVVVV8AAAAD1VXwAAAAPVVVVVfAAAAA9VV8AAAAD1VVVVXwAAAA9VVfAAAAA9VVVVXwAAAAPVVXwAAAAPVVVVV8AAAAD1VV8AAAAD1VVVVfAAAAA9VVfAAAAA9VVVVXwAAAAPVVV8AAAAPVVVVV8AAAAD1VVfAAAAD1VVVV8AAAAD1VVXwAAAA9VVVVfAAAAA9VVV8AAAAPVVVVXwAAAAPVVVfAAAAD1VVVV8AAAAD1VVXwAAAD9VVVVfAAAAA9VVVf////9VVVVfAAAAA9VVVV////1VVVVXwAAAAPVVVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVVXwAAAD1VVVVVVVVVVVVVV/////9VVVVVVVVVVVVVVV////9VVVVVV" },
|
||||||
|
{"width" : "68", "buffer":"VVVVVVVVV////1VVVVVVVVVVVVVVVVf//////1VVVVVVVVVVVVVV//wAAAD//VVVVVVVVVVVVV/8AAAAAAD/1VVVVVVVVVVV/wAAAAAAAAP9VVVVVVVVVV/wAAAAAAAAAD9VVVVVVVVVfwAAAAAAAAAAA/VVVVVVVVfwAAAAAAAAAAAA/VVVVVVVX8AAAAAD/AAAAAAPVVVVVVVfAAAAAP//8AAAAAPVVVVVVXwAAAAD/Vf8AAAAAPVVVVVV8AAAAA9VVV/AAAAAPVVVVVfAAAAAPVVVV/AAAAAPVVVVXwAAAAD1VVVVfAAAAA9VVVV8AAAAA9VVVVV8AAAAA9VVVXwAAAAPVVVVVV8AAAAA9VVV8AAAAD1VVVVVV8AAAAD1VVXwAAAAPVVVVVVV8AAAAD1VVfAAAAA9VVVVVVXwAAAAPVVXwAAAAPVVVVVVVfAAAAA9VVfAAAAA9VVVVVVVfAAAAA9VV8AAAAD1VVVVVVV8AAAAD1VXwAAAAPVVVVVVVV8AAAAPVVfAAAAA9VVVVVVVXwAAAA9VV8AAAAD1VVVVVVVfAAAAD1VXwAAAAPVVVVVVVV8AAAAPVVfAAAAA9VVVVVVVXwAAAAPVV8AAAAD1VVVVVVVfAAAAA9VXwAAAAPVVVVVVVV8AAAAPVVfAAAAA9VVVVVVVXwAAAA9VV8AAAAD1VVVVVVVfAAAAD1VV8AAAAD1VVVVVVXwAAAAPVVXwAAAAPVVVVVVVfAAAAA9VVfAAAAAPVVVVVVV8AAAAD1VVfAAAAA9VVVVVVfAAAAA9VVV8AAAAA9VVVVVV8AAAAD1VVV8AAAAD1VVVVVfAAAAA9VVVXwAAAAD1VVVVXwAAAAD1VVVXwAAAAD1VVVVfAAAAA9VVVVXwAAAAD1VVVXwAAAAD1VVVVXwAAAAD1VVV8AAAAA9VVVVVfAAAAAD9VV/AAAAAPVVVVVVfAAAAAD9V/wAAAAD1VVVVVVfAAAAAA//wAAAAA9VVVVVVVfwAAAAA/wAAAAAPVVVVVVVVfwAAAAAAAAAAAD1VVVVVVVVXwAAAAAAAAAAA9VVVVVVVVVXwAAAAAAAAAAPVVVVVVVVVV8AAAAAAAAAAAPVVVVVVVVV/AAAAAAAAAAAAPVVVVVVVVfwAAAAAAAAAAAAP1VVVVVVfwAAAAAA/AAAAAAP1VVVVVX8AAAAAD//8AAAAAD1VVVVV8AAAAAD/1f/AAAAAD1VVVVfAAAAAD/VVV/AAAAAD1VVVV8AAAAA/VVVVfAAAAAD1VVVfAAAAAPVVVVVfAAAAAD1VVXwAAAAD1VVVVVfAAAAAD1VV8AAAAA9VVVVVVfAAAAAPVVXwAAAAPVVVVVVVfAAAAAPVV8AAAAA9VVVVVVVfAAAAAPVXwAAAAPVVVVVVVVfAAAAA9V8AAAAD1VVVVVVVV8AAAAD1XwAAAAPVVVVVVVVV8AAAAD18AAAAD1VVVVVVVVXwAAAAPXwAAAAPVVVVVVVVVfAAAAA9fAAAAA9VVVVVVVVVfAAAAA98AAAAD1VVVVVVVVV8AAAAD/AAAAA9VVVVVVVVVXwAAAAP8AAAAD1VVVVVVVVVfAAAAA/wAAAAPVVVVVVVVVVfAAAAD/AAAAA9VVVVVVVVVV8AAAAP8AAAAD1VVVVVVVVVXwAAAA/wAAAAPVVVVVVVVVV8AAAAD/AAAAA9VVVVVVVVVXwAAAAP8AAAAD1VVVVVVVVVfAAAAA/wAAAAPVVVVVVVVVV8AAAAD3wAAAA9VVVVVVVVVXwAAAA9fAAAAA9VVVVVVVVV8AAAAD18AAAAD1VVVVVVVVXwAAAAPXwAAAAD1VVVVVVVV8AAAAD1XwAAAAPVVVVVVVVfAAAAAPVfAAAAAPVVVVVVVXwAAAAD1VfAAAAAPVVVVVVV8AAAAAPVVfAAAAAP1VVVVVfAAAAAD1VV8AAAAAP9VVVVfwAAAAA9VVV8AAAAAD//VX/8AAAAAPVVVV/AAAAAA////8AAAAAD1VVVV/AAAAAAAP/AAAAAAA9VVVVVfwAAAAAAAAAAAAAA/VVVVVVf8AAAAAAAAAAAAA/1VVVVVVX/AAAAAAAAAAAA/1VVVVVVVV/8AAAAAAAAAD/1VVVVVVVVVf/8AAAAAAAP/1VVVVVVVVVVV//////////VVVVVVVVVVVVVV///////9VVVVVVV" },
|
||||||
|
{"width" : "62", "buffer":"VVVVVVVVf///9VVVVVVVVVVVVVVV//////9VVVVVVVVVVVVX/8AAAA//1VVVVVVVVVVX/wAAAAAA/9VVVVVVVVVV/AAAAAAAAD/VVVVVVVVV/AAAAAAAAAA/1VVVVVVVfwAAAAAAAAAAP1VVVVVVXwAAAAAAAAAAAD1VVVVVX8AAAAAPwAAAAAD1VVVVV/AAAAAP//AAAAAD1VVVVfAAAAAD9X/AAAAAD1VVVV8AAAAA9VVfAAAAAPVVVVfAAAAAPVVVfAAAAAPVVVXwAAAAD1VVVfAAAAAPVVV8AAAAA9VVVVfAAAAA9VVXwAAAAPVVVVVfAAAAA9VV8AAAAD1VVVVVfAAAAD1VXwAAAAPVVVVVV8AAAAD1V8AAAAD1VVVVVXwAAAAPVXwAAAAPVVVVVVXwAAAA9V8AAAAD1VVVVVVfAAAAA9XwAAAAPVVVVVVV8AAAAD1fAAAAA9VVVVVVV8AAAAPXwAAAAPVVVVVVVXwAAAA9fAAAAA9VVVVVVVfAAAAD18AAAAD1VVVVVVV8AAAAPXwAAAA9VVVVVVVXwAAAAP8AAAAD1VVVVVVVfAAAAA/wAAAAPVVVVVVVV8AAAAD/AAAAA9VVVVVVVXwAAAAP8AAAAD1VVVVVVVfAAAAA/wAAAAPVVVVVVVV8AAAAD/AAAAA9VVVVVVVXwAAAAP8AAAAD1VVVVVVV8AAAAD3wAAAAPVVVVVVVXwAAAAPfAAAAA9VVVVVVVfAAAAA98AAAAD1VVVVVVV8AAAAD3wAAAAPVVVVVVVfAAAAAPfAAAAA9VVVVVVV8AAAAA98AAAAD1VVVVVVXwAAAAPXwAAAAPVVVVVVV8AAAAA9XwAAAA9VVVVVVXwAAAAD1fAAAAD1VVVVVV8AAAAAPV8AAAAD1VVVVVXwAAAAA9XwAAAAPVVVVVV8AAAAAPVfAAAAA9VVVVVXwAAAAA9VfAAAAD1VVVVV8AAAAAD1V8AAAAD1VVVVXwAAAAAPVXwAAAAPVVVVV8AAAAAA9VXwAAAAPVVVVfAAAAAAPVVfAAAAA9VVVV8AAAAAA9VVfAAAAA9VVVfAAAAAAD1VV8AAAAA9VVXwAAAAAAPVVV8AAAAA9VV8AAAAAAA9VVXwAAAAA/1/AAAAAAAD1VVXwAAAAA//wAAAAAAA9VVVXwAAAAADwAAAAAAAD1VVVXwAAAAAAAAAAAAAAPVVVVXwAAAAAAAAAAAAAA9VVVVX8AAAAAAAAAAAAAD1VVVVX/AAAAAAAAAAAAA9VVVVVV/wAAAAAAAAAAAD1VVVVVVf/wAAAAMAAAAAPVVVVVVVX//////8AAAAA9VVVVVVVVX////98AAAAD1VVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVVXwAAAA9VVVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVVfAAAAA9VVVVVVVVVVVVVV8AAAAD1VVVVVVVVVVVVVXwAAAAPVVVVVVVVVVVVVVfAAAAD1VVVVVVVVVVVVVV8AAAAPVVVVVVVVVVVVVVV//8AD9VVVVVVVVVVVVVVV/////VVVVVVVVVVVVVVVVVV//VVVVV" },
|
||||||
|
{"width" : "19", "buffer":"VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf///1V/////1fAAAA/fAAAAD3wAAAAP8AAAAD/AAAAA/wAAAAP8AAAAD/AAAAA/wAAAAP8AAAAD/AAAAA/wAAAAPfAAAAPX/////VX////VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf///1Vf////1fAAAA/fAAAAD3wAAAAP8AAAAD/AAAAA/wAAAAP8AAAAD/AAAAA/wAAAAP8AAAAD/AAAAA/wAAAAP8AAAAPX/////Vf////VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV" }
|
||||||
|
]
|
||||||
|
}
|
|
@ -0,0 +1,49 @@
|
||||||
|
exports.drawClock = function(fontIndex) {
|
||||||
|
var digits = [];
|
||||||
|
fontFile=require("Storage").read("contourclock-"+Math.abs(parseInt(fontIndex+0.5))+".json");
|
||||||
|
if (fontFile==undefined) return(false); //exit if font file not found
|
||||||
|
var font = JSON.parse(fontFile);
|
||||||
|
for (var n in font.characters) {
|
||||||
|
digits.push({width: parseInt(font.characters[n].width),
|
||||||
|
height: font.size,
|
||||||
|
bpp: 2,
|
||||||
|
transparent: 1,
|
||||||
|
buffer:E.toArrayBuffer(atob(font.characters[n].buffer))});
|
||||||
|
}
|
||||||
|
if (n!=10) return (false); //font file seems to be invalid
|
||||||
|
var x=0;
|
||||||
|
var y = g.getHeight()/2-digits[0].height/2;
|
||||||
|
var date = new Date();
|
||||||
|
g.clearRect(0,38,g.getWidth()-1,138);
|
||||||
|
d1=parseInt(date.getHours()/10);
|
||||||
|
d2=parseInt(date.getHours()%10);
|
||||||
|
d3=10;
|
||||||
|
d4=parseInt(date.getMinutes()/10);
|
||||||
|
d5=parseInt(date.getMinutes()%10);
|
||||||
|
w1=digits[d1].width;
|
||||||
|
w2=digits[d2].width;
|
||||||
|
w3=digits[d3].width;
|
||||||
|
w4=digits[d4].width;
|
||||||
|
w5=digits[d5].width;
|
||||||
|
squeeze=(g.getWidth()-w5)/(w1+w2+w3+w4);
|
||||||
|
if (fontIndex<0) {
|
||||||
|
fg=g.theme.fg;
|
||||||
|
bg=g.theme.bg;
|
||||||
|
g.setColor(bg);
|
||||||
|
g.setBgColor(fg);
|
||||||
|
}
|
||||||
|
g.drawImage(digits[d1],x,y);
|
||||||
|
x+=parseInt(w1*squeeze);
|
||||||
|
g.drawImage(digits[d2],x,y);
|
||||||
|
x+=parseInt(w2*squeeze);
|
||||||
|
g.drawImage(digits[d3],x,y);
|
||||||
|
x+=parseInt(w3*squeeze);
|
||||||
|
g.drawImage(digits[d4],x,y);
|
||||||
|
x+=parseInt(w4*squeeze);
|
||||||
|
g.drawImage(digits[d5],x,y);
|
||||||
|
if (fontIndex<0) {
|
||||||
|
g.setColor(fg);
|
||||||
|
g.setBgColor(bg);
|
||||||
|
}
|
||||||
|
return font.name;
|
||||||
|
}
|
|
@ -1,16 +1,19 @@
|
||||||
{ "id": "contourclock",
|
{ "id": "contourclock",
|
||||||
"name": "Contour Clock",
|
"name": "Contour Clock",
|
||||||
"shortName" : "Contour Clock",
|
"shortName" : "Contour Clock",
|
||||||
"version":"0.01",
|
"version":"0.23",
|
||||||
"icon": "app.png",
|
"icon": "app.png",
|
||||||
"description": "A Minimalist clockface with large Digits. Looks best with the dark theme",
|
"description": "A Minimalist clockface with large Digits. Now with more fonts!",
|
||||||
"screenshots" : [{"url":"screenshot.png"}],
|
"screenshots" : [{"url":"cc-screenshot-1.png"},{"url":"cc-screenshot-2.png"}],
|
||||||
"tags": "clock",
|
"tags": "clock",
|
||||||
|
"custom": "custom.html",
|
||||||
"allow_emulator":true,
|
"allow_emulator":true,
|
||||||
"supports" : ["BANGLEJS2"],
|
"supports" : ["BANGLEJS2"],
|
||||||
"type": "clock",
|
"type": "clock",
|
||||||
"storage": [
|
"storage": [
|
||||||
{"name":"contourclock.app.js","url":"app.js"},
|
{"name":"contourclock.app.js","url":"app.js"},
|
||||||
|
{"name":"contourclock.settings.js","url":"contourclock.settings.js"},
|
||||||
|
{"name":"contourclock","url":"lib.js"},
|
||||||
{"name":"contourclock.img","url":"app-icon.js","evaluate":true}
|
{"name":"contourclock.img","url":"app-icon.js","evaluate":true}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
|
@ -24,12 +24,7 @@ if (!settings) resetSettings();
|
||||||
function showMenu() {
|
function showMenu() {
|
||||||
const datemenu = {
|
const datemenu = {
|
||||||
'': {
|
'': {
|
||||||
'title': 'Set Date',
|
'title': 'Set Date'
|
||||||
'predraw': function() {
|
|
||||||
datemenu.Date.value = settings.day;
|
|
||||||
datemenu.Month.value = settings.month;
|
|
||||||
datemenu.Year.value = settings.year;
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
'Day': {
|
'Day': {
|
||||||
value: settings.day,
|
value: settings.day,
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
"description": "Shows you the days left until a certain date. Date can be set with a settings app and is written to a file.",
|
"description": "Shows you the days left until a certain date. Date can be set with a settings app and is written to a file.",
|
||||||
"icon": "app.png",
|
"icon": "app.png",
|
||||||
"tags": "",
|
"tags": "",
|
||||||
"supports": ["BANGLEJS"],
|
"supports": ["BANGLEJS", "BANGLEJS2"],
|
||||||
"allow_emulator": false,
|
"allow_emulator": false,
|
||||||
"storage": [
|
"storage": [
|
||||||
{"name":"daysl.app.js","url":"app.js"},
|
{"name":"daysl.app.js","url":"app.js"},
|
||||||
|
|
|
@ -1 +1,2 @@
|
||||||
0.01: New App!
|
0.01: New App!
|
||||||
|
0.02: Tweaked proximity identification settings
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
|
|
||||||
## Usage
|
## Usage
|
||||||
|
|
||||||
Real-time interactions will be recognised by [Pareto Anywhere](https://www.reelyactive.com/pareto/anywhere/) open source middleware and any other program which observes the [DirAct open standard](https://reelyactive.github.io/diract/).
|
Real-time interactions will be recognised by [Pareto Anywhere](https://www.reelyactive.com/pareto/anywhere/) open source middleware and any other program which observes the [DirAct open standard](https://reelyactive.github.io/diract/). See our [Bangle.js Development Guide](https://reelyactive.github.io/diy/banglejs-dev/) for details.
|
||||||
|
|
||||||
|
|
||||||
## Features
|
## Features
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/**
|
/**
|
||||||
* Copyright reelyActive 2017-2021
|
* Copyright reelyActive 2017-2022
|
||||||
* We believe in an open Internet of Things
|
* We believe in an open Internet of Things
|
||||||
*
|
*
|
||||||
* DirAct is jointly developed by reelyActive and Code Blue Consulting
|
* DirAct is jointly developed by reelyActive and Code Blue Consulting
|
||||||
|
@ -11,14 +11,14 @@ const NAMESPACE_FILTER_ID = [ 0xc0, 0xde, 0xb1, 0x0e, 0x1d,
|
||||||
0xd1, 0xe0, 0x1b, 0xed, 0x0c ];
|
0xd1, 0xe0, 0x1b, 0xed, 0x0c ];
|
||||||
const EXCITER_INSTANCE_IDS = new Uint32Array([ 0xe8c17e45 ]);
|
const EXCITER_INSTANCE_IDS = new Uint32Array([ 0xe8c17e45 ]);
|
||||||
const RESETTER_INSTANCE_IDS = new Uint32Array([ 0x4e5e77e4 ]);
|
const RESETTER_INSTANCE_IDS = new Uint32Array([ 0x4e5e77e4 ]);
|
||||||
const PROXIMITY_RSSI_THRESHOLD = -65;
|
const PROXIMITY_RSSI_THRESHOLD = -85;
|
||||||
const PROXIMITY_LED_RSSI_THRESHOLD = -65;
|
const PROXIMITY_LED_RSSI_THRESHOLD = -85;
|
||||||
const PROXIMITY_TABLE_SIZE = 8;
|
const PROXIMITY_TABLE_SIZE = 8;
|
||||||
const DIGEST_TABLE_SIZE = 32;
|
const DIGEST_TABLE_SIZE = 32;
|
||||||
const OBSERVE_PERIOD_MILLISECONDS = 400;
|
const OBSERVE_PERIOD_MILLISECONDS = 400;
|
||||||
const BROADCAST_PERIOD_MILLISECONDS = 3600;
|
const BROADCAST_PERIOD_MILLISECONDS = 1600;
|
||||||
const BROADCAST_DIGEST_PAGE_MILLISECONDS = 400;
|
const BROADCAST_DIGEST_PAGE_MILLISECONDS = 400;
|
||||||
const PROXIMITY_PACKET_INTERVAL_MILLISECONDS = 400;
|
const PROXIMITY_PACKET_INTERVAL_MILLISECONDS = 200;
|
||||||
const DIGEST_PACKET_INTERVAL_MILLISECONDS = 100;
|
const DIGEST_PACKET_INTERVAL_MILLISECONDS = 100;
|
||||||
const DIGEST_TIME_CYCLE_THRESHOLD = 86400;
|
const DIGEST_TIME_CYCLE_THRESHOLD = 86400;
|
||||||
const EXCITER_HOLDOFF_SECONDS = 60;
|
const EXCITER_HOLDOFF_SECONDS = 60;
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
"id": "diract",
|
"id": "diract",
|
||||||
"name": "DirAct",
|
"name": "DirAct",
|
||||||
"shortName": "DirAct",
|
"shortName": "DirAct",
|
||||||
"version": "0.01",
|
"version": "0.02",
|
||||||
"description": "Proximity interaction detection.",
|
"description": "Proximity interaction detection.",
|
||||||
"icon": "diract.png",
|
"icon": "diract.png",
|
||||||
"type": "app",
|
"type": "app",
|
||||||
|
|
|
@ -1,2 +1,2 @@
|
||||||
0.1: Added source code
|
0.01: Added source code
|
||||||
0.2: Added a README file
|
0.02: Added a README file
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
"id": "fd6fdetect",
|
"id": "fd6fdetect",
|
||||||
"name": "fd6fdetect",
|
"name": "fd6fdetect",
|
||||||
"shortName": "fd6fdetect",
|
"shortName": "fd6fdetect",
|
||||||
"version": "0.2",
|
"version": "0.02",
|
||||||
"description": "Allows you to see 0xFD6F beacons near you.",
|
"description": "Allows you to see 0xFD6F beacons near you.",
|
||||||
"icon": "app.png",
|
"icon": "app.png",
|
||||||
"tags": "tool",
|
"tags": "tool",
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{
|
{
|
||||||
"id": "ffcniftya",
|
"id": "ffcniftya",
|
||||||
"name": "Nifty-A Clock",
|
"name": "Nifty-A Clock",
|
||||||
"version": "0.01",
|
"version": "0.02",
|
||||||
"description": "A nifty clock with time and date",
|
"description": "A nifty clock with time and date",
|
||||||
"icon": "app.png",
|
"icon": "app.png",
|
||||||
"screenshots": [{"url":"screenshot_nifty.png"}],
|
"screenshots": [{"url":"screenshot_nifty.png"}],
|
||||||
|
@ -12,6 +12,8 @@
|
||||||
"allow_emulator": true,
|
"allow_emulator": true,
|
||||||
"storage": [
|
"storage": [
|
||||||
{"name":"ffcniftya.app.js","url":"app.js"},
|
{"name":"ffcniftya.app.js","url":"app.js"},
|
||||||
{"name":"ffcniftya.img","url":"app-icon.js","evaluate":true}
|
{"name":"ffcniftya.img","url":"app-icon.js","evaluate":true},
|
||||||
]
|
{"name":"ffcniftya.settings.js","url":"settings.js"}
|
||||||
|
],
|
||||||
|
"data": [{"name":"ffcniftya.json"}]
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
"description": "Simple file manager, allows user to examine watch storage and display, load or delete individual files",
|
"description": "Simple file manager, allows user to examine watch storage and display, load or delete individual files",
|
||||||
"icon": "icons8-filing-cabinet-48.png",
|
"icon": "icons8-filing-cabinet-48.png",
|
||||||
"tags": "tools",
|
"tags": "tools",
|
||||||
"supports": ["BANGLEJS"],
|
"supports": ["BANGLEJS","BANGLEJS2"],
|
||||||
"readme": "README.md",
|
"readme": "README.md",
|
||||||
"storage": [
|
"storage": [
|
||||||
{"name":"fileman.app.js","url":"fileman.app.js"},
|
{"name":"fileman.app.js","url":"fileman.app.js"},
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
"id": "floralclk",
|
"id": "floralclk",
|
||||||
"name": "Floral Clock",
|
"name": "Floral Clock",
|
||||||
"version": "0.01",
|
"version": "0.01",
|
||||||
"description": "A clock with a flower background by [Lillith May](https://www.instagram.com/_lilustrations_/). **Note: Works on any Bangle.js 2 but requires firmware 2v11 or later on Bangle.js 1**",
|
"description": "A clock with a flower background by [Lillith May](https://www.instagram.com/_lilustrations_/)",
|
||||||
"icon": "app.png",
|
"icon": "app.png",
|
||||||
"screenshots": [{"url":"screenshot_floral.png"}],
|
"screenshots": [{"url":"screenshot_floral.png"}],
|
||||||
"type": "clock",
|
"type": "clock",
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
"screenshots": [{"url":"screenshot.png"}, {"url":"screenshot1.png"}],
|
"screenshots": [{"url":"screenshot.png"}, {"url":"screenshot1.png"}],
|
||||||
"type": "clock",
|
"type": "clock",
|
||||||
"tags": "clock",
|
"tags": "clock",
|
||||||
"supports": ["BANGLEJS2"],
|
"supports" : ["BANGLEJS","BANGLEJS2"],
|
||||||
"readme": "README.md",
|
"readme": "README.md",
|
||||||
"storage": [
|
"storage": [
|
||||||
{"name":"ftclock.app.js","url":"app.js"},
|
{"name":"ftclock.app.js","url":"app.js"},
|
||||||
|
|
|
@ -4,3 +4,4 @@
|
||||||
Take 'beta' tag off
|
Take 'beta' tag off
|
||||||
0.03: Improve bootloader update safety. Now sets unsafeFlash:1 to allow flash with 2v11 and later
|
0.03: Improve bootloader update safety. Now sets unsafeFlash:1 to allow flash with 2v11 and later
|
||||||
Add CRC checks for common bootloaders that we know don't work
|
Add CRC checks for common bootloaders that we know don't work
|
||||||
|
0.04: Include a precompiled bootloader for easy bootloader updates
|
||||||
|
|
|
@ -3,33 +3,42 @@
|
||||||
<link rel="stylesheet" href="../../css/spectre.min.css">
|
<link rel="stylesheet" href="../../css/spectre.min.css">
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<p><b>THIS IS CURRENTLY BETA - PLEASE USE THE NORMAL FIRMWARE UPDATE
|
<p>This tool allows you to update the bootloader on <a href="https://www.espruino.com/Bangle.js2">Bangle.js 2</a> devices
|
||||||
INSTRUCTIONS FOR <a href="https://www.espruino.com/Bangle.js#firmware-updates" target="_blank">BANGLE.JS</a> 1 AND <a href="https://www.espruino.com/Bangle.js2#firmware-updates" target="_blank">BANGLE.JS 2</a></b>. For usage on Bangle.js 2 you'll likely need to have an updated bootloader.</p>
|
from within the App Loader.</p>
|
||||||
|
|
||||||
<div id="fw-unknown">
|
<div id="fw-unknown">
|
||||||
<p><b>Firmware updates using the App Loader are only possible on
|
<p><b>Firmware updates using the App Loader are only possible on
|
||||||
Bangle.js 2. For firmware updates on Bangle.js 1 please
|
Bangle.js 2. For firmware updates on Bangle.js 1 please
|
||||||
<a href="https://www.espruino.com/Bangle.js#firmware-updates" target="_blank">see the Bangle.js 1 instructions</a></b></p>
|
<a href="https://www.espruino.com/Bangle.js#firmware-updates" target="_blank">see the Bangle.js 1 instructions</a></b></p>
|
||||||
</div>
|
</div>
|
||||||
<p>Your current firmware version is <span id="fw-version" style="font-weight:bold">unknown</span></p>
|
<ul>
|
||||||
|
<p>Your current firmware version is <span id="fw-version" style="font-weight:bold">unknown</span> and bootloader is <span id="boot-version" style="font-weight:bold">unknown</span></p>
|
||||||
|
</ul>
|
||||||
<div id="fw-ok" style="display:none">
|
<div id="fw-ok" style="display:none">
|
||||||
|
<p>If you have an early (KickStarter or developer) Bangle.js device and still have the old 2v10.x bootloader, the Firmware Update
|
||||||
|
will fail with a message about the bootloader version. If so, please <a href="bootloader_espruino_2v12_banglejs2.hex" class="fw-link">click here to update to bootloader 2v12</a> and then click the 'Upload' button that appears.</p>
|
||||||
<div id="latest-firmware" style="display:none">
|
<div id="latest-firmware" style="display:none">
|
||||||
<p>The currently available Espruino firmware releases are:</p>
|
<p>The currently available Espruino firmware releases are:</p>
|
||||||
<ul id="latest-firmware-list">
|
<ul id="latest-firmware-list">
|
||||||
</ul>
|
</ul>
|
||||||
<p>To update, click the link and then click the 'Upload' button that appears.</p>
|
<p>To update, click a link above and then click the 'Upload' button that appears.</p>
|
||||||
</div>
|
</div>
|
||||||
|
<a href="#" id="advanced-btn">Advanced ▼</a>
|
||||||
<p>Or you can upload a hex or zip file here. This file should be an <code>.app_hex</code>
|
<div id="advanced-div" style="display:none">
|
||||||
|
<p>Firmware updates via this tool work differently to the NRF Connect method mentioned on
|
||||||
|
<a href="https://www.espruino.com/Bangle.js2#firmware-updates">the Bangle.js 2 page</a>. Firmware
|
||||||
|
is uploaded to a file on the Bangle. Once complete the Bangle reboots and the bootloader copies
|
||||||
|
the new firmware into internal Storage.</p>
|
||||||
|
<p>In addition to the links above, you can upload a hex or zip file directly below. This file should be an <code>.app_hex</code>
|
||||||
file, *not* the normal <code>.hex</code> (as that contains the bootloader as well).</p>
|
file, *not* the normal <code>.hex</code> (as that contains the bootloader as well).</p>
|
||||||
|
<p><b>DANGER!</b> No verification is performed on uploaded ZIP or HEX files - you could
|
||||||
|
potentially overwrite your bootloader with the wrong binary and brick your Bangle.</p>
|
||||||
<input class="form-input" type="file" id="fileLoader" accept=".hex,.app_hex,.zip"/><br>
|
<input class="form-input" type="file" id="fileLoader" accept=".hex,.app_hex,.zip"/><br>
|
||||||
|
</div>
|
||||||
<p><button id="upload" class="btn btn-primary" style="display:none">Upload</button></p>
|
<p><button id="upload" class="btn btn-primary" style="display:none">Upload</button></p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<p>Firmware updates via this tool work differently to the NRF Connect method mentioned on
|
|
||||||
<a href="https://www.espruino.com/Bangle.js2#firmware-updates">the Bangle.js page</a>. Firmware
|
|
||||||
is uploaded to a file on the Bangle. Once complete the Bangle reboots and the bootloader copies
|
|
||||||
the new firmware into internal Storage.</p>
|
|
||||||
|
|
||||||
<pre id="log"></pre>
|
<pre id="log"></pre>
|
||||||
|
|
||||||
|
@ -38,7 +47,6 @@
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/jszip/3.7.1/jszip.js"></script>
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/jszip/3.7.1/jszip.js"></script>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
var hex;
|
|
||||||
var hexJS; // JS to upload hex
|
var hexJS; // JS to upload hex
|
||||||
var HEADER_LEN = 16; // size of app flash header
|
var HEADER_LEN = 16; // size of app flash header
|
||||||
var APP_START = 0x26000;
|
var APP_START = 0x26000;
|
||||||
|
@ -47,35 +55,51 @@ var MAX_ADDRESS = 0x1000000; // discount anything in hex file above this
|
||||||
var VERSION = 0x12345678; // VERSION! Use this to test firmware in JS land
|
var VERSION = 0x12345678; // VERSION! Use this to test firmware in JS land
|
||||||
var DEBUG = false;
|
var DEBUG = false;
|
||||||
|
|
||||||
|
function clearLog() {
|
||||||
|
document.getElementById('log').innerText = "";
|
||||||
|
console.log("Log Cleared");
|
||||||
|
}
|
||||||
function log(t) {
|
function log(t) {
|
||||||
document.getElementById('log').innerText += t+"\n";
|
document.getElementById('log').innerText += t+"\n";
|
||||||
console.log(t);
|
console.log(t);
|
||||||
}
|
}
|
||||||
|
|
||||||
function onInit(device) {
|
function onInit(device) {
|
||||||
console.log(device);
|
console.log("fwupdate init", device);
|
||||||
if (device && device.version)
|
if (device && device.version)
|
||||||
document.getElementById("fw-version").innerText = device.version;
|
document.getElementById("fw-version").innerText = device.version;
|
||||||
if (device && device.id=="BANGLEJS2") {
|
if (device && device.id=="BANGLEJS2") {
|
||||||
document.getElementById("fw-unknown").style = "display:none";
|
document.getElementById("fw-unknown").style = "display:none";
|
||||||
document.getElementById("fw-ok").style = "";
|
document.getElementById("fw-ok").style = "";
|
||||||
}
|
}
|
||||||
|
Puck.eval("E.CRC32(E.memoryArea(0xF7000,0x7000))", crc => {
|
||||||
|
console.log("Bootloader CRC = "+crc);
|
||||||
|
var version = `unknown (CRC ${crc})`;
|
||||||
|
var ok = true;
|
||||||
|
if (crc==1339551013) { version = "2v10.219"; ok = false; }
|
||||||
|
if (crc==1207580954) { version = "2v10.236"; ok = false; }
|
||||||
|
if (crc==3435933210) version = "2v11.52";
|
||||||
|
if (crc==46757280) version = "2v11.58";
|
||||||
|
if (crc==3508163280 || crc==1418074094) version = "2v12";
|
||||||
|
if (!ok) {
|
||||||
|
version += `(⚠ update required)`;
|
||||||
|
}
|
||||||
|
document.getElementById("boot-version").innerHTML = version;
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
function checkForFileOnServer() {
|
function checkForFileOnServer() {
|
||||||
function getURL(url, callback) {
|
function getURL(url, callback) {
|
||||||
var xhr = new XMLHttpRequest();
|
var xhr = new XMLHttpRequest();
|
||||||
xhr.onload = callback;
|
xhr.onload = callback;
|
||||||
baseURL = url;
|
xhr.open("GET", url);
|
||||||
xhr.open("GET", baseURL);
|
|
||||||
xhr.responseType = "document";
|
xhr.responseType = "document";
|
||||||
xhr.send();
|
xhr.send();
|
||||||
}
|
}
|
||||||
|
|
||||||
function getFilesFromURL(url, regex, callback) {
|
function getFilesFromURL(url, regex, callback) {
|
||||||
getURL(url, function() {
|
getURL(url, function() {
|
||||||
console.log(this.responseXML)
|
//console.log(this.responseXML)
|
||||||
var files = [];
|
var files = [];
|
||||||
var elements = this.responseXML.getElementsByTagName("a");
|
var elements = this.responseXML.getElementsByTagName("a");
|
||||||
for (var i=0;i<elements.length;i++) {
|
for (var i=0;i<elements.length;i++) {
|
||||||
|
@ -113,8 +137,7 @@ function checkForFileOnServer() {
|
||||||
for (var i=0;i<fwlinks.length;i++)
|
for (var i=0;i<fwlinks.length;i++)
|
||||||
fwlinks[i].addEventListener("click", e => {
|
fwlinks[i].addEventListener("click", e => {
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
var url = e.target.href;
|
downloadURL(e.target.href).then(info=>{
|
||||||
downloadZipFile(url).then(info=>{
|
|
||||||
document.getElementById("upload").style = ""; // show upload
|
document.getElementById("upload").style = ""; // show upload
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
@ -122,6 +145,32 @@ function checkForFileOnServer() {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function downloadURL(url) {
|
||||||
|
clearLog();
|
||||||
|
log("Downloading "+url);
|
||||||
|
if (url.endsWith(".zip")) {
|
||||||
|
return downloadZipFile(url);
|
||||||
|
} else if (url.endsWith(".hex")) {
|
||||||
|
return downloadHexFile(url);
|
||||||
|
} else {
|
||||||
|
log("Unknown URL "+url+" - expecting .hex or .zip extension");
|
||||||
|
return Promise.reject();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function downloadHexFile(url) {
|
||||||
|
return new Promise(resolve => {
|
||||||
|
var xhr = new XMLHttpRequest();
|
||||||
|
xhr.onload = function() {
|
||||||
|
hexFileLoaded(this.responseText.toString());
|
||||||
|
resolve();
|
||||||
|
};
|
||||||
|
xhr.open("GET", url);
|
||||||
|
xhr.responseType = "text";
|
||||||
|
xhr.send();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
function downloadZipFile(url) {
|
function downloadZipFile(url) {
|
||||||
return new Promise((resolve,reject) => {
|
return new Promise((resolve,reject) => {
|
||||||
Espruino.Core.Utils.getBinaryURL(url, (err, binary) => {
|
Espruino.Core.Utils.getBinaryURL(url, (err, binary) => {
|
||||||
|
@ -154,15 +203,15 @@ function convertZipFile(binary) {
|
||||||
if (info.bin_file.byteLength > APP_MAX_LENGTH) throw new Error("Firmware file is too big!");
|
if (info.bin_file.byteLength > APP_MAX_LENGTH) throw new Error("Firmware file is too big!");
|
||||||
info.storageContents = new Uint8Array(info.bin_file.byteLength + HEADER_LEN)
|
info.storageContents = new Uint8Array(info.bin_file.byteLength + HEADER_LEN)
|
||||||
info.storageContents.set(new Uint8Array(info.bin_file), HEADER_LEN);
|
info.storageContents.set(new Uint8Array(info.bin_file), HEADER_LEN);
|
||||||
|
console.log("ZIP downloaded and decoded",info);
|
||||||
createJS_app(info.storageContents, APP_START, APP_START+info.bin_file.byteLength);
|
createJS_app(info.storageContents, APP_START, APP_START+info.bin_file.byteLength);
|
||||||
log("Download complete");
|
|
||||||
console.log("Download complete",info);
|
|
||||||
document.getElementById("upload").style = ""; // show upload
|
document.getElementById("upload").style = ""; // show upload
|
||||||
return info;
|
return info;
|
||||||
}).catch(err => log("ERROR:" + err));
|
}).catch(err => log("ERROR:" + err));
|
||||||
}
|
}
|
||||||
|
|
||||||
function handleFileSelect(event) {
|
function handleFileSelect(event) {
|
||||||
|
clearLog();
|
||||||
if (event.target.files.length!=1) {
|
if (event.target.files.length!=1) {
|
||||||
log("More than one file selected!");
|
log("More than one file selected!");
|
||||||
return;
|
return;
|
||||||
|
@ -172,13 +221,14 @@ function handleFileSelect(event) {
|
||||||
var reader = new FileReader();
|
var reader = new FileReader();
|
||||||
if (file.name.endsWith(".hex") || file.name.endsWith(".app_hex")) {
|
if (file.name.endsWith(".hex") || file.name.endsWith(".app_hex")) {
|
||||||
reader.onload = function(event) {
|
reader.onload = function(event) {
|
||||||
hex = event.target.result.split("\n");
|
log("HEX uploaded");
|
||||||
document.getElementById("upload").style = ""; // show upload
|
document.getElementById("upload").style = ""; // show upload
|
||||||
fileLoaded();
|
hexFileLoaded(event.target.result);
|
||||||
};
|
};
|
||||||
reader.readAsText(event.target.files[0]);
|
reader.readAsText(event.target.files[0]);
|
||||||
} else if (file.name.endsWith(".zip")) {
|
} else if (file.name.endsWith(".zip")) {
|
||||||
reader.onload = function(event) {
|
reader.onload = function(event) {
|
||||||
|
log("ZIP uploaded");
|
||||||
convertZipFile(event.target.result);
|
convertZipFile(event.target.result);
|
||||||
};
|
};
|
||||||
reader.readAsArrayBuffer(event.target.files[0]);
|
reader.readAsArrayBuffer(event.target.files[0]);
|
||||||
|
@ -187,25 +237,6 @@ function handleFileSelect(event) {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
function parseLines(dataCallback) {
|
|
||||||
var addrHi = 0;
|
|
||||||
hex.forEach(function(hexline) {
|
|
||||||
if (DEBUG) console.log(hexline);
|
|
||||||
var bytes = hexline.substr(1,2);
|
|
||||||
var addrLo = parseInt(hexline.substr(3,4),16);
|
|
||||||
var cmd = hexline.substr(7,2);
|
|
||||||
if (cmd=="02") addrHi = parseInt(hexline.substr(9,4),16) << 4; // Extended Segment Address
|
|
||||||
else if (cmd=="04") addrHi = parseInt(hexline.substr(9,4),16) << 16; // Extended Linear Address
|
|
||||||
else if (cmd=="00") {
|
|
||||||
var addr = addrHi + addrLo;
|
|
||||||
var data = [];
|
|
||||||
for (var i=0;i<16;i++) data.push(parseInt(hexline.substr(9+(i*2),2),16));
|
|
||||||
dataCallback(addr,data);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
function CRC32(data) {
|
function CRC32(data) {
|
||||||
var crc = 0xFFFFFFFF;
|
var crc = 0xFFFFFFFF;
|
||||||
data.forEach(function(d) {
|
data.forEach(function(d) {
|
||||||
|
@ -278,6 +309,7 @@ function createJS_app(binary, startAddress, endAddress) {
|
||||||
}
|
}
|
||||||
hexJS += '\x10setTimeout(()=>E.showMessage("Rebooting..."),50);\n';
|
hexJS += '\x10setTimeout(()=>E.showMessage("Rebooting..."),50);\n';
|
||||||
hexJS += '\x10setTimeout(()=>E.reboot(), 1000);\n';
|
hexJS += '\x10setTimeout(()=>E.reboot(), 1000);\n';
|
||||||
|
log("Firmware update ready for upload");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -302,12 +334,32 @@ function createJS_bootloader(binary, startAddress, endAddress) {
|
||||||
hexJS += 'f.erasePage(0x'+i.toString(16)+');\n';
|
hexJS += 'f.erasePage(0x'+i.toString(16)+');\n';
|
||||||
hexJS += `f.write(_fw,${startAddress});\n`;
|
hexJS += `f.write(_fw,${startAddress});\n`;
|
||||||
hexJS += `})()\n`;
|
hexJS += `})()\n`;
|
||||||
|
log("Bootloader ready for upload");
|
||||||
}
|
}
|
||||||
|
|
||||||
function fileLoaded() {
|
function hexFileLoaded(hexString) {
|
||||||
|
var hex = hexString.split("\n"); // array of lines of the hex file
|
||||||
|
function hexParseLines(dataCallback) {
|
||||||
|
var addrHi = 0;
|
||||||
|
hex.forEach(function(hexline) {
|
||||||
|
if (DEBUG) console.log(hexline);
|
||||||
|
var bytes = hexline.substr(1,2);
|
||||||
|
var addrLo = parseInt(hexline.substr(3,4),16);
|
||||||
|
var cmd = hexline.substr(7,2);
|
||||||
|
if (cmd=="02") addrHi = parseInt(hexline.substr(9,4),16) << 4; // Extended Segment Address
|
||||||
|
else if (cmd=="04") addrHi = parseInt(hexline.substr(9,4),16) << 16; // Extended Linear Address
|
||||||
|
else if (cmd=="00") {
|
||||||
|
var addr = addrHi + addrLo;
|
||||||
|
var data = [];
|
||||||
|
for (var i=0;i<16;i++) data.push(parseInt(hexline.substr(9+(i*2),2),16));
|
||||||
|
dataCallback(addr,data);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
// Work out addresses
|
// Work out addresses
|
||||||
var startAddress, endAddress = 0;
|
var startAddress, endAddress = 0;
|
||||||
parseLines(function(addr, data) {
|
hexParseLines(function(addr, data) {
|
||||||
if (addr>MAX_ADDRESS) return; // ignore data out of range
|
if (addr>MAX_ADDRESS) return; // ignore data out of range
|
||||||
if (startAddress === undefined || addr<startAddress)
|
if (startAddress === undefined || addr<startAddress)
|
||||||
startAddress = addr;
|
startAddress = addr;
|
||||||
|
@ -319,7 +371,7 @@ function fileLoaded() {
|
||||||
// Work out data
|
// Work out data
|
||||||
var binary = new Uint8Array(HEADER_LEN + endAddress-startAddress);
|
var binary = new Uint8Array(HEADER_LEN + endAddress-startAddress);
|
||||||
binary.fill(0); // actually seems to assume a block is filled with 0 if not complete
|
binary.fill(0); // actually seems to assume a block is filled with 0 if not complete
|
||||||
parseLines(function(addr, data) {
|
hexParseLines(function(addr, data) {
|
||||||
if (addr>MAX_ADDRESS) return; // ignore data out of range
|
if (addr>MAX_ADDRESS) return; // ignore data out of range
|
||||||
var binAddr = HEADER_LEN + addr - startAddress;
|
var binAddr = HEADER_LEN + addr - startAddress;
|
||||||
binary.set(data, binAddr);
|
binary.set(data, binAddr);
|
||||||
|
@ -351,6 +403,10 @@ function handleUpload() {
|
||||||
|
|
||||||
document.getElementById('fileLoader').addEventListener('change', handleFileSelect, false);
|
document.getElementById('fileLoader').addEventListener('change', handleFileSelect, false);
|
||||||
document.getElementById("upload").addEventListener("click", handleUpload);
|
document.getElementById("upload").addEventListener("click", handleUpload);
|
||||||
|
document.getElementById("advanced-btn").addEventListener("click", function() {
|
||||||
|
document.getElementById("advanced-btn").style = "display:none";
|
||||||
|
document.getElementById("advanced-div").style = "";
|
||||||
|
});
|
||||||
setTimeout(checkForFileOnServer, 10);
|
setTimeout(checkForFileOnServer, 10);
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
{
|
{
|
||||||
"id": "fwupdate",
|
"id": "fwupdate",
|
||||||
"name": "Firmware Update",
|
"name": "Firmware Update",
|
||||||
"version": "0.03",
|
"version": "0.04",
|
||||||
"description": "[BETA] Uploads new Espruino firmwares to Bangle.js 2. For now, please use the instructions under https://www.espruino.com/Bangle.js2#firmware-updates",
|
"description": "Uploads new Espruino firmwares to Bangle.js 2",
|
||||||
"icon": "app.png",
|
"icon": "app.png",
|
||||||
"type": "RAM",
|
"type": "RAM",
|
||||||
"tags": "tools,system",
|
"tags": "tools,system",
|
||||||
|
|
|
@ -26,3 +26,4 @@
|
||||||
0.24: tag HRM power requests to allow this to work alongside other widgets/apps (fix #799)
|
0.24: tag HRM power requests to allow this to work alongside other widgets/apps (fix #799)
|
||||||
0.25: workaround call notification
|
0.25: workaround call notification
|
||||||
Fix inflated step number
|
Fix inflated step number
|
||||||
|
0.26: Include charging status in battery updates to phone
|
||||||
|
|
|
@ -11,11 +11,12 @@ t can be one of "info", "warn", "error"
|
||||||
## report battery level
|
## report battery level
|
||||||
|
|
||||||
```
|
```
|
||||||
{ "t": "status", "bat": 30, "volt": 30 }
|
{ "t": "status", "bat": 30, "volt": 30, "chg": 0 }
|
||||||
```
|
```
|
||||||
|
|
||||||
* bat is in range 0 to 100
|
* bat is in range 0 to 100
|
||||||
* volt is optional and should be greater than 0
|
* volt is optional and should be greater than 0
|
||||||
|
* chg is optional and should be either 0 or 1 to indicate the watch is charging
|
||||||
|
|
||||||
## find phone
|
## find phone
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{
|
{
|
||||||
"id": "gbridge",
|
"id": "gbridge",
|
||||||
"name": "Gadgetbridge",
|
"name": "Gadgetbridge",
|
||||||
"version": "0.25",
|
"version": "0.26",
|
||||||
"description": "(NOT RECOMMENDED) Displays Gadgetbridge notifications from Android. Please use the 'Android' Bangle.js app instead.",
|
"description": "(NOT RECOMMENDED) Displays Gadgetbridge notifications from Android. Please use the 'Android' Bangle.js app instead.",
|
||||||
"icon": "app.png",
|
"icon": "app.png",
|
||||||
"type": "widget",
|
"type": "widget",
|
||||||
|
|
|
@ -256,7 +256,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
function sendBattery() {
|
function sendBattery() {
|
||||||
gbSend({ t: "status", bat: E.getBattery() });
|
gbSend({ t: "status", bat: E.getBattery(), chg: Bangle.isCharging()?1:0 });
|
||||||
}
|
}
|
||||||
|
|
||||||
// Send a summary of activity to Gadgetbridge
|
// Send a summary of activity to Gadgetbridge
|
||||||
|
@ -268,6 +268,7 @@
|
||||||
|
|
||||||
// Battery monitor
|
// Battery monitor
|
||||||
NRF.on("connect", () => setTimeout(sendBattery, 2000));
|
NRF.on("connect", () => setTimeout(sendBattery, 2000));
|
||||||
|
Bangle.on("charging", sendBattery);
|
||||||
setInterval(sendBattery, 10*60*1000);
|
setInterval(sendBattery, 10*60*1000);
|
||||||
sendBattery();
|
sendBattery();
|
||||||
// Activity monitor
|
// Activity monitor
|
||||||
|
|
|
@ -8,3 +8,5 @@
|
||||||
0.07: Added coloured bar charts
|
0.07: Added coloured bar charts
|
||||||
0.08: Suppress bleed through of E.showMenu's when displaying bar charts
|
0.08: Suppress bleed through of E.showMenu's when displaying bar charts
|
||||||
0.09: Fix file naming so months are 1-based (not 0) (fix #1119)
|
0.09: Fix file naming so months are 1-based (not 0) (fix #1119)
|
||||||
|
0.10: Adds additional 3 minute setting for HRM
|
||||||
|
0.11: Pre-minified boot&lib - folds constants and saves RAM
|
||||||
|
|
|
@ -34,6 +34,11 @@ writes data to a binary file (one per month).
|
||||||
A library (that can be used with `require("health").readXYZ` can then be used
|
A library (that can be used with `require("health").readXYZ` can then be used
|
||||||
to grab historical health info.
|
to grab historical health info.
|
||||||
|
|
||||||
|
`boot.js` and `lib.js` include some constants that don't get inlined by the simple
|
||||||
|
minifier used in the App Loader, so we use the closure compiler to pre-minify them.
|
||||||
|
The easiest way to use it is to install `https://github.com/espruino/EspruinoDocs`
|
||||||
|
and run `EspruinoDocs/bin/minify.js lib.js lib.min.js`
|
||||||
|
|
||||||
## TODO
|
## TODO
|
||||||
|
|
||||||
* `interface` page for desktop to allow data to be viewed and exported in common formats
|
* `interface` page for desktop to allow data to be viewed and exported in common formats
|
||||||
|
|