mirror of https://github.com/jetkvm/kvm.git
Compare commits
40 Commits
e1dcc5531e
...
93bc8de425
| Author | SHA1 | Date |
|---|---|---|
|
|
93bc8de425 | |
|
|
4b049c4b7c | |
|
|
7955ee9d35 | |
|
|
1ce63664c0 | |
|
|
4b6e796a0e | |
|
|
79098d3546 | |
|
|
50fc88aae1 | |
|
|
204909b49a | |
|
|
b1c788cc5e | |
|
|
71fe95bf57 | |
|
|
ce9f95b8c8 | |
|
|
9a4d061034 | |
|
|
2444817455 | |
|
|
74e64f69a7 | |
|
|
eb68c0ea5f | |
|
|
c775979ccb | |
|
|
403141c96a | |
|
|
cc9ff74276 | |
|
|
b144d9926f | |
|
|
e755a6e1b1 | |
|
|
99a8c2711c | |
|
|
317218a682 | |
|
|
62b8dee170 | |
|
|
bdd6f4247b | |
|
|
63aa940f42 | |
|
|
043ef9ddfc | |
|
|
437f0b854a | |
|
|
a45d55123c | |
|
|
213e750e04 | |
|
|
6dcb0286e3 | |
|
|
74ccca0b1a | |
|
|
0ad435475b | |
|
|
23bf3978fa | |
|
|
9438ab7778 | |
|
|
12d31a3d8e | |
|
|
657a177462 | |
|
|
8f4081a5b1 | |
|
|
359778967f | |
|
|
703625d59a | |
|
|
cb24ef6d4f |
|
|
@ -1,27 +0,0 @@
|
||||||
{
|
|
||||||
"name": "JetKVM",
|
|
||||||
"image": "mcr.microsoft.com/devcontainers/go:1-1.23-bookworm",
|
|
||||||
"features": {
|
|
||||||
"ghcr.io/devcontainers/features/node:1": {
|
|
||||||
// Should match what is defined in ui/package.json
|
|
||||||
"version": "22.15.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"mounts": [
|
|
||||||
"source=${localEnv:HOME}/.ssh,target=/home/vscode/.ssh,type=bind,consistency=cached"
|
|
||||||
],
|
|
||||||
"customizations": {
|
|
||||||
"vscode": {
|
|
||||||
"extensions": [
|
|
||||||
"bradlc.vscode-tailwindcss",
|
|
||||||
"GitHub.vscode-pull-request-github",
|
|
||||||
"dbaeumer.vscode-eslint",
|
|
||||||
"golang.go",
|
|
||||||
"ms-vscode.makefile-tools",
|
|
||||||
"esbenp.prettier-vscode",
|
|
||||||
"github.vscode-github-actions"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
@ -0,0 +1,41 @@
|
||||||
|
{
|
||||||
|
"name": "JetKVM docker devcontainer",
|
||||||
|
"image": "mcr.microsoft.com/devcontainers/go:1.25-trixie",
|
||||||
|
"features": {
|
||||||
|
"ghcr.io/devcontainers/features/node:1": {
|
||||||
|
// Should match what is defined in ui/package.json
|
||||||
|
"version": "22.20.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"mounts": [
|
||||||
|
"source=${localEnv:HOME}/.ssh,target=/home/vscode/.ssh,type=bind,consistency=cached"
|
||||||
|
],
|
||||||
|
"onCreateCommand": ".devcontainer/install-deps.sh",
|
||||||
|
"customizations": {
|
||||||
|
"vscode": {
|
||||||
|
"extensions": [
|
||||||
|
// coding styles
|
||||||
|
"chrislajoie.vscode-modelines",
|
||||||
|
"editorconfig.editorconfig",
|
||||||
|
// GitHub
|
||||||
|
"GitHub.vscode-pull-request-github",
|
||||||
|
"github.vscode-github-actions",
|
||||||
|
// Golang
|
||||||
|
"golang.go",
|
||||||
|
// C / C++
|
||||||
|
"ms-vscode.cpptools",
|
||||||
|
"ms-vscode.cpptools-extension-pack",
|
||||||
|
// CMake / Makefile
|
||||||
|
"ms-vscode.makefile-tools",
|
||||||
|
"ms-vscode.cmake-tools",
|
||||||
|
// Frontend
|
||||||
|
"esbenp.prettier-vscode",
|
||||||
|
"dbaeumer.vscode-eslint",
|
||||||
|
"bradlc.vscode-tailwindcss",
|
||||||
|
"codeandstuff.package-json-upgrade",
|
||||||
|
// Localization
|
||||||
|
"inlang.vs-code-extension"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,37 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
SUDO_PATH=$(which sudo)
|
||||||
|
function sudo() {
|
||||||
|
if [ "$UID" -eq 0 ]; then
|
||||||
|
"$@"
|
||||||
|
else
|
||||||
|
${SUDO_PATH} "$@"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
set -ex
|
||||||
|
|
||||||
|
export DEBIAN_FRONTEND=noninteractive
|
||||||
|
sudo apt-get update && \
|
||||||
|
sudo apt-get install -y --no-install-recommends \
|
||||||
|
iputils-ping \
|
||||||
|
build-essential \
|
||||||
|
device-tree-compiler \
|
||||||
|
gperf g++-multilib gcc-multilib \
|
||||||
|
libnl-3-dev libdbus-1-dev libelf-dev libmpc-dev dwarves \
|
||||||
|
bc openssl flex bison libssl-dev python3 python-is-python3 texinfo kmod cmake \
|
||||||
|
wget zstd \
|
||||||
|
python3-venv python3-kconfiglib \
|
||||||
|
&& sudo rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
|
# Install buildkit
|
||||||
|
BUILDKIT_VERSION="v0.2.5"
|
||||||
|
BUILDKIT_TMPDIR="$(mktemp -d)"
|
||||||
|
pushd "${BUILDKIT_TMPDIR}" > /dev/null
|
||||||
|
|
||||||
|
wget https://github.com/jetkvm/rv1106-system/releases/download/${BUILDKIT_VERSION}/buildkit.tar.zst && \
|
||||||
|
sudo mkdir -p /opt/jetkvm-native-buildkit && \
|
||||||
|
sudo tar --use-compress-program="unzstd --long=31" -xvf buildkit.tar.zst -C /opt/jetkvm-native-buildkit && \
|
||||||
|
rm buildkit.tar.zst
|
||||||
|
popd
|
||||||
|
rm -rf "${BUILDKIT_TMPDIR}"
|
||||||
|
|
@ -0,0 +1,50 @@
|
||||||
|
{
|
||||||
|
"name": "JetKVM podman devcontainer",
|
||||||
|
"image": "mcr.microsoft.com/devcontainers/go:1.25-trixie",
|
||||||
|
"features": {
|
||||||
|
"ghcr.io/devcontainers/features/node:1": {
|
||||||
|
// Should match what is defined in ui/package.json
|
||||||
|
"version": "22.20.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"runArgs": [
|
||||||
|
"--userns=keep-id",
|
||||||
|
"--security-opt=label=disable",
|
||||||
|
"--security-opt=label=nested"
|
||||||
|
],
|
||||||
|
"containerUser": "vscode",
|
||||||
|
"containerEnv": {
|
||||||
|
"HOME": "/home/vscode"
|
||||||
|
},
|
||||||
|
"mounts": [
|
||||||
|
"source=${localEnv:HOME}/.ssh,target=/home/vscode/.ssh,type=bind,consistency=cached"
|
||||||
|
],
|
||||||
|
"onCreateCommand": ".devcontainer/install-deps.sh",
|
||||||
|
"customizations": {
|
||||||
|
"vscode": {
|
||||||
|
"extensions": [
|
||||||
|
// coding styles
|
||||||
|
"chrislajoie.vscode-modelines",
|
||||||
|
"editorconfig.editorconfig",
|
||||||
|
// GitHub
|
||||||
|
"GitHub.vscode-pull-request-github",
|
||||||
|
"github.vscode-github-actions",
|
||||||
|
// Golang
|
||||||
|
"golang.go",
|
||||||
|
// C / C++
|
||||||
|
"ms-vscode.cpptools",
|
||||||
|
"ms-vscode.cpptools-extension-pack",
|
||||||
|
// CMake / Makefile
|
||||||
|
"ms-vscode.makefile-tools",
|
||||||
|
"ms-vscode.cmake-tools",
|
||||||
|
// Frontend
|
||||||
|
"esbenp.prettier-vscode",
|
||||||
|
"dbaeumer.vscode-eslint",
|
||||||
|
"bradlc.vscode-tailwindcss",
|
||||||
|
"codeandstuff.package-json-upgrade",
|
||||||
|
// Localization
|
||||||
|
"inlang.vs-code-extension"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,9 @@
|
||||||
|
Fixes #<issue-number>
|
||||||
|
|
||||||
|
### Summary
|
||||||
|
- What changed and why in 1–3 sentences.
|
||||||
|
|
||||||
|
### Checklist
|
||||||
|
- [ ] Linked to issue(s) above by issue number (e.g. `Closes #<issue-number>`)
|
||||||
|
- [ ] One problem per PR (no unrelated changes)
|
||||||
|
- [ ] Lints pass; CI green
|
||||||
|
|
@ -0,0 +1,17 @@
|
||||||
|
Closes #<issue-number>
|
||||||
|
|
||||||
|
### Summary
|
||||||
|
|
||||||
|
- What and why in 1–3 sentences.
|
||||||
|
|
||||||
|
### UI Changes
|
||||||
|
|
||||||
|
- Add before/after images or a short clip.
|
||||||
|
|
||||||
|
### Checklist
|
||||||
|
|
||||||
|
- [ ] Linked to issue(s) above by issue number (e.g. `Closes #<issue-number>`)
|
||||||
|
- [ ] One problem per PR (no unrelated changes)
|
||||||
|
- [ ] Lints pass; CI green
|
||||||
|
- [ ] Tricky parts are commented in code
|
||||||
|
- [ ] Backward compatible with existing device firmware (See `DEVELOPMENT.md` for details)
|
||||||
|
|
@ -16,28 +16,48 @@ jobs:
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v5
|
||||||
|
- name: Set up docker image context
|
||||||
|
run: |
|
||||||
|
./scripts/ci_helper.sh prepare
|
||||||
|
- name: Set up Docker Buildx
|
||||||
|
uses: docker/setup-buildx-action@v3
|
||||||
|
- name: Build docker image
|
||||||
|
uses: docker/build-push-action@v6
|
||||||
|
with:
|
||||||
|
context: ${{ env.DOCKER_BUILD_CONTEXT_DIR }}
|
||||||
|
file: ${{ env.DOCKER_BUILD_CONTEXT_DIR }}/Dockerfile.build
|
||||||
|
tags: ${{ env.DOCKER_BUILD_TAG }}
|
||||||
|
push: false
|
||||||
|
load: true
|
||||||
|
- name: Set up Cmake cache
|
||||||
|
uses: actions/cache@v4
|
||||||
|
with:
|
||||||
|
path: internal/native/cgo/build
|
||||||
|
key: jetkvm-cgo-${{ hashFiles('internal/native/cgo/**/*.c', 'internal/native/cgo/**/*.h', 'internal/native/cgo/**/*.patch', 'internal/native/cgo/**/*.txt', 'internal/native/cgo/**/*.sh', '!internal/native/cgo/build/**') }}
|
||||||
|
restore-keys: |
|
||||||
|
jetkvm-cgo-${{ hashFiles('internal/native/cgo/**/*.c', 'internal/native/cgo/**/*.h', 'internal/native/cgo/**/*.patch', 'internal/native/cgo/**/*.txt', 'internal/native/cgo/**/*.sh', '!internal/native/cgo/build/**') }}
|
||||||
- name: Set up Node.js
|
- name: Set up Node.js
|
||||||
uses: actions/setup-node@v4
|
uses: actions/setup-node@v5
|
||||||
with:
|
with:
|
||||||
node-version: "22"
|
node-version: "22"
|
||||||
cache: "npm"
|
cache: "npm"
|
||||||
cache-dependency-path: "**/package-lock.json"
|
cache-dependency-path: "**/package-lock.json"
|
||||||
- name: Set up Golang
|
- name: Set up Golang
|
||||||
uses: actions/setup-go@v5.5.0
|
uses: actions/setup-go@v6
|
||||||
with:
|
with:
|
||||||
go-version: "1.24.4"
|
go-version: "^1.25.1"
|
||||||
- name: Build frontend
|
- name: Build frontend
|
||||||
run: |
|
run: |
|
||||||
make frontend
|
make frontend
|
||||||
- name: Build application
|
- name: Build application inside Docker container
|
||||||
run: |
|
run: |
|
||||||
make build_dev
|
./scripts/ci_helper.sh make build_dev
|
||||||
- name: Run tests
|
- name: Run tests
|
||||||
run: |
|
run: |
|
||||||
go test ./... -json > testreport.json
|
go test ./... -json > testreport.json
|
||||||
- name: Make test cases
|
- name: Make test cases
|
||||||
run: |
|
run: |
|
||||||
make build_dev_test
|
./scripts/ci_helper.sh make build_dev_test
|
||||||
- name: Golang Test Report
|
- name: Golang Test Report
|
||||||
uses: becheran/go-testreport@v0.3.2
|
uses: becheran/go-testreport@v0.3.2
|
||||||
with:
|
with:
|
||||||
|
|
|
||||||
|
|
@ -22,16 +22,16 @@ jobs:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@ff7abcd0c3c05ccf6adc123a8cd1fd4fb30fb493 # v4.2.2
|
uses: actions/checkout@v5
|
||||||
- name: Install Go
|
- name: Install Go
|
||||||
uses: actions/setup-go@fa96338abe5531f6e34c5cc0bbe28c1a533d5505 # v4.2.1
|
uses: actions/setup-go@v6
|
||||||
with:
|
with:
|
||||||
go-version: 1.24.4
|
go-version: oldstable
|
||||||
- name: Create empty resource directory
|
- name: Create empty resource directory
|
||||||
run: |
|
run: |
|
||||||
mkdir -p static && touch static/.gitkeep
|
mkdir -p static && touch static/.gitkeep
|
||||||
- name: Lint
|
- name: Lint
|
||||||
uses: golangci/golangci-lint-action@1481404843c368bc19ca9406f87d6e0fc97bdcfd # v7.0.0
|
uses: golangci/golangci-lint-action@v8
|
||||||
with:
|
with:
|
||||||
args: --verbose
|
args: --verbose
|
||||||
version: v2.0.2
|
version: v2.1
|
||||||
|
|
|
||||||
|
|
@ -104,7 +104,7 @@ jobs:
|
||||||
EOF
|
EOF
|
||||||
ssh jkci "cat /tmp/device-tests.json" > device-tests.json
|
ssh jkci "cat /tmp/device-tests.json" > device-tests.json
|
||||||
- name: Set up Golang
|
- name: Set up Golang
|
||||||
uses: actions/setup-go@v5.5.0
|
uses: actions/setup-go@v6
|
||||||
with:
|
with:
|
||||||
go-version: "1.24.4"
|
go-version: "1.24.4"
|
||||||
- name: Golang Test Report
|
- name: Golang Test Report
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,100 @@
|
||||||
|
name: Close stale issues and PRs (dry-run)
|
||||||
|
on:
|
||||||
|
schedule:
|
||||||
|
- cron: '30 1 * * *' # Runs daily at 01:30 UTC
|
||||||
|
workflow_dispatch: # Allow manual runs from the Actions tab
|
||||||
|
|
||||||
|
permissions:
|
||||||
|
issues: write
|
||||||
|
pull-requests: write
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
stale:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/stale@v10
|
||||||
|
with:
|
||||||
|
# ──────────────────────────────────────────────────────────────────────
|
||||||
|
# OVERVIEW — HOW THIS WORKS
|
||||||
|
# 1) The job scans issues/PRs once per run.
|
||||||
|
# 2) If an item has had no activity for `days-before-stale`, it’s labeled `Stale`
|
||||||
|
# and receives the relevant “stale” comment.
|
||||||
|
# 3) If there’s still no activity for `days-before-close` AFTER being marked
|
||||||
|
# stale, the item is closed and receives a closing comment.
|
||||||
|
# 4) Any new activity (comment, label change, commit, edit) clears `Stale`
|
||||||
|
# and resets the timers if `remove-stale-when-updated` is true.
|
||||||
|
# ──────────────────────────────────────────────────────────────────────
|
||||||
|
|
||||||
|
# ── TIMING / BEHAVIOR ────────────────────────────────────────────────
|
||||||
|
# Number of idle days before applying the `Stale` label + stale comment.
|
||||||
|
days-before-stale: 60
|
||||||
|
|
||||||
|
# Number of days AFTER staling with no activity before auto-closing.
|
||||||
|
# (Measured from when `Stale` was added.) Set to -1 to never auto-close.
|
||||||
|
days-before-close: 14
|
||||||
|
|
||||||
|
# If someone comments/updates, automatically remove `Stale` and reset timers.
|
||||||
|
remove-stale-when-updated: true
|
||||||
|
|
||||||
|
# Don’t nag draft PRs; they are explicitly a work-in-progress stage.
|
||||||
|
exempt-draft-pr: true
|
||||||
|
|
||||||
|
# Fetch ordering when scanning items. `updated` helps focus on the most recently touched.
|
||||||
|
sort-by: updated
|
||||||
|
|
||||||
|
# ── MESSAGES (markdown) ──────────────────────────────────────────────
|
||||||
|
stale-issue-message: |
|
||||||
|
**This issue has been inactive for 60 days and is now marked as stale.**
|
||||||
|
|
||||||
|
To keep the tracker focused, older inactive issues are flagged.
|
||||||
|
|
||||||
|
If this still applies:
|
||||||
|
- Add a comment with **reproduction steps**, **environment details**, and **JetKVM version**.
|
||||||
|
- Verify whether it still occurs with the current build: see [OTA / Updates](https://jetkvm.com/docs/advanced-usage/ota-updates).
|
||||||
|
- Any new comment or update will remove the *Stale* label automatically.
|
||||||
|
|
||||||
|
Issues not updated within 14 days after being marked stale may be closed.
|
||||||
|
|
||||||
|
stale-pr-message: |
|
||||||
|
**This pull request has been inactive for 60 days and is now marked as stale.**
|
||||||
|
|
||||||
|
To continue:
|
||||||
|
- Push a commit or add a comment about next steps — this removes the *Stale* label automatically.
|
||||||
|
- Ensure the changes work with the current build: see [OTA / Updates](https://jetkvm.com/docs/advanced-usage/ota-updates).
|
||||||
|
- If this is blocked or awaiting review, mention that for visibility.
|
||||||
|
|
||||||
|
PRs not updated within 14 days after being marked stale may be closed.
|
||||||
|
|
||||||
|
close-issue-message: |
|
||||||
|
**Closing this issue due to extended inactivity.**
|
||||||
|
|
||||||
|
It has been 14 days since it was marked as stale without further updates.
|
||||||
|
|
||||||
|
If the problem persists:
|
||||||
|
- Reopen this issue, or open a new one with **reproduction steps**, **logs**, **environment**, and **JetKVM version**.
|
||||||
|
- Confirm behavior with the current build: [OTA / Updates](https://jetkvm.com/docs/advanced-usage/ota-updates).
|
||||||
|
|
||||||
|
close-pr-message: |
|
||||||
|
**Closing this pull request due to extended inactivity.**
|
||||||
|
|
||||||
|
It has been 14 days since it was marked as stale with no updates or commits.
|
||||||
|
|
||||||
|
If the changes are still relevant:
|
||||||
|
- Reopen this PR or submit a refreshed PR rebased on the latest code.
|
||||||
|
- Confirm that it builds and works with the current build: [OTA / Updates](https://jetkvm.com/docs/advanced-usage/ota-updates).
|
||||||
|
|
||||||
|
# ── SAFETY / ROLLOUT ────────────────────────────────────────────────
|
||||||
|
# DRY-RUN: log what would happen, but do NOT write labels/comments/close.
|
||||||
|
debug-only: true
|
||||||
|
|
||||||
|
# Print a summary of how many items were staled/closed (or would be, in dry-run).
|
||||||
|
enable-statistics: true
|
||||||
|
|
||||||
|
# Limit GitHub API operations per run (gentle start for large repos).
|
||||||
|
# Increase later (e.g., 200–1000) once you’re confident with behavior.
|
||||||
|
operations-per-run: 50
|
||||||
|
|
||||||
|
# ── LABELS ───────────────────────────────────────────────────────────
|
||||||
|
# Names of the labels applied when staling items. Defaults shown for clarity.
|
||||||
|
stale-issue-label: 'Stale'
|
||||||
|
stale-pr-label: 'Stale'
|
||||||
|
|
@ -19,7 +19,7 @@ jobs:
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v5
|
uses: actions/checkout@v5
|
||||||
- name: Set up Node.js
|
- name: Set up Node.js
|
||||||
uses: actions/setup-node@v4
|
uses: actions/setup-node@v5
|
||||||
with:
|
with:
|
||||||
node-version: "22"
|
node-version: "22"
|
||||||
cache: "npm"
|
cache: "npm"
|
||||||
|
|
|
||||||
|
|
@ -3,4 +3,15 @@ static/*
|
||||||
.idea
|
.idea
|
||||||
.DS_Store
|
.DS_Store
|
||||||
|
|
||||||
device-tests.tar.gz
|
.cache
|
||||||
|
.vite
|
||||||
|
.pnpm-store
|
||||||
|
|
||||||
|
device-tests.tar.gz
|
||||||
|
node_modules
|
||||||
|
|
||||||
|
# generated during the build process
|
||||||
|
#internal/native/include
|
||||||
|
#internal/native/lib
|
||||||
|
|
||||||
|
ui/reports
|
||||||
|
|
@ -0,0 +1,25 @@
|
||||||
|
{
|
||||||
|
"recommendations": [
|
||||||
|
// coding styles
|
||||||
|
"chrislajoie.vscode-modelines",
|
||||||
|
"editorconfig.editorconfig",
|
||||||
|
// GitHub
|
||||||
|
"GitHub.vscode-pull-request-github",
|
||||||
|
"github.vscode-github-actions",
|
||||||
|
// Golang
|
||||||
|
"golang.go",
|
||||||
|
// C / C++
|
||||||
|
"ms-vscode.cpptools",
|
||||||
|
"ms-vscode.cpptools-extension-pack",
|
||||||
|
// CMake / Makefile
|
||||||
|
"ms-vscode.makefile-tools",
|
||||||
|
"ms-vscode.cmake-tools",
|
||||||
|
// Frontend
|
||||||
|
"esbenp.prettier-vscode",
|
||||||
|
"dbaeumer.vscode-eslint",
|
||||||
|
"bradlc.vscode-tailwindcss",
|
||||||
|
"codeandstuff.package-json-upgrade",
|
||||||
|
// Localization
|
||||||
|
"inlang.vs-code-extension"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
@ -1,3 +1,14 @@
|
||||||
{
|
{
|
||||||
"tailwindCSS.classFunctions": ["cva", "cx"]
|
"tailwindCSS.classFunctions": [
|
||||||
|
"cva",
|
||||||
|
"cx"
|
||||||
|
],
|
||||||
|
"gopls": {
|
||||||
|
"build.buildFlags": [
|
||||||
|
"-tags",
|
||||||
|
"synctrace"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"git.ignoreLimitWarning": true,
|
||||||
|
"cmake.sourceDirectory": "/workspaces/kvm-static-ip/internal/native/cgo"
|
||||||
}
|
}
|
||||||
207
DEVELOPMENT.md
207
DEVELOPMENT.md
|
|
@ -1,23 +1,20 @@
|
||||||
<div align="center">
|
# JetKVM Development Guide
|
||||||
<img alt="JetKVM logo" src="https://jetkvm.com/logo-blue.png" height="28">
|
|
||||||
|
|
||||||
### Development Guide
|
<div align="center" width="100%">
|
||||||
|
<img src="https://jetkvm.com/logo-blue.png" align="center" height="28px">
|
||||||
|
|
||||||
[Discord](https://jetkvm.com/discord) | [Website](https://jetkvm.com) | [Issues](https://github.com/jetkvm/cloud-api/issues) | [Docs](https://jetkvm.com/docs)
|
[Discord](https://jetkvm.com/discord) | [Website](https://jetkvm.com) | [Issues](https://github.com/jetkvm/cloud-api/issues) | [Docs](https://jetkvm.com/docs)
|
||||||
|
|
||||||
[](https://twitter.com/jetkvm)
|
[](https://twitter.com/jetkvm)
|
||||||
|
|
||||||
[](https://goreportcard.com/report/github.com/jetkvm/kvm)
|
[](https://goreportcard.com/report/github.com/jetkvm/kvm)
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
# JetKVM Development Guide
|
|
||||||
|
|
||||||
Welcome to JetKVM development! This guide will help you get started quickly, whether you're fixing bugs, adding features, or just exploring the codebase.
|
Welcome to JetKVM development! This guide will help you get started quickly, whether you're fixing bugs, adding features, or just exploring the codebase.
|
||||||
|
|
||||||
## Get Started
|
## Get Started
|
||||||
|
|
||||||
### Prerequisites
|
### Prerequisites
|
||||||
|
|
||||||
- **A JetKVM device** (for full development)
|
- **A JetKVM device** (for full development)
|
||||||
- **[Go 1.24.4+](https://go.dev/doc/install)** and **[Node.js 22.15.0](https://nodejs.org/en/download/)**
|
- **[Go 1.24.4+](https://go.dev/doc/install)** and **[Node.js 22.15.0](https://nodejs.org/en/download/)**
|
||||||
- **[Git](https://git-scm.com/downloads)** for version control
|
- **[Git](https://git-scm.com/downloads)** for version control
|
||||||
|
|
@ -25,9 +22,10 @@ Welcome to JetKVM development! This guide will help you get started quickly, whe
|
||||||
|
|
||||||
### Development Environment
|
### Development Environment
|
||||||
|
|
||||||
**Recommended:** Development is best done on **Linux** or **macOS**.
|
**Recommended:** Development is best done on **Linux** or **macOS**.
|
||||||
|
|
||||||
If you're using Windows, we strongly recommend using **WSL (Windows Subsystem for Linux)** for the best development experience:
|
If you're using Windows, we strongly recommend using **WSL (Windows Subsystem for Linux)** for the best development experience:
|
||||||
|
|
||||||
- [Install WSL on Windows](https://docs.microsoft.com/en-us/windows/wsl/install)
|
- [Install WSL on Windows](https://docs.microsoft.com/en-us/windows/wsl/install)
|
||||||
- [WSL Setup Guide](https://docs.microsoft.com/en-us/windows/wsl/setup/environment)
|
- [WSL Setup Guide](https://docs.microsoft.com/en-us/windows/wsl/setup/environment)
|
||||||
|
|
||||||
|
|
@ -36,12 +34,14 @@ This ensures compatibility with shell scripts and build tools used in the projec
|
||||||
### Project Setup
|
### Project Setup
|
||||||
|
|
||||||
1. **Clone the repository:**
|
1. **Clone the repository:**
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
git clone https://github.com/jetkvm/kvm.git
|
git clone https://github.com/jetkvm/kvm.git
|
||||||
cd kvm
|
cd kvm
|
||||||
```
|
```
|
||||||
|
|
||||||
2. **Check your tools:**
|
2. **Check your tools:**
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
go version && node --version
|
go version && node --version
|
||||||
```
|
```
|
||||||
|
|
@ -49,6 +49,7 @@ This ensures compatibility with shell scripts and build tools used in the projec
|
||||||
3. **Find your JetKVM IP address** (check your router or device screen)
|
3. **Find your JetKVM IP address** (check your router or device screen)
|
||||||
|
|
||||||
4. **Deploy and test:**
|
4. **Deploy and test:**
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
./dev_deploy.sh -r 192.168.1.100 # Replace with your device IP
|
./dev_deploy.sh -r 192.168.1.100 # Replace with your device IP
|
||||||
```
|
```
|
||||||
|
|
@ -95,15 +96,44 @@ tail -f /var/log/jetkvm.log
|
||||||
|
|
||||||
## Project Layout
|
## Project Layout
|
||||||
|
|
||||||
```
|
```plaintext
|
||||||
/kvm/
|
/kvm/
|
||||||
├── main.go # App entry point
|
├── main.go # App entry point
|
||||||
├── config.go # Settings & configuration
|
├── config.go # Settings & configuration
|
||||||
├── web.go # API endpoints
|
├── display.go # Device UI control
|
||||||
├── ui/ # React frontend
|
├── web.go # API endpoints
|
||||||
│ ├── src/routes/ # Pages (login, settings, etc.)
|
├── cmd/ # Command line main
|
||||||
│ └── src/components/ # UI components
|
├── internal/ # Internal Go packages
|
||||||
└── internal/ # Internal Go packages
|
│ ├── confparser/ # Configuration file implementation
|
||||||
|
│ ├── hidrpc/ # HIDRPC implementation for HID devices (keyboard, mouse, etc.)
|
||||||
|
│ ├── logging/ # Logging implementation
|
||||||
|
│ ├── mdns/ # mDNS implementation
|
||||||
|
│ ├── native/ # CGO / Native code glue layer (on-device hardware)
|
||||||
|
│ │ ├── cgo/ # C files for the native library (HDMI, Touchscreen, etc.)
|
||||||
|
│ │ └── eez/ # EEZ Studio Project files (for Touchscreen)
|
||||||
|
│ ├── network/ # Network implementation
|
||||||
|
│ ├── timesync/ # Time sync/NTP implementation
|
||||||
|
│ ├── tzdata/ # Timezone data and generation
|
||||||
|
│ ├── udhcpc/ # DHCP implementation
|
||||||
|
│ ├── usbgadget/ # USB gadget
|
||||||
|
│ ├── utils/ # SSH handling
|
||||||
|
│ └── websecure/ # TLS certificate management
|
||||||
|
├── resource/ # netboot iso and other resources
|
||||||
|
├── scripts/ # Bash shell scripts for building and deploying
|
||||||
|
└── static/ # (react client build output)
|
||||||
|
└── ui/ # React frontend
|
||||||
|
├── localization/ # Client UI localization (i18n)
|
||||||
|
│ ├── jetKVM.UI.inlang/ # Settings for inlang
|
||||||
|
│ └── messages/ # Messages localized
|
||||||
|
├── public/ # UI website static images and fonts
|
||||||
|
└── src/ # Client React UI
|
||||||
|
├── assets/ # UI in-page images
|
||||||
|
├── components/ # UI components
|
||||||
|
├── hooks/ # Hooks (stores, RPC handling, virtual devices)
|
||||||
|
├── keyboardLayouts/ # Keyboard layout definitions
|
||||||
|
├── paraglide/ # (localization compiled messages output)
|
||||||
|
├── providers/ # Feature flags
|
||||||
|
└── routes/ # Pages (login, settings, etc.)
|
||||||
```
|
```
|
||||||
|
|
||||||
**Key files for beginners:**
|
**Key files for beginners:**
|
||||||
|
|
@ -119,7 +149,7 @@ tail -f /var/log/jetkvm.log
|
||||||
|
|
||||||
### Full Development (Recommended)
|
### Full Development (Recommended)
|
||||||
|
|
||||||
*Best for: Complete feature development*
|
#### _Best for: Complete feature development_
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Deploy everything to your JetKVM device
|
# Deploy everything to your JetKVM device
|
||||||
|
|
@ -128,7 +158,7 @@ tail -f /var/log/jetkvm.log
|
||||||
|
|
||||||
### Frontend Only
|
### Frontend Only
|
||||||
|
|
||||||
*Best for: UI changes without device*
|
#### _Best for: UI changes without device_
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
cd ui
|
cd ui
|
||||||
|
|
@ -136,9 +166,13 @@ npm install
|
||||||
./dev_device.sh <YOUR_DEVICE_IP>
|
./dev_device.sh <YOUR_DEVICE_IP>
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### Touchscreen Changes
|
||||||
|
|
||||||
|
Please click the `Build` button in EEZ Studio then run `./dev_deploy.sh -r <YOUR_DEVICE_IP> --skip-ui-build` to deploy the changes to your device. Initial build might take more than 10 minutes as it will also need to fetch and build LVGL and other dependencies.
|
||||||
|
|
||||||
### Quick Backend Changes
|
### Quick Backend Changes
|
||||||
|
|
||||||
*Best for: API or backend logic changes*
|
#### _Best for: API or backend logic changes_
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Skip frontend build for faster deployment
|
# Skip frontend build for faster deployment
|
||||||
|
|
@ -240,6 +274,54 @@ rm -rf node_modules
|
||||||
npm install
|
npm install
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### "Device UI Fails to Build"
|
||||||
|
|
||||||
|
If while trying to build you run into an error message similar to :
|
||||||
|
|
||||||
|
```plaintext
|
||||||
|
In file included from /workspaces/kvm/internal/native/cgo/ctrl.c:15:
|
||||||
|
/workspaces/kvm/internal/native/cgo/ui_index.h:4:10: fatal error: ui/ui.h: No such file or directory
|
||||||
|
#include "ui/ui.h"
|
||||||
|
^~~~~~~~~
|
||||||
|
compilation terminated.
|
||||||
|
```
|
||||||
|
|
||||||
|
This means that your system didn't create the directory-link to from _./internal/native/cgo/ui_ to ./internal/native/eez/src/ui when the repository was checked out. You can verify this is the case if _./internal/native/cgo/ui_ appears as a plain text file with only the textual contents:
|
||||||
|
|
||||||
|
```plaintext
|
||||||
|
../eez/src/ui
|
||||||
|
```
|
||||||
|
|
||||||
|
If this happens to you need to [enable git creation of symbolic links](https://stackoverflow.com/a/59761201/2076) either globally or for the KVM repository:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Globally enable git to create symlinks
|
||||||
|
git config --global core.symlinks true
|
||||||
|
git restore internal/native/cgo/ui
|
||||||
|
```
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Enable git to create symlinks only in this project
|
||||||
|
git config core.symlinks true
|
||||||
|
git restore internal/native/cgo/ui
|
||||||
|
```
|
||||||
|
|
||||||
|
Or if you want to manually create the symlink use:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# linux
|
||||||
|
cd internal/native/cgo
|
||||||
|
rm ui
|
||||||
|
ln -s ../eez/src/ui ui
|
||||||
|
```
|
||||||
|
|
||||||
|
```batch
|
||||||
|
rem Windows
|
||||||
|
cd internal/native/cgo
|
||||||
|
del ui
|
||||||
|
mklink /d ui ..\eez\src\ui
|
||||||
|
```
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Next Steps
|
## Next Steps
|
||||||
|
|
@ -256,6 +338,7 @@ npm install
|
||||||
- **Go:** Follow standard Go conventions
|
- **Go:** Follow standard Go conventions
|
||||||
- **TypeScript:** Use TypeScript for type safety
|
- **TypeScript:** Use TypeScript for type safety
|
||||||
- **React:** Keep components small and reusable
|
- **React:** Keep components small and reusable
|
||||||
|
- **Localization:** Ensure all user-facing strings in the frontend are [localized](#localization)
|
||||||
|
|
||||||
### Environment Variables
|
### Environment Variables
|
||||||
|
|
||||||
|
|
@ -288,11 +371,12 @@ export JETKVM_PROXY_URL="ws://<IP>"
|
||||||
4. Test thoroughly
|
4. Test thoroughly
|
||||||
5. Submit a pull request
|
5. Submit a pull request
|
||||||
|
|
||||||
### Before submitting:
|
### Before submitting
|
||||||
|
|
||||||
- [ ] Code works on device
|
- [ ] Code works on device
|
||||||
- [ ] Tests pass
|
- [ ] Tests pass
|
||||||
- [ ] Code follows style guidelines
|
- [ ] Code follows style guidelines
|
||||||
|
- [ ] Frontend user-facing strings [localized](#localization)
|
||||||
- [ ] Documentation updated (if needed)
|
- [ ] Documentation updated (if needed)
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
@ -348,6 +432,89 @@ The application uses a JSON configuration file stored at `/userdata/kvm_config.j
|
||||||
|
|
||||||
3. **Add migration logic if needed for existing installations**
|
3. **Add migration logic if needed for existing installations**
|
||||||
|
|
||||||
|
### LVGL Build
|
||||||
|
|
||||||
|
We modified the LVGL code a little bit to remove unused fonts and examples.
|
||||||
|
The patches are generated by
|
||||||
|
|
||||||
|
```bash
|
||||||
|
git diff --cached --diff-filter=d > ../internal/native/cgo/lvgl-minify.patch && \
|
||||||
|
git diff --name-only --diff-filter=D --cached > ../internal/native/cgo/lvgl-minify.del
|
||||||
|
```
|
||||||
|
|
||||||
|
### Localization
|
||||||
|
|
||||||
|
The browser/client frontend uses the [paraglide-js](https://inlang.com/m/gerre34r/library-inlang-paraglideJs) plug-in from the [inlang.com](https://inlang.com/) project to allow compile-time validated localization of all user-facing UI strings in the browser/client UI. This includes `title`, `text`, `name`, `description`, `placeholder`, `label`, `aria-label`, _message attributes_ (such as `confirmText`, `unit`, `badge`, `tag`, or `flag`), HTML _element text_ (such as `<h?>`, `<span>`, or `<p>` elements), _notifications messages_, and option _label_ strings, etc.
|
||||||
|
|
||||||
|
We **do not** translate the console log messages, CSS class names, theme names, nor the various _value_ strings (e.g. for value/label pair options), nor URL routes.
|
||||||
|
|
||||||
|
The localizations are stored in _.json_ files in the `ui/localizations/messages` directory, with one language-per-file using the [ISO 3166-1 alpha-2 country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) (e.g. en for English, de for German, etc.)
|
||||||
|
|
||||||
|
#### m-function-matcher
|
||||||
|
|
||||||
|
The translations are extracted into language files (e.g. _en.json_ for English) and then paraglide-js compiles them into helpers for use with the [m-function-matcher](https://inlang.com/m/632iow21/plugin-inlang-mFunctionMatcher). An example:
|
||||||
|
|
||||||
|
```tsx
|
||||||
|
<SettingsPageHeader
|
||||||
|
title={m.extensions_atx_power_control()}
|
||||||
|
description={m.extensions_atx_power_control_description()}
|
||||||
|
/>
|
||||||
|
```
|
||||||
|
|
||||||
|
#### shakespere plug-in
|
||||||
|
|
||||||
|
If you enable the [Sherlock](https://inlang.com/m/r7kp499g/app-inlang-ideExtension) plug-in, the localized text "tooltip" is shown in the VSCode editor after any localized text in the language you've selected for preview. In this image, it's the blue text at the end of the line :
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
#### Process
|
||||||
|
|
||||||
|
##### Localizing a UI
|
||||||
|
|
||||||
|
1. Locate a string that is visible to the end user on the client/browser
|
||||||
|
2. Assign that string a "key" that reflects the logical meaning of the string in snake-case (look at existing localizations for examples), for example if there's a string `This is a test` on the _thing edit page_ it would be "thing_edit_this_is_a_test"
|
||||||
|
|
||||||
|
```json
|
||||||
|
"thing_edit_this_is_a_test": "This is a test",
|
||||||
|
```
|
||||||
|
|
||||||
|
3. Add the key and string to the _en.json_ like this:
|
||||||
|
|
||||||
|
- **Note** if the string has replacement parameters (line a user-entered name), the syntax for the localized string has `{ }` around the replacement token (e.g. _This is your name: {name}_). An complex example:
|
||||||
|
|
||||||
|
```react
|
||||||
|
{m.mount_button_showing_results({
|
||||||
|
from: indexOfFirstFile + 1,
|
||||||
|
to: Math.min(indexOfLastFile, onStorageFiles.length),
|
||||||
|
total: onStorageFiles.length
|
||||||
|
})}
|
||||||
|
```
|
||||||
|
|
||||||
|
4. Save the _en.json_ file and execute `npm run i18n` to resort the language files, validate the translations, and create the m-functions
|
||||||
|
5. Edit the _.tsx_ file and replace the string with the calls to the new m-function which will be the key-string you chose in snake-case. For example `This is a test` in _thing edit page_ turns into `m.thing_edit_this_is_a_test()`
|
||||||
|
- **Note** if the string has a replacement token, supply that to the m-function, for example for the literal `I will call you {name}`, use `m.profile_i_will_call_you({ name: edit.value })`
|
||||||
|
6. When all your strings are extracted, run `npm run i18n:machine-translate` to get a first-stab at the translations for the other supported languages. Make sure you use an LLM (you can use [aifiesta](https://chat.aifiesta.ai/chat/) to use multiple LLMs) or a [translator](https://translate.google.com) of some form to back-translate each **new** machine-generation in each _language_ to ensure those terms translate reasonably.
|
||||||
|
|
||||||
|
### Adding a new language
|
||||||
|
|
||||||
|
1. Get the [ISO 3166-1 alpha-2 country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) (for example AT for Austria)
|
||||||
|
2. Create a new file in the _ui/localization/messages_ directory (example _at.json_)
|
||||||
|
3. Add the new country code to the _ui/localizations/settings.json_ file in both the `"locales"` and the `"languageTags"` section (inlang and Sherlock aren't exactly current to each other, so we need it in both places).
|
||||||
|
4. That file also declares the baseLocale/sourceLanguageTag which is `"en"` because this project started out in English. Do NOT change that.
|
||||||
|
5. Run `npm run i18n:machine-translate` to do an initial pass at localizing all existing messages to the new language.
|
||||||
|
- **Note** you will get an error _DB has been closed_, ignore that message, we're not using a database.
|
||||||
|
- **Note** you likely will get errors while running this command due to rate limits and such (it uses anonymous Google Translate). Just keep running the command over and over... it'll translate a bunch each time until it says _Machine translate complete_
|
||||||
|
|
||||||
|
### Other notes
|
||||||
|
|
||||||
|
- Run `npm run i18n:validate` to ensure that language files and settings are well-formed.
|
||||||
|
- Run `npm run i18n:find-excess` to look for extra keys in other language files that have been deleted from the master-list in _en.json_.
|
||||||
|
- Run `npm run i18n:find-dupes` to look for multiple keys in _en.json_ that have the same translated value (this is normal)
|
||||||
|
- Run `npm run i18n:find-unused` to look for keys in _en.json_ that are not referenced in the UI anywhere.
|
||||||
|
- **Note** there are a few that are not currently used, only concern yourself with ones you obsoleted.
|
||||||
|
- Run `npm run i18n:audit` to do all the above checks.
|
||||||
|
- Using [inlang CLI](https://inlang.com/m/2qj2w8pu/app-inlang-cli) to support the npm commands.
|
||||||
|
- You can install the [Sherlock VS Code extension](https://marketplace.visualstudio.com/items?itemName=inlang.vs-code-extension) in your devcontainer.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,24 @@
|
||||||
|
# syntax=docker/dockerfile:1
|
||||||
|
FROM --platform=${BUILDPLATFORM} golang:1.25.1-trixie AS builder
|
||||||
|
|
||||||
|
ENV GOTOOLCHAIN=local
|
||||||
|
ENV GOPATH=/go
|
||||||
|
ENV PATH=$GOPATH/bin:/usr/local/go/bin:$PATH
|
||||||
|
|
||||||
|
COPY install-deps.sh /install-deps.sh
|
||||||
|
RUN /install-deps.sh
|
||||||
|
|
||||||
|
# Create build directory
|
||||||
|
RUN mkdir -p /build/
|
||||||
|
|
||||||
|
# Copy go.mod and go.sum
|
||||||
|
COPY go.mod go.sum /build/
|
||||||
|
|
||||||
|
WORKDIR /build
|
||||||
|
|
||||||
|
RUN go mod download && go mod verify
|
||||||
|
|
||||||
|
COPY entrypoint.sh /entrypoint.sh
|
||||||
|
RUN chmod +x /entrypoint.sh
|
||||||
|
|
||||||
|
ENTRYPOINT [ "/entrypoint.sh" ]
|
||||||
80
Makefile
80
Makefile
|
|
@ -8,7 +8,17 @@ VERSION := 0.4.8
|
||||||
PROMETHEUS_TAG := github.com/prometheus/common/version
|
PROMETHEUS_TAG := github.com/prometheus/common/version
|
||||||
KVM_PKG_NAME := github.com/jetkvm/kvm
|
KVM_PKG_NAME := github.com/jetkvm/kvm
|
||||||
|
|
||||||
GO_BUILD_ARGS := -tags netgo -tags timetzdata
|
BUILDKIT_FLAVOR := arm-rockchip830-linux-uclibcgnueabihf
|
||||||
|
BUILDKIT_PATH ?= /opt/jetkvm-native-buildkit
|
||||||
|
SKIP_NATIVE_IF_EXISTS ?= 0
|
||||||
|
SKIP_UI_BUILD ?= 0
|
||||||
|
ENABLE_SYNC_TRACE ?= 0
|
||||||
|
|
||||||
|
GO_BUILD_ARGS := -tags netgo,timetzdata,nomsgpack
|
||||||
|
ifeq ($(ENABLE_SYNC_TRACE), 1)
|
||||||
|
GO_BUILD_ARGS := $(GO_BUILD_ARGS),synctrace
|
||||||
|
endif
|
||||||
|
|
||||||
GO_RELEASE_BUILD_ARGS := -trimpath $(GO_BUILD_ARGS)
|
GO_RELEASE_BUILD_ARGS := -trimpath $(GO_BUILD_ARGS)
|
||||||
GO_LDFLAGS := \
|
GO_LDFLAGS := \
|
||||||
-s -w \
|
-s -w \
|
||||||
|
|
@ -17,20 +27,40 @@ GO_LDFLAGS := \
|
||||||
-X $(PROMETHEUS_TAG).Revision=$(REVISION) \
|
-X $(PROMETHEUS_TAG).Revision=$(REVISION) \
|
||||||
-X $(KVM_PKG_NAME).builtTimestamp=$(BUILDTS)
|
-X $(KVM_PKG_NAME).builtTimestamp=$(BUILDTS)
|
||||||
|
|
||||||
GO_CMD := GOOS=linux GOARCH=arm GOARM=7 go
|
GO_ARGS := GOOS=linux GOARCH=arm GOARM=7 ARCHFLAGS="-arch arm"
|
||||||
|
# if BUILDKIT_PATH exists, use buildkit to build
|
||||||
|
ifneq ($(wildcard $(BUILDKIT_PATH)),)
|
||||||
|
GO_ARGS := $(GO_ARGS) \
|
||||||
|
CGO_CFLAGS="-I$(BUILDKIT_PATH)/$(BUILDKIT_FLAVOR)/include -I$(BUILDKIT_PATH)/$(BUILDKIT_FLAVOR)/sysroot/usr/include" \
|
||||||
|
CGO_LDFLAGS="-L$(BUILDKIT_PATH)/$(BUILDKIT_FLAVOR)/lib -L$(BUILDKIT_PATH)/$(BUILDKIT_FLAVOR)/sysroot/usr/lib -lrockit -lrockchip_mpp -lrga -lpthread -lm" \
|
||||||
|
CC="$(BUILDKIT_PATH)/bin/$(BUILDKIT_FLAVOR)-gcc" \
|
||||||
|
LD="$(BUILDKIT_PATH)/bin/$(BUILDKIT_FLAVOR)-ld" \
|
||||||
|
CGO_ENABLED=1
|
||||||
|
# GO_RELEASE_BUILD_ARGS := $(GO_RELEASE_BUILD_ARGS) -x -work
|
||||||
|
endif
|
||||||
|
|
||||||
|
GO_CMD := $(GO_ARGS) go
|
||||||
|
|
||||||
BIN_DIR := $(shell pwd)/bin
|
BIN_DIR := $(shell pwd)/bin
|
||||||
|
|
||||||
TEST_DIRS := $(shell find . -name "*_test.go" -type f -exec dirname {} \; | sort -u)
|
TEST_DIRS := $(shell find . -name "*_test.go" -type f -exec dirname {} \; | sort -u)
|
||||||
|
|
||||||
hash_resource:
|
build_native:
|
||||||
@shasum -a 256 resource/jetkvm_native | cut -d ' ' -f 1 > resource/jetkvm_native.sha256
|
@if [ "$(SKIP_NATIVE_IF_EXISTS)" = "1" ] && [ -f "internal/native/cgo/lib/libjknative.a" ]; then \
|
||||||
|
echo "libjknative.a already exists, skipping native build..."; \
|
||||||
|
else \
|
||||||
|
echo "Building native..."; \
|
||||||
|
CC="$(BUILDKIT_PATH)/bin/$(BUILDKIT_FLAVOR)-gcc" \
|
||||||
|
LD="$(BUILDKIT_PATH)/bin/$(BUILDKIT_FLAVOR)-ld" \
|
||||||
|
./scripts/build_cgo.sh; \
|
||||||
|
fi
|
||||||
|
|
||||||
build_dev: hash_resource
|
build_dev: build_native
|
||||||
@echo "Building..."
|
@echo "Building..."
|
||||||
$(GO_CMD) build \
|
$(GO_CMD) build \
|
||||||
-ldflags="$(GO_LDFLAGS) -X $(KVM_PKG_NAME).builtAppVersion=$(VERSION_DEV)" \
|
-ldflags="$(GO_LDFLAGS) -X $(KVM_PKG_NAME).builtAppVersion=$(VERSION_DEV)" \
|
||||||
$(GO_RELEASE_BUILD_ARGS) \
|
$(GO_RELEASE_BUILD_ARGS) \
|
||||||
-o $(BIN_DIR)/jetkvm_app cmd/main.go
|
-o $(BIN_DIR)/jetkvm_app -v cmd/main.go
|
||||||
|
|
||||||
build_test2json:
|
build_test2json:
|
||||||
$(GO_CMD) build -o $(BIN_DIR)/test2json cmd/test2json
|
$(GO_CMD) build -o $(BIN_DIR)/test2json cmd/test2json
|
||||||
|
|
@ -62,22 +92,24 @@ build_dev_test: build_test2json build_gotestsum
|
||||||
tar czfv device-tests.tar.gz -C $(BIN_DIR)/tests .
|
tar czfv device-tests.tar.gz -C $(BIN_DIR)/tests .
|
||||||
|
|
||||||
frontend:
|
frontend:
|
||||||
cd ui && npm ci && npm run build:device && \
|
@if [ "$(SKIP_UI_BUILD)" = "1" ] && [ -f "static/index.html" ]; then \
|
||||||
find ../static/ \
|
echo "Skipping frontend build..."; \
|
||||||
-type f \
|
else \
|
||||||
\( -name '*.js' \
|
cd ui && npm ci && npm run build:device && \
|
||||||
-o -name '*.css' \
|
find ../static/ -type f \
|
||||||
-o -name '*.html' \
|
\( -name '*.js' \
|
||||||
-o -name '*.ico' \
|
-o -name '*.css' \
|
||||||
-o -name '*.png' \
|
-o -name '*.html' \
|
||||||
-o -name '*.jpg' \
|
-o -name '*.ico' \
|
||||||
-o -name '*.jpeg' \
|
-o -name '*.png' \
|
||||||
-o -name '*.gif' \
|
-o -name '*.jpg' \
|
||||||
-o -name '*.svg' \
|
-o -name '*.jpeg' \
|
||||||
-o -name '*.webp' \
|
-o -name '*.gif' \
|
||||||
-o -name '*.woff2' \
|
-o -name '*.svg' \
|
||||||
\) \
|
-o -name '*.webp' \
|
||||||
-exec sh -c 'gzip -9 -kfv {}' \;
|
-o -name '*.woff2' \
|
||||||
|
\) -exec sh -c 'gzip -9 -kfv {}' \; ;\
|
||||||
|
fi
|
||||||
|
|
||||||
dev_release: frontend build_dev
|
dev_release: frontend build_dev
|
||||||
@echo "Uploading release... $(VERSION_DEV)"
|
@echo "Uploading release... $(VERSION_DEV)"
|
||||||
|
|
@ -85,7 +117,7 @@ dev_release: frontend build_dev
|
||||||
rclone copyto bin/jetkvm_app r2://jetkvm-update/app/$(VERSION_DEV)/jetkvm_app
|
rclone copyto bin/jetkvm_app r2://jetkvm-update/app/$(VERSION_DEV)/jetkvm_app
|
||||||
rclone copyto bin/jetkvm_app.sha256 r2://jetkvm-update/app/$(VERSION_DEV)/jetkvm_app.sha256
|
rclone copyto bin/jetkvm_app.sha256 r2://jetkvm-update/app/$(VERSION_DEV)/jetkvm_app.sha256
|
||||||
|
|
||||||
build_release: frontend hash_resource
|
build_release: frontend build_native
|
||||||
@echo "Building release..."
|
@echo "Building release..."
|
||||||
$(GO_CMD) build \
|
$(GO_CMD) build \
|
||||||
-ldflags="$(GO_LDFLAGS) -X $(KVM_PKG_NAME).builtAppVersion=$(VERSION)" \
|
-ldflags="$(GO_LDFLAGS) -X $(KVM_PKG_NAME).builtAppVersion=$(VERSION)" \
|
||||||
|
|
@ -101,4 +133,4 @@ release:
|
||||||
@echo "Uploading release..."
|
@echo "Uploading release..."
|
||||||
@shasum -a 256 bin/jetkvm_app | cut -d ' ' -f 1 > bin/jetkvm_app.sha256
|
@shasum -a 256 bin/jetkvm_app | cut -d ' ' -f 1 > bin/jetkvm_app.sha256
|
||||||
rclone copyto bin/jetkvm_app r2://jetkvm-update/app/$(VERSION)/jetkvm_app
|
rclone copyto bin/jetkvm_app r2://jetkvm-update/app/$(VERSION)/jetkvm_app
|
||||||
rclone copyto bin/jetkvm_app.sha256 r2://jetkvm-update/app/$(VERSION)/jetkvm_app.sha256
|
rclone copyto bin/jetkvm_app.sha256 r2://jetkvm-update/app/$(VERSION)/jetkvm_app.sha256
|
||||||
3
cloud.go
3
cloud.go
|
|
@ -170,6 +170,7 @@ func setCloudConnectionState(state CloudConnectionState) {
|
||||||
|
|
||||||
go waitCtrlAndRequestDisplayUpdate(
|
go waitCtrlAndRequestDisplayUpdate(
|
||||||
previousState != state,
|
previousState != state,
|
||||||
|
"set_cloud_connection_state",
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -493,7 +494,7 @@ func RunWebsocketClient() {
|
||||||
}
|
}
|
||||||
|
|
||||||
// If the network is not up, well, we can't connect to the cloud.
|
// If the network is not up, well, we can't connect to the cloud.
|
||||||
if !networkState.IsOnline() {
|
if !networkManager.IsOnline() {
|
||||||
cloudLogger.Warn().Msg("waiting for network to be online, will retry in 3 seconds")
|
cloudLogger.Warn().Msg("waiting for network to be online, will retry in 3 seconds")
|
||||||
time.Sleep(3 * time.Second)
|
time.Sleep(3 * time.Second)
|
||||||
continue
|
continue
|
||||||
|
|
|
||||||
210
cmd/main.go
210
cmd/main.go
|
|
@ -3,18 +3,37 @@ package main
|
||||||
import (
|
import (
|
||||||
"flag"
|
"flag"
|
||||||
"fmt"
|
"fmt"
|
||||||
|
"io"
|
||||||
"os"
|
"os"
|
||||||
|
"os/exec"
|
||||||
|
"os/signal"
|
||||||
|
"path/filepath"
|
||||||
|
"syscall"
|
||||||
|
"time"
|
||||||
|
|
||||||
|
"github.com/erikdubbelboer/gspt"
|
||||||
"github.com/jetkvm/kvm"
|
"github.com/jetkvm/kvm"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
const (
|
||||||
|
envChildID = "JETKVM_CHILD_ID"
|
||||||
|
errorDumpDir = "/userdata/jetkvm/crashdump"
|
||||||
|
errorDumpLastFile = "last-crash.log"
|
||||||
|
errorDumpTemplate = "jetkvm-%s.log"
|
||||||
|
)
|
||||||
|
|
||||||
|
func program() {
|
||||||
|
gspt.SetProcTitle(os.Args[0] + " [app]")
|
||||||
|
kvm.Main()
|
||||||
|
}
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
versionPtr := flag.Bool("version", false, "print version and exit")
|
versionPtr := flag.Bool("version", false, "print version and exit")
|
||||||
versionJsonPtr := flag.Bool("version-json", false, "print version as json and exit")
|
versionJSONPtr := flag.Bool("version-json", false, "print version as json and exit")
|
||||||
flag.Parse()
|
flag.Parse()
|
||||||
|
|
||||||
if *versionPtr || *versionJsonPtr {
|
if *versionPtr || *versionJSONPtr {
|
||||||
versionData, err := kvm.GetVersionData(*versionJsonPtr)
|
versionData, err := kvm.GetVersionData(*versionJSONPtr)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
fmt.Printf("failed to get version data: %v\n", err)
|
fmt.Printf("failed to get version data: %v\n", err)
|
||||||
os.Exit(1)
|
os.Exit(1)
|
||||||
|
|
@ -23,5 +42,188 @@ func main() {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
kvm.Main()
|
childID := os.Getenv(envChildID)
|
||||||
|
switch childID {
|
||||||
|
case "":
|
||||||
|
doSupervise()
|
||||||
|
case kvm.GetBuiltAppVersion():
|
||||||
|
program()
|
||||||
|
default:
|
||||||
|
fmt.Printf("Invalid build version: %s != %s\n", childID, kvm.GetBuiltAppVersion())
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func supervise() error {
|
||||||
|
// check binary path
|
||||||
|
binPath, err := os.Executable()
|
||||||
|
if err != nil {
|
||||||
|
return fmt.Errorf("failed to get executable path: %w", err)
|
||||||
|
}
|
||||||
|
|
||||||
|
// check if binary is same as current binary
|
||||||
|
if info, statErr := os.Stat(binPath); statErr != nil {
|
||||||
|
return fmt.Errorf("failed to get executable info: %w", statErr)
|
||||||
|
// check if binary is empty
|
||||||
|
} else if info.Size() == 0 {
|
||||||
|
return fmt.Errorf("binary is empty")
|
||||||
|
// check if it's executable
|
||||||
|
} else if info.Mode().Perm()&0111 == 0 {
|
||||||
|
return fmt.Errorf("binary is not executable")
|
||||||
|
}
|
||||||
|
// run the child binary
|
||||||
|
cmd := exec.Command(binPath)
|
||||||
|
|
||||||
|
cmd.Env = append(os.Environ(), []string{envChildID + "=" + kvm.GetBuiltAppVersion()}...)
|
||||||
|
cmd.Args = os.Args
|
||||||
|
|
||||||
|
logFile, err := os.CreateTemp("", "jetkvm-stdout.log")
|
||||||
|
defer func() {
|
||||||
|
// we don't care about the errors here
|
||||||
|
_ = logFile.Close()
|
||||||
|
_ = os.Remove(logFile.Name())
|
||||||
|
}()
|
||||||
|
if err != nil {
|
||||||
|
return fmt.Errorf("failed to create log file: %w", err)
|
||||||
|
}
|
||||||
|
|
||||||
|
// Use io.MultiWriter to write to both the original streams and our buffers
|
||||||
|
cmd.Stdout = io.MultiWriter(os.Stdout, logFile)
|
||||||
|
cmd.Stderr = io.MultiWriter(os.Stderr, logFile)
|
||||||
|
if startErr := cmd.Start(); startErr != nil {
|
||||||
|
return fmt.Errorf("failed to start command: %w", startErr)
|
||||||
|
}
|
||||||
|
|
||||||
|
go func() {
|
||||||
|
sigChan := make(chan os.Signal, 1)
|
||||||
|
signal.Notify(sigChan, syscall.SIGTERM)
|
||||||
|
|
||||||
|
sig := <-sigChan
|
||||||
|
_ = cmd.Process.Signal(sig)
|
||||||
|
}()
|
||||||
|
|
||||||
|
gspt.SetProcTitle(os.Args[0] + " [sup]")
|
||||||
|
|
||||||
|
cmdErr := cmd.Wait()
|
||||||
|
if cmdErr == nil {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
if exiterr, ok := cmdErr.(*exec.ExitError); ok {
|
||||||
|
createErrorDump(logFile)
|
||||||
|
os.Exit(exiterr.ExitCode())
|
||||||
|
}
|
||||||
|
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func isSymlinkTo(oldName, newName string) bool {
|
||||||
|
file, err := os.Stat(newName)
|
||||||
|
if err != nil {
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
if file.Mode()&os.ModeSymlink != os.ModeSymlink {
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
target, err := os.Readlink(newName)
|
||||||
|
if err != nil {
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
return target == oldName
|
||||||
|
}
|
||||||
|
|
||||||
|
func ensureSymlink(oldName, newName string) error {
|
||||||
|
if isSymlinkTo(oldName, newName) {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
_ = os.Remove(newName)
|
||||||
|
return os.Symlink(oldName, newName)
|
||||||
|
}
|
||||||
|
|
||||||
|
func renameFile(f *os.File, newName string) error {
|
||||||
|
_ = f.Close()
|
||||||
|
|
||||||
|
// try to rename the file first
|
||||||
|
if err := os.Rename(f.Name(), newName); err == nil {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
// copy the log file to the error dump directory
|
||||||
|
fnSrc, err := os.Open(f.Name())
|
||||||
|
if err != nil {
|
||||||
|
return fmt.Errorf("failed to open file: %w", err)
|
||||||
|
}
|
||||||
|
defer fnSrc.Close()
|
||||||
|
|
||||||
|
fnDst, err := os.Create(newName)
|
||||||
|
if err != nil {
|
||||||
|
return fmt.Errorf("failed to create file: %w", err)
|
||||||
|
}
|
||||||
|
defer fnDst.Close()
|
||||||
|
|
||||||
|
buf := make([]byte, 1024*1024)
|
||||||
|
for {
|
||||||
|
n, err := fnSrc.Read(buf)
|
||||||
|
if err != nil && err != io.EOF {
|
||||||
|
return fmt.Errorf("failed to read file: %w", err)
|
||||||
|
}
|
||||||
|
if n == 0 {
|
||||||
|
break
|
||||||
|
}
|
||||||
|
|
||||||
|
if _, err := fnDst.Write(buf[:n]); err != nil {
|
||||||
|
return fmt.Errorf("failed to write file: %w", err)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func ensureErrorDumpDir() error {
|
||||||
|
// TODO: check if the directory is writable
|
||||||
|
f, err := os.Stat(errorDumpDir)
|
||||||
|
if err == nil && f.IsDir() {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
if err := os.MkdirAll(errorDumpDir, 0755); err != nil {
|
||||||
|
return fmt.Errorf("failed to create error dump directory: %w", err)
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func createErrorDump(logFile *os.File) {
|
||||||
|
fmt.Println()
|
||||||
|
|
||||||
|
fileName := fmt.Sprintf(
|
||||||
|
errorDumpTemplate,
|
||||||
|
time.Now().Format("20060102-150405"),
|
||||||
|
)
|
||||||
|
|
||||||
|
// check if the directory exists
|
||||||
|
if err := ensureErrorDumpDir(); err != nil {
|
||||||
|
fmt.Printf("failed to ensure error dump directory: %v\n", err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
filePath := filepath.Join(errorDumpDir, fileName)
|
||||||
|
if err := renameFile(logFile, filePath); err != nil {
|
||||||
|
fmt.Printf("failed to rename file: %v\n", err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
fmt.Printf("error dump copied: %s\n", filePath)
|
||||||
|
|
||||||
|
lastFilePath := filepath.Join(errorDumpDir, errorDumpLastFile)
|
||||||
|
|
||||||
|
if err := ensureSymlink(filePath, lastFilePath); err != nil {
|
||||||
|
fmt.Printf("failed to create symlink: %v\n", err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func doSupervise() {
|
||||||
|
err := supervise()
|
||||||
|
if err == nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
163
config.go
163
config.go
|
|
@ -4,10 +4,12 @@ import (
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
"fmt"
|
"fmt"
|
||||||
"os"
|
"os"
|
||||||
|
"strconv"
|
||||||
"sync"
|
"sync"
|
||||||
|
|
||||||
|
"github.com/jetkvm/kvm/internal/confparser"
|
||||||
"github.com/jetkvm/kvm/internal/logging"
|
"github.com/jetkvm/kvm/internal/logging"
|
||||||
"github.com/jetkvm/kvm/internal/network"
|
"github.com/jetkvm/kvm/internal/network/types"
|
||||||
"github.com/jetkvm/kvm/internal/usbgadget"
|
"github.com/jetkvm/kvm/internal/usbgadget"
|
||||||
"github.com/prometheus/client_golang/prometheus"
|
"github.com/prometheus/client_golang/prometheus"
|
||||||
"github.com/prometheus/client_golang/prometheus/promauto"
|
"github.com/prometheus/client_golang/prometheus/promauto"
|
||||||
|
|
@ -77,71 +79,107 @@ func (m *KeyboardMacro) Validate() error {
|
||||||
}
|
}
|
||||||
|
|
||||||
type Config struct {
|
type Config struct {
|
||||||
CloudURL string `json:"cloud_url"`
|
CloudURL string `json:"cloud_url"`
|
||||||
CloudAppURL string `json:"cloud_app_url"`
|
CloudAppURL string `json:"cloud_app_url"`
|
||||||
CloudToken string `json:"cloud_token"`
|
CloudToken string `json:"cloud_token"`
|
||||||
GoogleIdentity string `json:"google_identity"`
|
GoogleIdentity string `json:"google_identity"`
|
||||||
JigglerEnabled bool `json:"jiggler_enabled"`
|
JigglerEnabled bool `json:"jiggler_enabled"`
|
||||||
JigglerConfig *JigglerConfig `json:"jiggler_config"`
|
JigglerConfig *JigglerConfig `json:"jiggler_config"`
|
||||||
AutoUpdateEnabled bool `json:"auto_update_enabled"`
|
AutoUpdateEnabled bool `json:"auto_update_enabled"`
|
||||||
IncludePreRelease bool `json:"include_pre_release"`
|
IncludePreRelease bool `json:"include_pre_release"`
|
||||||
HashedPassword string `json:"hashed_password"`
|
HashedPassword string `json:"hashed_password"`
|
||||||
LocalAuthToken string `json:"local_auth_token"`
|
LocalAuthToken string `json:"local_auth_token"`
|
||||||
LocalAuthMode string `json:"localAuthMode"` //TODO: fix it with migration
|
LocalAuthMode string `json:"localAuthMode"` //TODO: fix it with migration
|
||||||
LocalLoopbackOnly bool `json:"local_loopback_only"`
|
LocalLoopbackOnly bool `json:"local_loopback_only"`
|
||||||
WakeOnLanDevices []WakeOnLanDevice `json:"wake_on_lan_devices"`
|
WakeOnLanDevices []WakeOnLanDevice `json:"wake_on_lan_devices"`
|
||||||
KeyboardMacros []KeyboardMacro `json:"keyboard_macros"`
|
KeyboardMacros []KeyboardMacro `json:"keyboard_macros"`
|
||||||
KeyboardLayout string `json:"keyboard_layout"`
|
KeyboardLayout string `json:"keyboard_layout"`
|
||||||
EdidString string `json:"hdmi_edid_string"`
|
EdidString string `json:"hdmi_edid_string"`
|
||||||
ActiveExtension string `json:"active_extension"`
|
ActiveExtension string `json:"active_extension"`
|
||||||
DisplayRotation string `json:"display_rotation"`
|
DisplayRotation string `json:"display_rotation"`
|
||||||
DisplayMaxBrightness int `json:"display_max_brightness"`
|
DisplayMaxBrightness int `json:"display_max_brightness"`
|
||||||
DisplayDimAfterSec int `json:"display_dim_after_sec"`
|
DisplayDimAfterSec int `json:"display_dim_after_sec"`
|
||||||
DisplayOffAfterSec int `json:"display_off_after_sec"`
|
DisplayOffAfterSec int `json:"display_off_after_sec"`
|
||||||
TLSMode string `json:"tls_mode"` // options: "self-signed", "user-defined", ""
|
TLSMode string `json:"tls_mode"` // options: "self-signed", "user-defined", ""
|
||||||
UsbConfig *usbgadget.Config `json:"usb_config"`
|
UsbConfig *usbgadget.Config `json:"usb_config"`
|
||||||
UsbDevices *usbgadget.Devices `json:"usb_devices"`
|
UsbDevices *usbgadget.Devices `json:"usb_devices"`
|
||||||
NetworkConfig *network.NetworkConfig `json:"network_config"`
|
NetworkConfig *types.NetworkConfig `json:"network_config"`
|
||||||
DefaultLogLevel string `json:"default_log_level"`
|
DefaultLogLevel string `json:"default_log_level"`
|
||||||
|
VideoSleepAfterSec int `json:"video_sleep_after_sec"`
|
||||||
|
VideoQualityFactor float64 `json:"video_quality_factor"`
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *Config) GetDisplayRotation() uint16 {
|
||||||
|
rotationInt, err := strconv.ParseUint(c.DisplayRotation, 10, 16)
|
||||||
|
if err != nil {
|
||||||
|
logger.Warn().Err(err).Msg("invalid display rotation, using default")
|
||||||
|
return 270
|
||||||
|
}
|
||||||
|
return uint16(rotationInt)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *Config) SetDisplayRotation(rotation string) error {
|
||||||
|
_, err := strconv.ParseUint(rotation, 10, 16)
|
||||||
|
if err != nil {
|
||||||
|
logger.Warn().Err(err).Msg("invalid display rotation, using default")
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
c.DisplayRotation = rotation
|
||||||
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
const configPath = "/userdata/kvm_config.json"
|
const configPath = "/userdata/kvm_config.json"
|
||||||
|
|
||||||
var defaultConfig = &Config{
|
// it's a temporary solution to avoid sharing the same pointer
|
||||||
CloudURL: "https://api.jetkvm.com",
|
// we should migrate to a proper config solution in the future
|
||||||
CloudAppURL: "https://app.jetkvm.com",
|
var (
|
||||||
AutoUpdateEnabled: true, // Set a default value
|
defaultJigglerConfig = JigglerConfig{
|
||||||
ActiveExtension: "",
|
|
||||||
KeyboardMacros: []KeyboardMacro{},
|
|
||||||
DisplayRotation: "270",
|
|
||||||
KeyboardLayout: "en-US",
|
|
||||||
DisplayMaxBrightness: 64,
|
|
||||||
DisplayDimAfterSec: 120, // 2 minutes
|
|
||||||
DisplayOffAfterSec: 1800, // 30 minutes
|
|
||||||
JigglerEnabled: false,
|
|
||||||
// This is the "Standard" jiggler option in the UI
|
|
||||||
JigglerConfig: &JigglerConfig{
|
|
||||||
InactivityLimitSeconds: 60,
|
InactivityLimitSeconds: 60,
|
||||||
JitterPercentage: 25,
|
JitterPercentage: 25,
|
||||||
ScheduleCronTab: "0 * * * * *",
|
ScheduleCronTab: "0 * * * * *",
|
||||||
Timezone: "UTC",
|
Timezone: "UTC",
|
||||||
},
|
}
|
||||||
TLSMode: "",
|
defaultUsbConfig = usbgadget.Config{
|
||||||
UsbConfig: &usbgadget.Config{
|
|
||||||
VendorId: "0x1d6b", //The Linux Foundation
|
VendorId: "0x1d6b", //The Linux Foundation
|
||||||
ProductId: "0x0104", //Multifunction Composite Gadget
|
ProductId: "0x0104", //Multifunction Composite Gadget
|
||||||
SerialNumber: "",
|
SerialNumber: "",
|
||||||
Manufacturer: "JetKVM",
|
Manufacturer: "JetKVM",
|
||||||
Product: "USB Emulation Device",
|
Product: "USB Emulation Device",
|
||||||
},
|
}
|
||||||
UsbDevices: &usbgadget.Devices{
|
defaultUsbDevices = usbgadget.Devices{
|
||||||
AbsoluteMouse: true,
|
AbsoluteMouse: true,
|
||||||
RelativeMouse: true,
|
RelativeMouse: true,
|
||||||
Keyboard: true,
|
Keyboard: true,
|
||||||
MassStorage: true,
|
MassStorage: true,
|
||||||
},
|
}
|
||||||
NetworkConfig: &network.NetworkConfig{},
|
)
|
||||||
DefaultLogLevel: "INFO",
|
|
||||||
|
func getDefaultConfig() Config {
|
||||||
|
return Config{
|
||||||
|
CloudURL: "https://api.jetkvm.com",
|
||||||
|
CloudAppURL: "https://app.jetkvm.com",
|
||||||
|
AutoUpdateEnabled: true, // Set a default value
|
||||||
|
ActiveExtension: "",
|
||||||
|
KeyboardMacros: []KeyboardMacro{},
|
||||||
|
DisplayRotation: "270",
|
||||||
|
KeyboardLayout: "en-US",
|
||||||
|
DisplayMaxBrightness: 64,
|
||||||
|
DisplayDimAfterSec: 120, // 2 minutes
|
||||||
|
DisplayOffAfterSec: 1800, // 30 minutes
|
||||||
|
JigglerEnabled: false,
|
||||||
|
// This is the "Standard" jiggler option in the UI
|
||||||
|
JigglerConfig: func() *JigglerConfig { c := defaultJigglerConfig; return &c }(),
|
||||||
|
TLSMode: "",
|
||||||
|
UsbConfig: func() *usbgadget.Config { c := defaultUsbConfig; return &c }(),
|
||||||
|
UsbDevices: func() *usbgadget.Devices { c := defaultUsbDevices; return &c }(),
|
||||||
|
NetworkConfig: func() *types.NetworkConfig {
|
||||||
|
c := &types.NetworkConfig{}
|
||||||
|
_ = confparser.SetDefaultsAndValidate(c)
|
||||||
|
return c
|
||||||
|
}(),
|
||||||
|
DefaultLogLevel: "INFO",
|
||||||
|
VideoQualityFactor: 1.0,
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
var (
|
var (
|
||||||
|
|
@ -174,7 +212,8 @@ func LoadConfig() {
|
||||||
}
|
}
|
||||||
|
|
||||||
// load the default config
|
// load the default config
|
||||||
config = defaultConfig
|
defaultConfig := getDefaultConfig()
|
||||||
|
config = &defaultConfig
|
||||||
|
|
||||||
file, err := os.Open(configPath)
|
file, err := os.Open(configPath)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
@ -186,7 +225,7 @@ func LoadConfig() {
|
||||||
defer file.Close()
|
defer file.Close()
|
||||||
|
|
||||||
// load and merge the default config with the user config
|
// load and merge the default config with the user config
|
||||||
loadedConfig := *defaultConfig
|
loadedConfig := defaultConfig
|
||||||
if err := json.NewDecoder(file).Decode(&loadedConfig); err != nil {
|
if err := json.NewDecoder(file).Decode(&loadedConfig); err != nil {
|
||||||
logger.Warn().Err(err).Msg("config file JSON parsing failed")
|
logger.Warn().Err(err).Msg("config file JSON parsing failed")
|
||||||
configSuccess.Set(0.0)
|
configSuccess.Set(0.0)
|
||||||
|
|
@ -195,19 +234,19 @@ func LoadConfig() {
|
||||||
|
|
||||||
// merge the user config with the default config
|
// merge the user config with the default config
|
||||||
if loadedConfig.UsbConfig == nil {
|
if loadedConfig.UsbConfig == nil {
|
||||||
loadedConfig.UsbConfig = defaultConfig.UsbConfig
|
loadedConfig.UsbConfig = getDefaultConfig().UsbConfig
|
||||||
}
|
}
|
||||||
|
|
||||||
if loadedConfig.UsbDevices == nil {
|
if loadedConfig.UsbDevices == nil {
|
||||||
loadedConfig.UsbDevices = defaultConfig.UsbDevices
|
loadedConfig.UsbDevices = getDefaultConfig().UsbDevices
|
||||||
}
|
}
|
||||||
|
|
||||||
if loadedConfig.NetworkConfig == nil {
|
if loadedConfig.NetworkConfig == nil {
|
||||||
loadedConfig.NetworkConfig = defaultConfig.NetworkConfig
|
loadedConfig.NetworkConfig = getDefaultConfig().NetworkConfig
|
||||||
}
|
}
|
||||||
|
|
||||||
if loadedConfig.JigglerConfig == nil {
|
if loadedConfig.JigglerConfig == nil {
|
||||||
loadedConfig.JigglerConfig = defaultConfig.JigglerConfig
|
loadedConfig.JigglerConfig = getDefaultConfig().JigglerConfig
|
||||||
}
|
}
|
||||||
|
|
||||||
// fixup old keyboard layout value
|
// fixup old keyboard layout value
|
||||||
|
|
@ -226,17 +265,25 @@ func LoadConfig() {
|
||||||
}
|
}
|
||||||
|
|
||||||
func SaveConfig() error {
|
func SaveConfig() error {
|
||||||
|
return saveConfig(configPath)
|
||||||
|
}
|
||||||
|
|
||||||
|
func SaveBackupConfig() error {
|
||||||
|
return saveConfig(configPath + ".bak")
|
||||||
|
}
|
||||||
|
|
||||||
|
func saveConfig(path string) error {
|
||||||
configLock.Lock()
|
configLock.Lock()
|
||||||
defer configLock.Unlock()
|
defer configLock.Unlock()
|
||||||
|
|
||||||
logger.Trace().Str("path", configPath).Msg("Saving config")
|
logger.Trace().Str("path", path).Msg("Saving config")
|
||||||
|
|
||||||
// fixup old keyboard layout value
|
// fixup old keyboard layout value
|
||||||
if config.KeyboardLayout == "en_US" {
|
if config.KeyboardLayout == "en_US" {
|
||||||
config.KeyboardLayout = "en-US"
|
config.KeyboardLayout = "en-US"
|
||||||
}
|
}
|
||||||
|
|
||||||
file, err := os.Create(configPath)
|
file, err := os.Create(path)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return fmt.Errorf("failed to create config file: %w", err)
|
return fmt.Errorf("failed to create config file: %w", err)
|
||||||
}
|
}
|
||||||
|
|
@ -252,7 +299,7 @@ func SaveConfig() error {
|
||||||
return fmt.Errorf("failed to wite config: %w", err)
|
return fmt.Errorf("failed to wite config: %w", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
logger.Info().Str("path", configPath).Msg("config saved")
|
logger.Info().Str("path", path).Msg("config saved")
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
198
dev_deploy.sh
198
dev_deploy.sh
|
|
@ -1,198 +0,0 @@
|
||||||
#!/usr/bin/env bash
|
|
||||||
#
|
|
||||||
# Exit immediately if a command exits with a non-zero status
|
|
||||||
set -e
|
|
||||||
|
|
||||||
C_RST="$(tput sgr0)"
|
|
||||||
C_ERR="$(tput setaf 1)"
|
|
||||||
C_OK="$(tput setaf 2)"
|
|
||||||
C_WARN="$(tput setaf 3)"
|
|
||||||
C_INFO="$(tput setaf 5)"
|
|
||||||
|
|
||||||
msg() { printf '%s%s%s\n' $2 "$1" $C_RST; }
|
|
||||||
|
|
||||||
msg_info() { msg "$1" $C_INFO; }
|
|
||||||
msg_ok() { msg "$1" $C_OK; }
|
|
||||||
msg_err() { msg "$1" $C_ERR; }
|
|
||||||
msg_warn() { msg "$1" $C_WARN; }
|
|
||||||
|
|
||||||
# Function to display help message
|
|
||||||
show_help() {
|
|
||||||
echo "Usage: $0 [options] -r <remote_ip>"
|
|
||||||
echo
|
|
||||||
echo "Required:"
|
|
||||||
echo " -r, --remote <remote_ip> Remote host IP address"
|
|
||||||
echo
|
|
||||||
echo "Optional:"
|
|
||||||
echo " -u, --user <remote_user> Remote username (default: root)"
|
|
||||||
echo " --run-go-tests Run go tests"
|
|
||||||
echo " --run-go-tests-only Run go tests and exit"
|
|
||||||
echo " --skip-ui-build Skip frontend/UI build"
|
|
||||||
echo " -i, --install Build for release and install the app"
|
|
||||||
echo " --help Display this help message"
|
|
||||||
echo
|
|
||||||
echo "Example:"
|
|
||||||
echo " $0 -r 192.168.0.17"
|
|
||||||
echo " $0 -r 192.168.0.17 -u admin"
|
|
||||||
}
|
|
||||||
|
|
||||||
# Default values
|
|
||||||
REMOTE_USER="root"
|
|
||||||
REMOTE_PATH="/userdata/jetkvm/bin"
|
|
||||||
SKIP_UI_BUILD=false
|
|
||||||
RESET_USB_HID_DEVICE=false
|
|
||||||
LOG_TRACE_SCOPES="${LOG_TRACE_SCOPES:-jetkvm,cloud,websocket,native,jsonrpc}"
|
|
||||||
RUN_GO_TESTS=false
|
|
||||||
RUN_GO_TESTS_ONLY=false
|
|
||||||
INSTALL_APP=false
|
|
||||||
|
|
||||||
# Parse command line arguments
|
|
||||||
while [[ $# -gt 0 ]]; do
|
|
||||||
case $1 in
|
|
||||||
-r|--remote)
|
|
||||||
REMOTE_HOST="$2"
|
|
||||||
shift 2
|
|
||||||
;;
|
|
||||||
-u|--user)
|
|
||||||
REMOTE_USER="$2"
|
|
||||||
shift 2
|
|
||||||
;;
|
|
||||||
--skip-ui-build)
|
|
||||||
SKIP_UI_BUILD=true
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
--reset-usb-hid)
|
|
||||||
RESET_USB_HID_DEVICE=true
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
--run-go-tests)
|
|
||||||
RUN_GO_TESTS=true
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
--run-go-tests-only)
|
|
||||||
RUN_GO_TESTS_ONLY=true
|
|
||||||
RUN_GO_TESTS=true
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
-i|--install)
|
|
||||||
INSTALL_APP=true
|
|
||||||
shift
|
|
||||||
;;
|
|
||||||
--help)
|
|
||||||
show_help
|
|
||||||
exit 0
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo "Unknown option: $1"
|
|
||||||
show_help
|
|
||||||
exit 1
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
|
|
||||||
# Verify required parameters
|
|
||||||
if [ -z "$REMOTE_HOST" ]; then
|
|
||||||
msg_err "Error: Remote IP is a required parameter"
|
|
||||||
show_help
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Build the development version on the host
|
|
||||||
if [ "$SKIP_UI_BUILD" = false ]; then
|
|
||||||
msg_info "▶ Building frontend"
|
|
||||||
make frontend
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ "$RUN_GO_TESTS" = true ]; then
|
|
||||||
msg_info "▶ Building go tests"
|
|
||||||
make build_dev_test
|
|
||||||
|
|
||||||
msg_info "▶ Copying device-tests.tar.gz to remote host"
|
|
||||||
ssh "${REMOTE_USER}@${REMOTE_HOST}" "cat > /tmp/device-tests.tar.gz" < device-tests.tar.gz
|
|
||||||
|
|
||||||
msg_info "▶ Running go tests"
|
|
||||||
ssh "${REMOTE_USER}@${REMOTE_HOST}" ash << 'EOF'
|
|
||||||
set -e
|
|
||||||
TMP_DIR=$(mktemp -d)
|
|
||||||
cd ${TMP_DIR}
|
|
||||||
tar zxf /tmp/device-tests.tar.gz
|
|
||||||
./gotestsum --format=testdox \
|
|
||||||
--jsonfile=/tmp/device-tests.json \
|
|
||||||
--post-run-command 'sh -c "echo $TESTS_FAILED > /tmp/device-tests.failed"' \
|
|
||||||
--raw-command -- ./run_all_tests -json
|
|
||||||
|
|
||||||
GOTESTSUM_EXIT_CODE=$?
|
|
||||||
if [ $GOTESTSUM_EXIT_CODE -ne 0 ]; then
|
|
||||||
echo "❌ Tests failed (exit code: $GOTESTSUM_EXIT_CODE)"
|
|
||||||
rm -rf ${TMP_DIR} /tmp/device-tests.tar.gz
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
TESTS_FAILED=$(cat /tmp/device-tests.failed)
|
|
||||||
if [ "$TESTS_FAILED" -ne 0 ]; then
|
|
||||||
echo "❌ Tests failed $TESTS_FAILED tests failed"
|
|
||||||
rm -rf ${TMP_DIR} /tmp/device-tests.tar.gz
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "✅ Tests passed"
|
|
||||||
rm -rf ${TMP_DIR} /tmp/device-tests.tar.gz
|
|
||||||
EOF
|
|
||||||
|
|
||||||
if [ "$RUN_GO_TESTS_ONLY" = true ]; then
|
|
||||||
msg_info "▶ Go tests completed"
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ "$INSTALL_APP" = true ]
|
|
||||||
then
|
|
||||||
msg_info "▶ Building release binary"
|
|
||||||
make build_release
|
|
||||||
|
|
||||||
# Copy the binary to the remote host as if we were the OTA updater.
|
|
||||||
ssh "${REMOTE_USER}@${REMOTE_HOST}" "cat > /userdata/jetkvm/jetkvm_app.update" < bin/jetkvm_app
|
|
||||||
|
|
||||||
# Reboot the device, the new app will be deployed by the startup process.
|
|
||||||
ssh "${REMOTE_USER}@${REMOTE_HOST}" "reboot"
|
|
||||||
else
|
|
||||||
msg_info "▶ Building development binary"
|
|
||||||
make build_dev
|
|
||||||
|
|
||||||
# Kill any existing instances of the application
|
|
||||||
ssh "${REMOTE_USER}@${REMOTE_HOST}" "killall jetkvm_app_debug || true"
|
|
||||||
|
|
||||||
# Copy the binary to the remote host
|
|
||||||
ssh "${REMOTE_USER}@${REMOTE_HOST}" "cat > ${REMOTE_PATH}/jetkvm_app_debug" < bin/jetkvm_app
|
|
||||||
|
|
||||||
if [ "$RESET_USB_HID_DEVICE" = true ]; then
|
|
||||||
msg_info "▶ Resetting USB HID device"
|
|
||||||
msg_warn "The option has been deprecated and will be removed in a future version, as JetKVM will now reset USB gadget configuration when needed"
|
|
||||||
# Remove the old USB gadget configuration
|
|
||||||
ssh "${REMOTE_USER}@${REMOTE_HOST}" "rm -rf /sys/kernel/config/usb_gadget/jetkvm/configs/c.1/hid.usb*"
|
|
||||||
ssh "${REMOTE_USER}@${REMOTE_HOST}" "ls /sys/class/udc > /sys/kernel/config/usb_gadget/jetkvm/UDC"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Deploy and run the application on the remote host
|
|
||||||
ssh "${REMOTE_USER}@${REMOTE_HOST}" ash << EOF
|
|
||||||
set -e
|
|
||||||
|
|
||||||
# Set the library path to include the directory where librockit.so is located
|
|
||||||
export LD_LIBRARY_PATH=/oem/usr/lib:\$LD_LIBRARY_PATH
|
|
||||||
|
|
||||||
# Kill any existing instances of the application
|
|
||||||
killall jetkvm_app || true
|
|
||||||
killall jetkvm_app_debug || true
|
|
||||||
|
|
||||||
# Navigate to the directory where the binary will be stored
|
|
||||||
cd "${REMOTE_PATH}"
|
|
||||||
|
|
||||||
# Make the new binary executable
|
|
||||||
chmod +x jetkvm_app_debug
|
|
||||||
|
|
||||||
# Run the application in the background
|
|
||||||
PION_LOG_TRACE=${LOG_TRACE_SCOPES} ./jetkvm_app_debug | tee -a /tmp/jetkvm_app_debug.log
|
|
||||||
EOF
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Deployment complete."
|
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
scripts/dev_deploy.sh
|
||||||
265
display.go
265
display.go
|
|
@ -6,16 +6,15 @@ import (
|
||||||
"fmt"
|
"fmt"
|
||||||
"os"
|
"os"
|
||||||
"strconv"
|
"strconv"
|
||||||
|
"strings"
|
||||||
"sync"
|
"sync"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
|
"github.com/prometheus/common/version"
|
||||||
)
|
)
|
||||||
|
|
||||||
var backlightState = 0 // 0 - NORMAL, 1 - DIMMED, 2 - OFF
|
|
||||||
|
|
||||||
var (
|
var (
|
||||||
currentScreen = "ui_Boot_Screen"
|
backlightState = 0 // 0 - NORMAL, 1 - DIMMED, 2 - OFF
|
||||||
displayedTexts = make(map[string]string)
|
|
||||||
screenStateLock = sync.Mutex{}
|
|
||||||
)
|
)
|
||||||
|
|
||||||
var (
|
var (
|
||||||
|
|
@ -24,132 +23,78 @@ var (
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
touchscreenDevice string = "/dev/input/event1"
|
|
||||||
backlightControlClass string = "/sys/class/backlight/backlight/brightness"
|
backlightControlClass string = "/sys/class/backlight/backlight/brightness"
|
||||||
)
|
)
|
||||||
|
|
||||||
// do not call this function directly, use switchToScreenIfDifferent instead
|
func switchToMainScreen() {
|
||||||
// this function is not thread safe
|
if networkManager == nil {
|
||||||
func switchToScreen(screen string) {
|
nativeInstance.SwitchToScreenIfDifferent("no_network_screen")
|
||||||
_, err := CallCtrlAction("lv_scr_load", map[string]any{"obj": screen})
|
|
||||||
if err != nil {
|
|
||||||
displayLogger.Warn().Err(err).Str("screen", screen).Msg("failed to switch to screen")
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
currentScreen = screen
|
|
||||||
}
|
|
||||||
|
|
||||||
func lvObjSetState(objName string, state string) (*CtrlResponse, error) {
|
if networkManager.IsUp() {
|
||||||
return CallCtrlAction("lv_obj_set_state", map[string]any{"obj": objName, "state": state})
|
nativeInstance.SwitchToScreenIfDifferent("home_screen")
|
||||||
}
|
} else {
|
||||||
|
nativeInstance.SwitchToScreenIfDifferent("no_network_screen")
|
||||||
func lvObjAddFlag(objName string, flag string) (*CtrlResponse, error) {
|
|
||||||
return CallCtrlAction("lv_obj_add_flag", map[string]any{"obj": objName, "flag": flag})
|
|
||||||
}
|
|
||||||
|
|
||||||
func lvObjClearFlag(objName string, flag string) (*CtrlResponse, error) {
|
|
||||||
return CallCtrlAction("lv_obj_clear_flag", map[string]any{"obj": objName, "flag": flag})
|
|
||||||
}
|
|
||||||
|
|
||||||
func lvObjHide(objName string) (*CtrlResponse, error) {
|
|
||||||
return lvObjAddFlag(objName, "LV_OBJ_FLAG_HIDDEN")
|
|
||||||
}
|
|
||||||
|
|
||||||
func lvObjShow(objName string) (*CtrlResponse, error) {
|
|
||||||
return lvObjClearFlag(objName, "LV_OBJ_FLAG_HIDDEN")
|
|
||||||
}
|
|
||||||
|
|
||||||
func lvObjSetOpacity(objName string, opacity int) (*CtrlResponse, error) { // nolint:unused
|
|
||||||
return CallCtrlAction("lv_obj_set_style_opa_layered", map[string]any{"obj": objName, "opa": opacity})
|
|
||||||
}
|
|
||||||
|
|
||||||
func lvObjFadeIn(objName string, duration uint32) (*CtrlResponse, error) {
|
|
||||||
return CallCtrlAction("lv_obj_fade_in", map[string]any{"obj": objName, "duration": duration})
|
|
||||||
}
|
|
||||||
|
|
||||||
func lvObjFadeOut(objName string, duration uint32) (*CtrlResponse, error) {
|
|
||||||
return CallCtrlAction("lv_obj_fade_out", map[string]any{"obj": objName, "duration": duration})
|
|
||||||
}
|
|
||||||
|
|
||||||
func lvLabelSetText(objName string, text string) (*CtrlResponse, error) {
|
|
||||||
return CallCtrlAction("lv_label_set_text", map[string]any{"obj": objName, "text": text})
|
|
||||||
}
|
|
||||||
|
|
||||||
func lvImgSetSrc(objName string, src string) (*CtrlResponse, error) {
|
|
||||||
return CallCtrlAction("lv_img_set_src", map[string]any{"obj": objName, "src": src})
|
|
||||||
}
|
|
||||||
|
|
||||||
func lvDispSetRotation(rotation string) (*CtrlResponse, error) {
|
|
||||||
return CallCtrlAction("lv_disp_set_rotation", map[string]any{"rotation": rotation})
|
|
||||||
}
|
|
||||||
|
|
||||||
func updateLabelIfChanged(objName string, newText string) {
|
|
||||||
screenStateLock.Lock()
|
|
||||||
defer screenStateLock.Unlock()
|
|
||||||
|
|
||||||
if newText != "" && newText != displayedTexts[objName] {
|
|
||||||
_, _ = lvLabelSetText(objName, newText)
|
|
||||||
displayedTexts[objName] = newText
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func switchToScreenIfDifferent(screenName string) {
|
|
||||||
screenStateLock.Lock()
|
|
||||||
defer screenStateLock.Unlock()
|
|
||||||
|
|
||||||
if currentScreen != screenName {
|
|
||||||
displayLogger.Info().Str("from", currentScreen).Str("to", screenName).Msg("switching screen")
|
|
||||||
switchToScreen(screenName)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func clearDisplayState() {
|
|
||||||
screenStateLock.Lock()
|
|
||||||
defer screenStateLock.Unlock()
|
|
||||||
|
|
||||||
displayedTexts = make(map[string]string)
|
|
||||||
currentScreen = "ui_Boot_Screen"
|
|
||||||
}
|
|
||||||
|
|
||||||
func updateDisplay() {
|
func updateDisplay() {
|
||||||
updateLabelIfChanged("ui_Home_Content_Ip", networkState.IPv4String())
|
if networkManager != nil {
|
||||||
|
nativeInstance.UpdateLabelIfChanged("home_info_ipv4_addr", networkManager.IPv4String())
|
||||||
|
nativeInstance.UpdateLabelAndChangeVisibility("home_info_ipv6_addr", networkManager.IPv6String())
|
||||||
|
nativeInstance.UpdateLabelIfChanged("home_info_mac_addr", networkManager.MACString())
|
||||||
|
}
|
||||||
|
|
||||||
|
_, _ = nativeInstance.UIObjHide("menu_btn_network")
|
||||||
|
_, _ = nativeInstance.UIObjHide("menu_btn_access")
|
||||||
|
|
||||||
|
switch config.NetworkConfig.DHCPClient.String {
|
||||||
|
case "jetdhcpc":
|
||||||
|
nativeInstance.UpdateLabelIfChanged("dhcp_client_change_label", "Change to udhcpc")
|
||||||
|
case "udhcpc":
|
||||||
|
nativeInstance.UpdateLabelIfChanged("dhcp_client_change_label", "Change to JetKVM")
|
||||||
|
}
|
||||||
|
|
||||||
if usbState == "configured" {
|
if usbState == "configured" {
|
||||||
updateLabelIfChanged("ui_Home_Footer_Usb_Status_Label", "Connected")
|
nativeInstance.UpdateLabelIfChanged("usb_status_label", "Connected")
|
||||||
_, _ = lvObjSetState("ui_Home_Footer_Usb_Status_Label", "LV_STATE_DEFAULT")
|
_, _ = nativeInstance.UIObjAddState("usb_status_label", "LV_STATE_CHECKED")
|
||||||
} else {
|
} else {
|
||||||
updateLabelIfChanged("ui_Home_Footer_Usb_Status_Label", "Disconnected")
|
nativeInstance.UpdateLabelIfChanged("usb_status_label", "Disconnected")
|
||||||
_, _ = lvObjSetState("ui_Home_Footer_Usb_Status_Label", "LV_STATE_USER_2")
|
_, _ = nativeInstance.UIObjClearState("usb_status_label", "LV_STATE_CHECKED")
|
||||||
}
|
}
|
||||||
if lastVideoState.Ready {
|
if lastVideoState.Ready {
|
||||||
updateLabelIfChanged("ui_Home_Footer_Hdmi_Status_Label", "Connected")
|
nativeInstance.UpdateLabelIfChanged("hdmi_status_label", "Connected")
|
||||||
_, _ = lvObjSetState("ui_Home_Footer_Hdmi_Status_Label", "LV_STATE_DEFAULT")
|
_, _ = nativeInstance.UIObjAddState("hdmi_status_label", "LV_STATE_CHECKED")
|
||||||
} else {
|
} else {
|
||||||
updateLabelIfChanged("ui_Home_Footer_Hdmi_Status_Label", "Disconnected")
|
nativeInstance.UpdateLabelIfChanged("hdmi_status_label", "Disconnected")
|
||||||
_, _ = lvObjSetState("ui_Home_Footer_Hdmi_Status_Label", "LV_STATE_USER_2")
|
_, _ = nativeInstance.UIObjClearState("hdmi_status_label", "LV_STATE_CHECKED")
|
||||||
}
|
}
|
||||||
updateLabelIfChanged("ui_Home_Header_Cloud_Status_Label", fmt.Sprintf("%d active", actionSessions))
|
nativeInstance.UpdateLabelIfChanged("cloud_status_label", fmt.Sprintf("%d active", actionSessions))
|
||||||
|
|
||||||
if networkState.IsUp() {
|
if networkManager != nil && networkManager.IsUp() {
|
||||||
switchToScreenIfDifferent("ui_Home_Screen")
|
nativeInstance.UISetVar("main_screen", "home_screen")
|
||||||
|
nativeInstance.SwitchToScreenIf("home_screen", []string{"no_network_screen", "boot_screen"})
|
||||||
} else {
|
} else {
|
||||||
switchToScreenIfDifferent("ui_No_Network_Screen")
|
nativeInstance.UISetVar("main_screen", "no_network_screen")
|
||||||
|
nativeInstance.SwitchToScreenIf("no_network_screen", []string{"home_screen", "boot_screen"})
|
||||||
}
|
}
|
||||||
|
|
||||||
if cloudConnectionState == CloudConnectionStateNotConfigured {
|
if cloudConnectionState == CloudConnectionStateNotConfigured {
|
||||||
_, _ = lvObjHide("ui_Home_Header_Cloud_Status_Icon")
|
_, _ = nativeInstance.UIObjHide("cloud_status_icon")
|
||||||
} else {
|
} else {
|
||||||
_, _ = lvObjShow("ui_Home_Header_Cloud_Status_Icon")
|
_, _ = nativeInstance.UIObjShow("cloud_status_icon")
|
||||||
}
|
}
|
||||||
|
|
||||||
switch cloudConnectionState {
|
switch cloudConnectionState {
|
||||||
case CloudConnectionStateDisconnected:
|
case CloudConnectionStateDisconnected:
|
||||||
_, _ = lvImgSetSrc("ui_Home_Header_Cloud_Status_Icon", "cloud_disconnected.png")
|
_, _ = nativeInstance.UIObjSetImageSrc("cloud_status_icon", "cloud_disconnected")
|
||||||
stopCloudBlink()
|
stopCloudBlink()
|
||||||
case CloudConnectionStateConnecting:
|
case CloudConnectionStateConnecting:
|
||||||
_, _ = lvImgSetSrc("ui_Home_Header_Cloud_Status_Icon", "cloud.png")
|
_, _ = nativeInstance.UIObjSetImageSrc("cloud_status_icon", "cloud")
|
||||||
restartCloudBlink()
|
restartCloudBlink()
|
||||||
case CloudConnectionStateConnected:
|
case CloudConnectionStateConnected:
|
||||||
_, _ = lvImgSetSrc("ui_Home_Header_Cloud_Status_Icon", "cloud.png")
|
_, _ = nativeInstance.UIObjSetImageSrc("cloud_status_icon", "cloud")
|
||||||
stopCloudBlink()
|
stopCloudBlink()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -171,7 +116,7 @@ func doCloudBlink(ctx context.Context) {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
_, _ = lvObjFadeOut("ui_Home_Header_Cloud_Status_Icon", uint32(cloudBlinkDuration.Milliseconds()))
|
_, _ = nativeInstance.UIObjFadeOut("ui_Home_Header_Cloud_Status_Icon", uint32(cloudBlinkDuration.Milliseconds()))
|
||||||
|
|
||||||
select {
|
select {
|
||||||
case <-ctx.Done():
|
case <-ctx.Done():
|
||||||
|
|
@ -179,7 +124,7 @@ func doCloudBlink(ctx context.Context) {
|
||||||
case <-time.After(cloudBlinkDuration):
|
case <-time.After(cloudBlinkDuration):
|
||||||
}
|
}
|
||||||
|
|
||||||
_, _ = lvObjFadeIn("ui_Home_Header_Cloud_Status_Icon", uint32(cloudBlinkDuration.Milliseconds()))
|
_, _ = nativeInstance.UIObjFadeIn("ui_Home_Header_Cloud_Status_Icon", uint32(cloudBlinkDuration.Milliseconds()))
|
||||||
|
|
||||||
select {
|
select {
|
||||||
case <-ctx.Done():
|
case <-ctx.Done():
|
||||||
|
|
@ -230,7 +175,7 @@ var (
|
||||||
waitDisplayUpdate = sync.Mutex{}
|
waitDisplayUpdate = sync.Mutex{}
|
||||||
)
|
)
|
||||||
|
|
||||||
func requestDisplayUpdate(shouldWakeDisplay bool) {
|
func requestDisplayUpdate(shouldWakeDisplay bool, reason string) {
|
||||||
displayUpdateLock.Lock()
|
displayUpdateLock.Lock()
|
||||||
defer displayUpdateLock.Unlock()
|
defer displayUpdateLock.Unlock()
|
||||||
|
|
||||||
|
|
@ -240,37 +185,56 @@ func requestDisplayUpdate(shouldWakeDisplay bool) {
|
||||||
}
|
}
|
||||||
go func() {
|
go func() {
|
||||||
if shouldWakeDisplay {
|
if shouldWakeDisplay {
|
||||||
wakeDisplay(false)
|
wakeDisplay(false, reason)
|
||||||
}
|
}
|
||||||
displayLogger.Debug().Msg("display updating")
|
displayLogger.Debug().Msg("display updating")
|
||||||
//TODO: only run once regardless how many pending updates
|
// TODO: only run once regardless how many pending updates
|
||||||
updateDisplay()
|
updateDisplay()
|
||||||
}()
|
}()
|
||||||
}
|
}
|
||||||
|
|
||||||
func waitCtrlAndRequestDisplayUpdate(shouldWakeDisplay bool) {
|
func waitCtrlAndRequestDisplayUpdate(shouldWakeDisplay bool, reason string) {
|
||||||
waitDisplayUpdate.Lock()
|
waitDisplayUpdate.Lock()
|
||||||
defer waitDisplayUpdate.Unlock()
|
defer waitDisplayUpdate.Unlock()
|
||||||
|
|
||||||
waitCtrlClientConnected()
|
requestDisplayUpdate(shouldWakeDisplay, reason)
|
||||||
requestDisplayUpdate(shouldWakeDisplay)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func updateStaticContents() {
|
func updateStaticContents() {
|
||||||
//contents that never change
|
//contents that never change
|
||||||
updateLabelIfChanged("ui_Home_Content_Mac", networkState.MACString())
|
if networkManager != nil {
|
||||||
systemVersion, appVersion, err := GetLocalVersion()
|
nativeInstance.UpdateLabelIfChanged("home_info_mac_addr", networkManager.MACString())
|
||||||
if err == nil {
|
|
||||||
updateLabelIfChanged("ui_About_Content_Operating_System_Version_ContentLabel", systemVersion.String())
|
|
||||||
updateLabelIfChanged("ui_About_Content_App_Version_Content_Label", appVersion.String())
|
|
||||||
}
|
}
|
||||||
|
|
||||||
updateLabelIfChanged("ui_Status_Content_Device_Id_Content_Label", GetDeviceID())
|
// get cpu info
|
||||||
|
if cpuInfo, err := os.ReadFile("/proc/cpuinfo"); err == nil {
|
||||||
|
// get the line starting with "Serial"
|
||||||
|
for line := range strings.SplitSeq(string(cpuInfo), "\n") {
|
||||||
|
if strings.HasPrefix(line, "Serial") {
|
||||||
|
serial := strings.SplitN(line, ":", 2)[1]
|
||||||
|
nativeInstance.UpdateLabelAndChangeVisibility("cpu_serial", strings.TrimSpace(serial))
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// get kernel version
|
||||||
|
if kernelVersion, err := os.ReadFile("/proc/version"); err == nil {
|
||||||
|
kernelVersion := strings.TrimPrefix(string(kernelVersion), "Linux version ")
|
||||||
|
kernelVersion = strings.SplitN(kernelVersion, " ", 2)[0]
|
||||||
|
nativeInstance.UpdateLabelAndChangeVisibility("kernel_version", kernelVersion)
|
||||||
|
}
|
||||||
|
|
||||||
|
nativeInstance.UpdateLabelAndChangeVisibility("build_branch", version.Branch)
|
||||||
|
nativeInstance.UpdateLabelAndChangeVisibility("build_date", version.BuildDate)
|
||||||
|
nativeInstance.UpdateLabelAndChangeVisibility("golang_version", version.GoVersion)
|
||||||
|
|
||||||
|
// nativeInstance.UpdateLabelAndChangeVisibility("boot_screen_device_id", GetDeviceID())
|
||||||
}
|
}
|
||||||
|
|
||||||
// setDisplayBrightness sets /sys/class/backlight/backlight/brightness to alter
|
// setDisplayBrightness sets /sys/class/backlight/backlight/brightness to alter
|
||||||
// the backlight brightness of the JetKVM hardware's display.
|
// the backlight brightness of the JetKVM hardware's display.
|
||||||
func setDisplayBrightness(brightness int) error {
|
func setDisplayBrightness(brightness int, reason string) error {
|
||||||
// NOTE: The actual maximum value for this is 255, but out-of-the-box, the value is set to 64.
|
// NOTE: The actual maximum value for this is 255, but out-of-the-box, the value is set to 64.
|
||||||
// The maximum set here is set to 100 to reduce the risk of drawing too much power (and besides, 255 is very bright!).
|
// The maximum set here is set to 100 to reduce the risk of drawing too much power (and besides, 255 is very bright!).
|
||||||
if brightness > 100 || brightness < 0 {
|
if brightness > 100 || brightness < 0 {
|
||||||
|
|
@ -289,14 +253,14 @@ func setDisplayBrightness(brightness int) error {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
displayLogger.Info().Int("brightness", brightness).Msg("set brightness")
|
displayLogger.Info().Int("brightness", brightness).Str("reason", reason).Msg("set brightness")
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// tick_displayDim() is called when when dim ticker expires, it simply reduces the brightness
|
// tick_displayDim() is called when when dim ticker expires, it simply reduces the brightness
|
||||||
// of the display by half of the max brightness.
|
// of the display by half of the max brightness.
|
||||||
func tick_displayDim() {
|
func tick_displayDim() {
|
||||||
err := setDisplayBrightness(config.DisplayMaxBrightness / 2)
|
err := setDisplayBrightness(config.DisplayMaxBrightness/2, "tick_display_dim")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
displayLogger.Warn().Err(err).Msg("failed to dim display")
|
displayLogger.Warn().Err(err).Msg("failed to dim display")
|
||||||
}
|
}
|
||||||
|
|
@ -309,7 +273,7 @@ func tick_displayDim() {
|
||||||
// tick_displayOff() is called when the off ticker expires, it turns off the display
|
// tick_displayOff() is called when the off ticker expires, it turns off the display
|
||||||
// by setting the brightness to zero.
|
// by setting the brightness to zero.
|
||||||
func tick_displayOff() {
|
func tick_displayOff() {
|
||||||
err := setDisplayBrightness(0)
|
err := setDisplayBrightness(0, "tick_display_off")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
displayLogger.Warn().Err(err).Msg("failed to turn off display")
|
displayLogger.Warn().Err(err).Msg("failed to turn off display")
|
||||||
}
|
}
|
||||||
|
|
@ -322,7 +286,7 @@ func tick_displayOff() {
|
||||||
// wakeDisplay sets the display brightness back to config.DisplayMaxBrightness and stores the time the display
|
// wakeDisplay sets the display brightness back to config.DisplayMaxBrightness and stores the time the display
|
||||||
// last woke, ready for displayTimeoutTick to put the display back in the dim/off states.
|
// last woke, ready for displayTimeoutTick to put the display back in the dim/off states.
|
||||||
// Set force to true to skip the backlight state check, this should be done if altering the tickers.
|
// Set force to true to skip the backlight state check, this should be done if altering the tickers.
|
||||||
func wakeDisplay(force bool) {
|
func wakeDisplay(force bool, reason string) {
|
||||||
if backlightState == 0 && !force {
|
if backlightState == 0 && !force {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
@ -332,49 +296,25 @@ func wakeDisplay(force bool) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
err := setDisplayBrightness(config.DisplayMaxBrightness)
|
if reason == "" {
|
||||||
|
reason = "wake_display"
|
||||||
|
}
|
||||||
|
|
||||||
|
err := setDisplayBrightness(config.DisplayMaxBrightness, reason)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
displayLogger.Warn().Err(err).Msg("failed to wake display")
|
displayLogger.Warn().Err(err).Msg("failed to wake display")
|
||||||
}
|
}
|
||||||
|
|
||||||
if config.DisplayDimAfterSec != 0 {
|
if config.DisplayDimAfterSec != 0 && dimTicker != nil {
|
||||||
dimTicker.Reset(time.Duration(config.DisplayDimAfterSec) * time.Second)
|
dimTicker.Reset(time.Duration(config.DisplayDimAfterSec) * time.Second)
|
||||||
}
|
}
|
||||||
|
|
||||||
if config.DisplayOffAfterSec != 0 {
|
if config.DisplayOffAfterSec != 0 && offTicker != nil {
|
||||||
offTicker.Reset(time.Duration(config.DisplayOffAfterSec) * time.Second)
|
offTicker.Reset(time.Duration(config.DisplayOffAfterSec) * time.Second)
|
||||||
}
|
}
|
||||||
backlightState = 0
|
backlightState = 0
|
||||||
}
|
}
|
||||||
|
|
||||||
// watchTsEvents monitors the touchscreen for events and simply calls wakeDisplay() to ensure the
|
|
||||||
// touchscreen interface still works even with LCD dimming/off.
|
|
||||||
// TODO: This is quite a hack, really we should be getting an event from jetkvm_native, or the whole display backlight
|
|
||||||
// control should be hoisted up to jetkvm_native.
|
|
||||||
func watchTsEvents() {
|
|
||||||
ts, err := os.OpenFile(touchscreenDevice, os.O_RDONLY, 0666)
|
|
||||||
if err != nil {
|
|
||||||
displayLogger.Warn().Err(err).Msg("failed to open touchscreen device")
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
defer ts.Close()
|
|
||||||
|
|
||||||
// This buffer is set to 24 bytes as that's the normal size of events on /dev/input
|
|
||||||
// Reference: https://www.kernel.org/doc/Documentation/input/input.txt
|
|
||||||
// This could potentially be set higher, to require multiple events to wake the display.
|
|
||||||
buf := make([]byte, 24)
|
|
||||||
for {
|
|
||||||
_, err := ts.Read(buf)
|
|
||||||
if err != nil {
|
|
||||||
displayLogger.Warn().Err(err).Msg("failed to read from touchscreen device")
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
wakeDisplay(false)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// startBacklightTickers starts the two tickers for dimming and switching off the display
|
// startBacklightTickers starts the two tickers for dimming and switching off the display
|
||||||
// if they're not already set. This is done separately to the init routine as the "never dim"
|
// if they're not already set. This is done separately to the init routine as the "never dim"
|
||||||
// option has the value set to zero, but time.NewTicker only accept positive values.
|
// option has the value set to zero, but time.NewTicker only accept positive values.
|
||||||
|
|
@ -382,7 +322,7 @@ func startBacklightTickers() {
|
||||||
// Don't start the tickers if the display is switched off.
|
// Don't start the tickers if the display is switched off.
|
||||||
// Set the display to off if that's the case.
|
// Set the display to off if that's the case.
|
||||||
if config.DisplayMaxBrightness == 0 {
|
if config.DisplayMaxBrightness == 0 {
|
||||||
_ = setDisplayBrightness(0)
|
_ = setDisplayBrightness(0, "display_disabled")
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -400,11 +340,8 @@ func startBacklightTickers() {
|
||||||
dimTicker = time.NewTicker(time.Duration(config.DisplayDimAfterSec) * time.Second)
|
dimTicker = time.NewTicker(time.Duration(config.DisplayDimAfterSec) * time.Second)
|
||||||
|
|
||||||
go func() {
|
go func() {
|
||||||
for { //nolint:staticcheck
|
for range dimTicker.C {
|
||||||
select {
|
tick_displayDim()
|
||||||
case <-dimTicker.C:
|
|
||||||
tick_displayDim()
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}()
|
}()
|
||||||
}
|
}
|
||||||
|
|
@ -414,11 +351,8 @@ func startBacklightTickers() {
|
||||||
offTicker = time.NewTicker(time.Duration(config.DisplayOffAfterSec) * time.Second)
|
offTicker = time.NewTicker(time.Duration(config.DisplayOffAfterSec) * time.Second)
|
||||||
|
|
||||||
go func() {
|
go func() {
|
||||||
for { //nolint:staticcheck
|
for range offTicker.C {
|
||||||
select {
|
tick_displayOff()
|
||||||
case <-offTicker.C:
|
|
||||||
tick_displayOff()
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}()
|
}()
|
||||||
}
|
}
|
||||||
|
|
@ -426,17 +360,12 @@ func startBacklightTickers() {
|
||||||
|
|
||||||
func initDisplay() {
|
func initDisplay() {
|
||||||
go func() {
|
go func() {
|
||||||
waitCtrlClientConnected()
|
|
||||||
displayLogger.Info().Msg("setting initial display contents")
|
displayLogger.Info().Msg("setting initial display contents")
|
||||||
time.Sleep(500 * time.Millisecond)
|
time.Sleep(500 * time.Millisecond)
|
||||||
_, _ = lvDispSetRotation(config.DisplayRotation)
|
|
||||||
updateStaticContents()
|
updateStaticContents()
|
||||||
displayInited = true
|
displayInited = true
|
||||||
displayLogger.Info().Msg("display inited")
|
displayLogger.Info().Msg("display inited")
|
||||||
startBacklightTickers()
|
startBacklightTickers()
|
||||||
wakeDisplay(true)
|
requestDisplayUpdate(true, "init_display")
|
||||||
requestDisplayUpdate(true)
|
|
||||||
}()
|
}()
|
||||||
|
|
||||||
go watchTsEvents()
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
47
go.mod
47
go.mod
|
|
@ -5,64 +5,70 @@ go 1.24.4
|
||||||
require (
|
require (
|
||||||
github.com/Masterminds/semver/v3 v3.4.0
|
github.com/Masterminds/semver/v3 v3.4.0
|
||||||
github.com/beevik/ntp v1.4.3
|
github.com/beevik/ntp v1.4.3
|
||||||
github.com/coder/websocket v1.8.13
|
github.com/coder/websocket v1.8.14
|
||||||
github.com/coreos/go-oidc/v3 v3.15.0
|
github.com/coreos/go-oidc/v3 v3.15.0
|
||||||
github.com/creack/pty v1.1.24
|
github.com/creack/pty v1.1.24
|
||||||
|
github.com/erikdubbelboer/gspt v0.0.0-20210805194459-ce36a5128377
|
||||||
github.com/fsnotify/fsnotify v1.9.0
|
github.com/fsnotify/fsnotify v1.9.0
|
||||||
github.com/gin-contrib/logger v1.2.6
|
github.com/gin-contrib/logger v1.2.6
|
||||||
github.com/gin-gonic/gin v1.10.1
|
github.com/gin-gonic/gin v1.10.1
|
||||||
github.com/go-co-op/gocron/v2 v2.16.5
|
github.com/go-co-op/gocron/v2 v2.16.6
|
||||||
github.com/google/flatbuffers v25.2.10+incompatible
|
|
||||||
github.com/google/uuid v1.6.0
|
github.com/google/uuid v1.6.0
|
||||||
github.com/guregu/null/v6 v6.0.0
|
github.com/guregu/null/v6 v6.0.0
|
||||||
github.com/gwatts/rootcerts v0.0.0-20250901182336-dc5ae18bd79f
|
github.com/gwatts/rootcerts v0.0.0-20250901182336-dc5ae18bd79f
|
||||||
|
github.com/insomniacslk/dhcp v0.0.0-20250919081422-f80a1952f48e
|
||||||
github.com/pion/logging v0.2.4
|
github.com/pion/logging v0.2.4
|
||||||
github.com/pion/mdns/v2 v2.0.7
|
github.com/pion/mdns/v2 v2.0.7
|
||||||
github.com/pion/webrtc/v4 v4.1.4
|
github.com/pion/webrtc/v4 v4.1.4
|
||||||
github.com/pojntfx/go-nbd v0.3.2
|
github.com/pojntfx/go-nbd v0.3.2
|
||||||
github.com/prometheus/client_golang v1.23.0
|
github.com/prometheus/client_golang v1.23.2
|
||||||
github.com/prometheus/common v0.66.0
|
github.com/prometheus/common v0.66.1
|
||||||
github.com/prometheus/procfs v0.17.0
|
github.com/prometheus/procfs v0.17.0
|
||||||
github.com/psanford/httpreadat v0.1.0
|
github.com/psanford/httpreadat v0.1.0
|
||||||
github.com/rs/xid v1.6.0
|
github.com/rs/xid v1.6.0
|
||||||
github.com/rs/zerolog v1.34.0
|
github.com/rs/zerolog v1.34.0
|
||||||
github.com/sourcegraph/tf-dag v0.2.2-0.20250131204052-3e8ff1477b4f
|
github.com/sourcegraph/tf-dag v0.2.2-0.20250131204052-3e8ff1477b4f
|
||||||
github.com/stretchr/testify v1.11.1
|
github.com/stretchr/testify v1.11.1
|
||||||
|
github.com/vearutop/statigz v1.5.0
|
||||||
github.com/vishvananda/netlink v1.3.1
|
github.com/vishvananda/netlink v1.3.1
|
||||||
go.bug.st/serial v1.6.4
|
go.bug.st/serial v1.6.4
|
||||||
golang.org/x/crypto v0.41.0
|
golang.org/x/crypto v0.42.0
|
||||||
golang.org/x/net v0.43.0
|
golang.org/x/net v0.44.0
|
||||||
golang.org/x/sys v0.35.0
|
golang.org/x/sys v0.36.0
|
||||||
)
|
)
|
||||||
|
|
||||||
replace github.com/pojntfx/go-nbd v0.3.2 => github.com/chemhack/go-nbd v0.0.0-20241006125820-59e45f5b1e7b
|
replace github.com/pojntfx/go-nbd v0.3.2 => github.com/chemhack/go-nbd v0.0.0-20241006125820-59e45f5b1e7b
|
||||||
|
|
||||||
require (
|
require (
|
||||||
github.com/beorn7/perks v1.0.1 // indirect
|
github.com/beorn7/perks v1.0.1 // indirect
|
||||||
github.com/bytedance/sonic v1.13.3 // indirect
|
github.com/bytedance/sonic v1.14.0 // indirect
|
||||||
github.com/bytedance/sonic/loader v0.2.4 // indirect
|
github.com/bytedance/sonic/loader v0.3.0 // indirect
|
||||||
github.com/cespare/xxhash/v2 v2.3.0 // indirect
|
github.com/cespare/xxhash/v2 v2.3.0 // indirect
|
||||||
github.com/cloudwego/base64x v0.1.5 // indirect
|
github.com/cloudwego/base64x v0.1.6 // indirect
|
||||||
github.com/creack/goselect v0.1.3 // indirect
|
github.com/creack/goselect v0.1.2 // indirect
|
||||||
github.com/davecgh/go-spew v1.1.1 // indirect
|
github.com/davecgh/go-spew v1.1.1 // indirect
|
||||||
github.com/gabriel-vasile/mimetype v1.4.9 // indirect
|
github.com/gabriel-vasile/mimetype v1.4.9 // indirect
|
||||||
github.com/gin-contrib/sse v1.1.0 // indirect
|
github.com/gin-contrib/sse v1.1.0 // indirect
|
||||||
github.com/go-jose/go-jose/v4 v4.1.0 // indirect
|
github.com/go-jose/go-jose/v4 v4.1.0 // indirect
|
||||||
github.com/go-playground/locales v0.14.1 // indirect
|
github.com/go-playground/locales v0.14.1 // indirect
|
||||||
github.com/go-playground/universal-translator v0.18.1 // indirect
|
github.com/go-playground/universal-translator v0.18.1 // indirect
|
||||||
github.com/go-playground/validator/v10 v10.26.0 // indirect
|
github.com/go-playground/validator/v10 v10.27.0 // indirect
|
||||||
github.com/goccy/go-json v0.10.5 // indirect
|
github.com/goccy/go-json v0.10.5 // indirect
|
||||||
github.com/grafana/regexp v0.0.0-20240518133315-a468a5bfb3bc // indirect
|
|
||||||
github.com/jonboulle/clockwork v0.5.0 // indirect
|
github.com/jonboulle/clockwork v0.5.0 // indirect
|
||||||
|
github.com/josharian/native v1.1.0 // indirect
|
||||||
github.com/json-iterator/go v1.1.12 // indirect
|
github.com/json-iterator/go v1.1.12 // indirect
|
||||||
github.com/klauspost/cpuid/v2 v2.2.10 // indirect
|
github.com/klauspost/cpuid/v2 v2.3.0 // indirect
|
||||||
github.com/leodido/go-urn v1.4.0 // indirect
|
github.com/leodido/go-urn v1.4.0 // indirect
|
||||||
github.com/mattn/go-colorable v0.1.14 // indirect
|
github.com/mattn/go-colorable v0.1.14 // indirect
|
||||||
github.com/mattn/go-isatty v0.0.20 // indirect
|
github.com/mattn/go-isatty v0.0.20 // indirect
|
||||||
|
github.com/mdlayher/ndp v1.1.0 // indirect
|
||||||
|
github.com/mdlayher/packet v1.1.2 // indirect
|
||||||
|
github.com/mdlayher/socket v0.4.1 // indirect
|
||||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
|
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
|
||||||
github.com/modern-go/reflect2 v1.0.2 // indirect
|
github.com/modern-go/reflect2 v1.0.2 // indirect
|
||||||
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
|
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
|
||||||
github.com/pelletier/go-toml/v2 v2.2.4 // indirect
|
github.com/pelletier/go-toml/v2 v2.2.4 // indirect
|
||||||
|
github.com/pierrec/lz4/v4 v4.1.14 // indirect
|
||||||
github.com/pilebones/go-udev v0.9.1 // indirect
|
github.com/pilebones/go-udev v0.9.1 // indirect
|
||||||
github.com/pion/datachannel v1.5.10 // indirect
|
github.com/pion/datachannel v1.5.10 // indirect
|
||||||
github.com/pion/dtls/v3 v3.0.7 // indirect
|
github.com/pion/dtls/v3 v3.0.7 // indirect
|
||||||
|
|
@ -82,14 +88,15 @@ require (
|
||||||
github.com/robfig/cron/v3 v3.0.1 // indirect
|
github.com/robfig/cron/v3 v3.0.1 // indirect
|
||||||
github.com/rogpeppe/go-internal v1.14.1 // indirect
|
github.com/rogpeppe/go-internal v1.14.1 // indirect
|
||||||
github.com/twitchyliquid64/golang-asm v0.15.1 // indirect
|
github.com/twitchyliquid64/golang-asm v0.15.1 // indirect
|
||||||
|
github.com/u-root/uio v0.0.0-20230220225925-ffce2a382923 // indirect
|
||||||
github.com/ugorji/go/codec v1.3.0 // indirect
|
github.com/ugorji/go/codec v1.3.0 // indirect
|
||||||
github.com/vearutop/statigz v1.5.0 // indirect
|
|
||||||
github.com/vishvananda/netns v0.0.5 // indirect
|
github.com/vishvananda/netns v0.0.5 // indirect
|
||||||
github.com/wlynxg/anet v0.0.5 // indirect
|
github.com/wlynxg/anet v0.0.5 // indirect
|
||||||
golang.org/x/arch v0.18.0 // indirect
|
go.yaml.in/yaml/v2 v2.4.2 // indirect
|
||||||
|
golang.org/x/arch v0.20.0 // indirect
|
||||||
golang.org/x/oauth2 v0.30.0 // indirect
|
golang.org/x/oauth2 v0.30.0 // indirect
|
||||||
golang.org/x/text v0.28.0 // indirect
|
golang.org/x/sync v0.17.0 // indirect
|
||||||
google.golang.org/protobuf v1.36.8 // indirect
|
golang.org/x/text v0.29.0 // indirect
|
||||||
gopkg.in/yaml.v2 v2.4.0 // indirect
|
google.golang.org/protobuf v1.36.9 // indirect
|
||||||
gopkg.in/yaml.v3 v3.0.1 // indirect
|
gopkg.in/yaml.v3 v3.0.1 // indirect
|
||||||
)
|
)
|
||||||
|
|
|
||||||
108
go.sum
108
go.sum
|
|
@ -1,33 +1,37 @@
|
||||||
github.com/Masterminds/semver/v3 v3.4.0 h1:Zog+i5UMtVoCU8oKka5P7i9q9HgrJeGzI9SA1Xbatp0=
|
github.com/Masterminds/semver/v3 v3.4.0 h1:Zog+i5UMtVoCU8oKka5P7i9q9HgrJeGzI9SA1Xbatp0=
|
||||||
github.com/Masterminds/semver/v3 v3.4.0/go.mod h1:4V+yj/TJE1HU9XfppCwVMZq3I84lprf4nC11bSS5beM=
|
github.com/Masterminds/semver/v3 v3.4.0/go.mod h1:4V+yj/TJE1HU9XfppCwVMZq3I84lprf4nC11bSS5beM=
|
||||||
|
github.com/andybalholm/brotli v1.1.1 h1:PR2pgnyFznKEugtsUo0xLdDop5SKXd5Qf5ysW+7XdTA=
|
||||||
|
github.com/andybalholm/brotli v1.1.1/go.mod h1:05ib4cKhjx3OQYUY22hTVd34Bc8upXjOLL2rKwwZBoA=
|
||||||
github.com/beevik/ntp v1.4.3 h1:PlbTvE5NNy4QHmA4Mg57n7mcFTmr1W1j3gcK7L1lqho=
|
github.com/beevik/ntp v1.4.3 h1:PlbTvE5NNy4QHmA4Mg57n7mcFTmr1W1j3gcK7L1lqho=
|
||||||
github.com/beevik/ntp v1.4.3/go.mod h1:Unr8Zg+2dRn7d8bHFuehIMSvvUYssHMxW3Q5Nx4RW5Q=
|
github.com/beevik/ntp v1.4.3/go.mod h1:Unr8Zg+2dRn7d8bHFuehIMSvvUYssHMxW3Q5Nx4RW5Q=
|
||||||
github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM=
|
github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM=
|
||||||
github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw=
|
github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw=
|
||||||
github.com/bytedance/sonic v1.13.3 h1:MS8gmaH16Gtirygw7jV91pDCN33NyMrPbN7qiYhEsF0=
|
github.com/bool64/dev v0.2.39 h1:kP8DnMGlWXhGYJEZE/J0l/gVBdbuhoPGL+MJG4QbofE=
|
||||||
github.com/bytedance/sonic v1.13.3/go.mod h1:o68xyaF9u2gvVBuGHPlUVCy+ZfmNNO5ETf1+KgkJhz4=
|
github.com/bool64/dev v0.2.39/go.mod h1:iJbh1y/HkunEPhgebWRNcs8wfGq7sjvJ6W5iabL8ACg=
|
||||||
github.com/bytedance/sonic/loader v0.1.1/go.mod h1:ncP89zfokxS5LZrJxl5z0UJcsk4M4yY2JpfqGeCtNLU=
|
github.com/bytedance/sonic v1.14.0 h1:/OfKt8HFw0kh2rj8N0F6C/qPGRESq0BbaNZgcNXXzQQ=
|
||||||
github.com/bytedance/sonic/loader v0.2.4 h1:ZWCw4stuXUsn1/+zQDqeE7JKP+QO47tz7QCNan80NzY=
|
github.com/bytedance/sonic v1.14.0/go.mod h1:WoEbx8WTcFJfzCe0hbmyTGrfjt8PzNEBdxlNUO24NhA=
|
||||||
github.com/bytedance/sonic/loader v0.2.4/go.mod h1:N8A3vUdtUebEY2/VQC0MyhYeKUFosQU6FxH2JmUe6VI=
|
github.com/bytedance/sonic/loader v0.3.0 h1:dskwH8edlzNMctoruo8FPTJDF3vLtDT0sXZwvZJyqeA=
|
||||||
|
github.com/bytedance/sonic/loader v0.3.0/go.mod h1:N8A3vUdtUebEY2/VQC0MyhYeKUFosQU6FxH2JmUe6VI=
|
||||||
github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs=
|
github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs=
|
||||||
github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs=
|
github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs=
|
||||||
github.com/chemhack/go-nbd v0.0.0-20241006125820-59e45f5b1e7b h1:dSbDgy72Y1sjLPWLv7vs0fMFuhMBMViiT9PJZiZWZNs=
|
github.com/chemhack/go-nbd v0.0.0-20241006125820-59e45f5b1e7b h1:dSbDgy72Y1sjLPWLv7vs0fMFuhMBMViiT9PJZiZWZNs=
|
||||||
github.com/chemhack/go-nbd v0.0.0-20241006125820-59e45f5b1e7b/go.mod h1:SehHnbi2e8NiSAKby42Itm8SIoS7b+wAprsfPH3qgYk=
|
github.com/chemhack/go-nbd v0.0.0-20241006125820-59e45f5b1e7b/go.mod h1:SehHnbi2e8NiSAKby42Itm8SIoS7b+wAprsfPH3qgYk=
|
||||||
github.com/cloudwego/base64x v0.1.5 h1:XPciSp1xaq2VCSt6lF0phncD4koWyULpl5bUxbfCyP4=
|
github.com/cloudwego/base64x v0.1.6 h1:t11wG9AECkCDk5fMSoxmufanudBtJ+/HemLstXDLI2M=
|
||||||
github.com/cloudwego/base64x v0.1.5/go.mod h1:0zlkT4Wn5C6NdauXdJRhSKRlJvmclQ1hhJgA0rcu/8w=
|
github.com/cloudwego/base64x v0.1.6/go.mod h1:OFcloc187FXDaYHvrNIjxSe8ncn0OOM8gEHfghB2IPU=
|
||||||
github.com/cloudwego/iasm v0.2.0/go.mod h1:8rXZaNYT2n95jn+zTI1sDr+IgcD2GVs0nlbbQPiEFhY=
|
github.com/coder/websocket v1.8.14 h1:9L0p0iKiNOibykf283eHkKUHHrpG7f65OE3BhhO7v9g=
|
||||||
github.com/coder/websocket v1.8.13 h1:f3QZdXy7uGVz+4uCJy2nTZyM0yTBj8yANEHhqlXZ9FE=
|
github.com/coder/websocket v1.8.14/go.mod h1:NX3SzP+inril6yawo5CQXx8+fk145lPDC6pumgx0mVg=
|
||||||
github.com/coder/websocket v1.8.13/go.mod h1:LNVeNrXQZfe5qhS9ALED3uA+l5pPqvwXg3CKoDBB2gs=
|
|
||||||
github.com/coreos/go-oidc/v3 v3.15.0 h1:R6Oz8Z4bqWR7VFQ+sPSvZPQv4x8M+sJkDO5ojgwlyAg=
|
github.com/coreos/go-oidc/v3 v3.15.0 h1:R6Oz8Z4bqWR7VFQ+sPSvZPQv4x8M+sJkDO5ojgwlyAg=
|
||||||
github.com/coreos/go-oidc/v3 v3.15.0/go.mod h1:HaZ3szPaZ0e4r6ebqvsLWlk2Tn+aejfmrfah6hnSYEU=
|
github.com/coreos/go-oidc/v3 v3.15.0/go.mod h1:HaZ3szPaZ0e4r6ebqvsLWlk2Tn+aejfmrfah6hnSYEU=
|
||||||
github.com/coreos/go-systemd/v22 v22.5.0/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSVTIJ3seZv2GcEnc=
|
github.com/coreos/go-systemd/v22 v22.5.0/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSVTIJ3seZv2GcEnc=
|
||||||
github.com/creack/goselect v0.1.3 h1:MaGNMclRo7P2Jl21hBpR1Cn33ITSbKP6E49RtfblLKc=
|
github.com/creack/goselect v0.1.2 h1:2DNy14+JPjRBgPzAd1thbQp4BSIihxcBf0IXhQXDRa0=
|
||||||
github.com/creack/goselect v0.1.3/go.mod h1:a/NhLweNvqIYMuxcMOuWY516Cimucms3DglDzQP3hKY=
|
github.com/creack/goselect v0.1.2/go.mod h1:a/NhLweNvqIYMuxcMOuWY516Cimucms3DglDzQP3hKY=
|
||||||
github.com/creack/pty v1.1.24 h1:bJrF4RRfyJnbTJqzRLHzcGaZK1NeM5kTC9jGgovnR1s=
|
github.com/creack/pty v1.1.24 h1:bJrF4RRfyJnbTJqzRLHzcGaZK1NeM5kTC9jGgovnR1s=
|
||||||
github.com/creack/pty v1.1.24/go.mod h1:08sCNb52WyoAwi2QDyzUCTgcvVFhUzewun7wtTfvcwE=
|
github.com/creack/pty v1.1.24/go.mod h1:08sCNb52WyoAwi2QDyzUCTgcvVFhUzewun7wtTfvcwE=
|
||||||
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||||
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
|
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
|
||||||
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||||
|
github.com/erikdubbelboer/gspt v0.0.0-20210805194459-ce36a5128377 h1:gT+RM6gdTIAzMT7HUvmT5mL8SyG8Wx7iS3+L0V34Km4=
|
||||||
|
github.com/erikdubbelboer/gspt v0.0.0-20210805194459-ce36a5128377/go.mod h1:v6o7m/E9bfvm79dE1iFiF+3T7zLBnrjYjkWMa1J+Hv0=
|
||||||
github.com/fsnotify/fsnotify v1.9.0 h1:2Ml+OJNzbYCTzsxtv8vKSFD9PbJjmhYF14k/jKC7S9k=
|
github.com/fsnotify/fsnotify v1.9.0 h1:2Ml+OJNzbYCTzsxtv8vKSFD9PbJjmhYF14k/jKC7S9k=
|
||||||
github.com/fsnotify/fsnotify v1.9.0/go.mod h1:8jBTzvmWwFyi3Pb8djgCCO5IBqzKJ/Jwo8TRcHyHii0=
|
github.com/fsnotify/fsnotify v1.9.0/go.mod h1:8jBTzvmWwFyi3Pb8djgCCO5IBqzKJ/Jwo8TRcHyHii0=
|
||||||
github.com/gabriel-vasile/mimetype v1.4.9 h1:5k+WDwEsD9eTLL8Tz3L0VnmVh9QxGjRmjBvAG7U/oYY=
|
github.com/gabriel-vasile/mimetype v1.4.9 h1:5k+WDwEsD9eTLL8Tz3L0VnmVh9QxGjRmjBvAG7U/oYY=
|
||||||
|
|
@ -38,8 +42,8 @@ github.com/gin-contrib/sse v1.1.0 h1:n0w2GMuUpWDVp7qSpvze6fAu9iRxJY4Hmj6AmBOU05w
|
||||||
github.com/gin-contrib/sse v1.1.0/go.mod h1:hxRZ5gVpWMT7Z0B0gSNYqqsSCNIJMjzvm6fqCz9vjwM=
|
github.com/gin-contrib/sse v1.1.0/go.mod h1:hxRZ5gVpWMT7Z0B0gSNYqqsSCNIJMjzvm6fqCz9vjwM=
|
||||||
github.com/gin-gonic/gin v1.10.1 h1:T0ujvqyCSqRopADpgPgiTT63DUQVSfojyME59Ei63pQ=
|
github.com/gin-gonic/gin v1.10.1 h1:T0ujvqyCSqRopADpgPgiTT63DUQVSfojyME59Ei63pQ=
|
||||||
github.com/gin-gonic/gin v1.10.1/go.mod h1:4PMNQiOhvDRa013RKVbsiNwoyezlm2rm0uX/T7kzp5Y=
|
github.com/gin-gonic/gin v1.10.1/go.mod h1:4PMNQiOhvDRa013RKVbsiNwoyezlm2rm0uX/T7kzp5Y=
|
||||||
github.com/go-co-op/gocron/v2 v2.16.5 h1:j228Jxk7bb9CF8LKR3gS+bK3rcjRUINjlVI+ZMp26Ss=
|
github.com/go-co-op/gocron/v2 v2.16.6 h1:zI2Ya9sqvuLcgqJgV79LwoJXM8h20Z/drtB7ATbpRWo=
|
||||||
github.com/go-co-op/gocron/v2 v2.16.5/go.mod h1:zAfC/GFQ668qHxOVl/D68Jh5Ce7sDqX6TJnSQyRkRBc=
|
github.com/go-co-op/gocron/v2 v2.16.6/go.mod h1:zAfC/GFQ668qHxOVl/D68Jh5Ce7sDqX6TJnSQyRkRBc=
|
||||||
github.com/go-jose/go-jose/v4 v4.1.0 h1:cYSYxd3pw5zd2FSXk2vGdn9igQU2PS8MuxrCOCl0FdY=
|
github.com/go-jose/go-jose/v4 v4.1.0 h1:cYSYxd3pw5zd2FSXk2vGdn9igQU2PS8MuxrCOCl0FdY=
|
||||||
github.com/go-jose/go-jose/v4 v4.1.0/go.mod h1:GG/vqmYm3Von2nYiB2vGTXzdoNKE5tix5tuc6iAd+sw=
|
github.com/go-jose/go-jose/v4 v4.1.0/go.mod h1:GG/vqmYm3Von2nYiB2vGTXzdoNKE5tix5tuc6iAd+sw=
|
||||||
github.com/go-playground/assert/v2 v2.2.0 h1:JvknZsQTYeFEAhQwI4qEt9cyV5ONwRHC+lYKSsYSR8s=
|
github.com/go-playground/assert/v2 v2.2.0 h1:JvknZsQTYeFEAhQwI4qEt9cyV5ONwRHC+lYKSsYSR8s=
|
||||||
|
|
@ -48,34 +52,35 @@ github.com/go-playground/locales v0.14.1 h1:EWaQ/wswjilfKLTECiXz7Rh+3BjFhfDFKv/o
|
||||||
github.com/go-playground/locales v0.14.1/go.mod h1:hxrqLVvrK65+Rwrd5Fc6F2O76J/NuW9t0sjnWqG1slY=
|
github.com/go-playground/locales v0.14.1/go.mod h1:hxrqLVvrK65+Rwrd5Fc6F2O76J/NuW9t0sjnWqG1slY=
|
||||||
github.com/go-playground/universal-translator v0.18.1 h1:Bcnm0ZwsGyWbCzImXv+pAJnYK9S473LQFuzCbDbfSFY=
|
github.com/go-playground/universal-translator v0.18.1 h1:Bcnm0ZwsGyWbCzImXv+pAJnYK9S473LQFuzCbDbfSFY=
|
||||||
github.com/go-playground/universal-translator v0.18.1/go.mod h1:xekY+UJKNuX9WP91TpwSH2VMlDf28Uj24BCp08ZFTUY=
|
github.com/go-playground/universal-translator v0.18.1/go.mod h1:xekY+UJKNuX9WP91TpwSH2VMlDf28Uj24BCp08ZFTUY=
|
||||||
github.com/go-playground/validator/v10 v10.26.0 h1:SP05Nqhjcvz81uJaRfEV0YBSSSGMc/iMaVtFbr3Sw2k=
|
github.com/go-playground/validator/v10 v10.27.0 h1:w8+XrWVMhGkxOaaowyKH35gFydVHOvC0/uWoy2Fzwn4=
|
||||||
github.com/go-playground/validator/v10 v10.26.0/go.mod h1:I5QpIEbmr8On7W0TktmJAumgzX4CA1XNl4ZmDuVHKKo=
|
github.com/go-playground/validator/v10 v10.27.0/go.mod h1:I5QpIEbmr8On7W0TktmJAumgzX4CA1XNl4ZmDuVHKKo=
|
||||||
github.com/goccy/go-json v0.10.5 h1:Fq85nIqj+gXn/S5ahsiTlK3TmC85qgirsdTP/+DeaC4=
|
github.com/goccy/go-json v0.10.5 h1:Fq85nIqj+gXn/S5ahsiTlK3TmC85qgirsdTP/+DeaC4=
|
||||||
github.com/goccy/go-json v0.10.5/go.mod h1:oq7eo15ShAhp70Anwd5lgX2pLfOS3QCiwU/PULtXL6M=
|
github.com/goccy/go-json v0.10.5/go.mod h1:oq7eo15ShAhp70Anwd5lgX2pLfOS3QCiwU/PULtXL6M=
|
||||||
github.com/godbus/dbus/v5 v5.0.4/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA=
|
github.com/godbus/dbus/v5 v5.0.4/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA=
|
||||||
github.com/google/flatbuffers v25.2.10+incompatible h1:F3vclr7C3HpB1k9mxCGRMXq6FdUalZ6H/pNX4FP1v0Q=
|
|
||||||
github.com/google/flatbuffers v25.2.10+incompatible/go.mod h1:1AeVuKshWv4vARoZatz6mlQ0JxURH0Kv5+zNeJKJCa8=
|
|
||||||
github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8=
|
github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8=
|
||||||
github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU=
|
github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU=
|
||||||
github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
|
github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
|
||||||
github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0=
|
github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0=
|
||||||
github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
|
github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
|
||||||
github.com/grafana/regexp v0.0.0-20240518133315-a468a5bfb3bc h1:GN2Lv3MGO7AS6PrRoT6yV5+wkrOpcszoIsO4+4ds248=
|
|
||||||
github.com/grafana/regexp v0.0.0-20240518133315-a468a5bfb3bc/go.mod h1:+JKpmjMGhpgPL+rXZ5nsZieVzvarn86asRlBg4uNGnk=
|
|
||||||
github.com/guregu/null/v6 v6.0.0 h1:N14VRS+4di81i1PXRiprbQJ9EM9gqBa0+KVMeS/QSjQ=
|
github.com/guregu/null/v6 v6.0.0 h1:N14VRS+4di81i1PXRiprbQJ9EM9gqBa0+KVMeS/QSjQ=
|
||||||
github.com/guregu/null/v6 v6.0.0/go.mod h1:hrMIhIfrOZeLPZhROSn149tpw2gHkidAqxoXNyeX3iQ=
|
github.com/guregu/null/v6 v6.0.0/go.mod h1:hrMIhIfrOZeLPZhROSn149tpw2gHkidAqxoXNyeX3iQ=
|
||||||
github.com/gwatts/rootcerts v0.0.0-20250901182336-dc5ae18bd79f h1:08t2PbrkDgW2+mwCQ3jhKUBrCM9Bc9SeH5j2Dst3B+0=
|
github.com/gwatts/rootcerts v0.0.0-20250901182336-dc5ae18bd79f h1:08t2PbrkDgW2+mwCQ3jhKUBrCM9Bc9SeH5j2Dst3B+0=
|
||||||
github.com/gwatts/rootcerts v0.0.0-20250901182336-dc5ae18bd79f/go.mod h1:5Kt9XkWvkGi2OHOq0QsGxebHmhCcqJ8KCbNg/a6+n+g=
|
github.com/gwatts/rootcerts v0.0.0-20250901182336-dc5ae18bd79f/go.mod h1:5Kt9XkWvkGi2OHOq0QsGxebHmhCcqJ8KCbNg/a6+n+g=
|
||||||
|
github.com/hugelgupf/socketpair v0.0.0-20190730060125-05d35a94e714 h1:/jC7qQFrv8CrSJVmaolDVOxTfS9kc36uB6H40kdbQq8=
|
||||||
|
github.com/hugelgupf/socketpair v0.0.0-20190730060125-05d35a94e714/go.mod h1:2Goc3h8EklBH5mspfHFxBnEoURQCGzQQH1ga9Myjvis=
|
||||||
|
github.com/insomniacslk/dhcp v0.0.0-20250919081422-f80a1952f48e h1:nu5z6Kg+gMNW6tdqnVjg/QEJ8Nw71IJQqOtWj00XHEU=
|
||||||
|
github.com/insomniacslk/dhcp v0.0.0-20250919081422-f80a1952f48e/go.mod h1:qfvBmyDNp+/liLEYWRvqny/PEz9hGe2Dz833eXILSmo=
|
||||||
github.com/jonboulle/clockwork v0.5.0 h1:Hyh9A8u51kptdkR+cqRpT1EebBwTn1oK9YfGYbdFz6I=
|
github.com/jonboulle/clockwork v0.5.0 h1:Hyh9A8u51kptdkR+cqRpT1EebBwTn1oK9YfGYbdFz6I=
|
||||||
github.com/jonboulle/clockwork v0.5.0/go.mod h1:3mZlmanh0g2NDKO5TWZVJAfofYk64M7XN3SzBPjZF60=
|
github.com/jonboulle/clockwork v0.5.0/go.mod h1:3mZlmanh0g2NDKO5TWZVJAfofYk64M7XN3SzBPjZF60=
|
||||||
|
github.com/josharian/native v1.0.1-0.20221213033349-c1e37c09b531/go.mod h1:7X/raswPFr05uY3HiLlYeyQntB6OO7E/d2Cu7qoaN2w=
|
||||||
|
github.com/josharian/native v1.1.0 h1:uuaP0hAbW7Y4l0ZRQ6C9zfb7Mg1mbFKry/xzDAfmtLA=
|
||||||
|
github.com/josharian/native v1.1.0/go.mod h1:7X/raswPFr05uY3HiLlYeyQntB6OO7E/d2Cu7qoaN2w=
|
||||||
github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM=
|
github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM=
|
||||||
github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo=
|
github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo=
|
||||||
github.com/klauspost/compress v1.18.0 h1:c/Cqfb0r+Yi+JtIEq73FWXVkRonBlf0CRNYc8Zttxdo=
|
github.com/klauspost/compress v1.18.0 h1:c/Cqfb0r+Yi+JtIEq73FWXVkRonBlf0CRNYc8Zttxdo=
|
||||||
github.com/klauspost/compress v1.18.0/go.mod h1:2Pp+KzxcywXVXMr50+X0Q/Lsb43OQHYWRCY2AiWywWQ=
|
github.com/klauspost/compress v1.18.0/go.mod h1:2Pp+KzxcywXVXMr50+X0Q/Lsb43OQHYWRCY2AiWywWQ=
|
||||||
github.com/klauspost/cpuid/v2 v2.0.9/go.mod h1:FInQzS24/EEf25PyTYn52gqo7WaD8xa0213Md/qVLRg=
|
github.com/klauspost/cpuid/v2 v2.3.0 h1:S4CRMLnYUhGeDFDqkGriYKdfoFlDnMtqTiI/sFzhA9Y=
|
||||||
github.com/klauspost/cpuid/v2 v2.2.10 h1:tBs3QSyvjDyFTq3uoc/9xFpCuOsJQFNPiAhYdw2skhE=
|
github.com/klauspost/cpuid/v2 v2.3.0/go.mod h1:hqwkgyIinND0mEev00jJYCxPNVRVXFQeu1XKlok6oO0=
|
||||||
github.com/klauspost/cpuid/v2 v2.2.10/go.mod h1:hqwkgyIinND0mEev00jJYCxPNVRVXFQeu1XKlok6oO0=
|
|
||||||
github.com/knz/go-libedit v1.10.1/go.mod h1:MZTVkCWyz0oBc7JOWP3wNAzd002ZbM/5hgShxwh4x8M=
|
|
||||||
github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI=
|
github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI=
|
||||||
github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
|
github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
|
||||||
github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=
|
github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=
|
||||||
|
|
@ -94,6 +99,12 @@ github.com/mattn/go-isatty v0.0.16/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/
|
||||||
github.com/mattn/go-isatty v0.0.19/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y=
|
github.com/mattn/go-isatty v0.0.19/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y=
|
||||||
github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY=
|
github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY=
|
||||||
github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y=
|
github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y=
|
||||||
|
github.com/mdlayher/ndp v1.1.0 h1:QylGKGVtH60sKZUE88+IW5ila1Z/M9/OXhWdsVKuscs=
|
||||||
|
github.com/mdlayher/ndp v1.1.0/go.mod h1:FmgESgemgjl38vuOIyAHWUUL6vQKA/pQNkvXdWsdQFM=
|
||||||
|
github.com/mdlayher/packet v1.1.2 h1:3Up1NG6LZrsgDVn6X4L9Ge/iyRyxFEFD9o6Pr3Q1nQY=
|
||||||
|
github.com/mdlayher/packet v1.1.2/go.mod h1:GEu1+n9sG5VtiRE4SydOmX5GTwyyYlteZiFU+x0kew4=
|
||||||
|
github.com/mdlayher/socket v0.4.1 h1:eM9y2/jlbs1M615oshPQOHZzj6R6wMT7bX5NPiQvn2U=
|
||||||
|
github.com/mdlayher/socket v0.4.1/go.mod h1:cAqeGjoufqdxWkD7DkpyS+wcefOtmu5OQ8KuoJGIReA=
|
||||||
github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
|
github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
|
||||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg=
|
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg=
|
||||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
|
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
|
||||||
|
|
@ -103,6 +114,8 @@ github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq
|
||||||
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ=
|
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ=
|
||||||
github.com/pelletier/go-toml/v2 v2.2.4 h1:mye9XuhQ6gvn5h28+VilKrrPoQVanw5PMw/TB0t5Ec4=
|
github.com/pelletier/go-toml/v2 v2.2.4 h1:mye9XuhQ6gvn5h28+VilKrrPoQVanw5PMw/TB0t5Ec4=
|
||||||
github.com/pelletier/go-toml/v2 v2.2.4/go.mod h1:2gIqNv+qfxSVS7cM2xJQKtLSTLUE9V8t9Stt+h56mCY=
|
github.com/pelletier/go-toml/v2 v2.2.4/go.mod h1:2gIqNv+qfxSVS7cM2xJQKtLSTLUE9V8t9Stt+h56mCY=
|
||||||
|
github.com/pierrec/lz4/v4 v4.1.14 h1:+fL8AQEZtz/ijeNnpduH0bROTu0O3NZAlPjQxGn8LwE=
|
||||||
|
github.com/pierrec/lz4/v4 v4.1.14/go.mod h1:gZWDp/Ze/IJXGXf23ltt2EXimqmTUXEy0GFuRQyBid4=
|
||||||
github.com/pilebones/go-udev v0.9.1 h1:uN72M1C1fgzhsVmBGEM8w9RD1JY4iVsPZpr+Z6rb3O8=
|
github.com/pilebones/go-udev v0.9.1 h1:uN72M1C1fgzhsVmBGEM8w9RD1JY4iVsPZpr+Z6rb3O8=
|
||||||
github.com/pilebones/go-udev v0.9.1/go.mod h1:Bgcl07crebF3JSeS4+nuaRvhWFdCeFoBhXXeAp93XNo=
|
github.com/pilebones/go-udev v0.9.1/go.mod h1:Bgcl07crebF3JSeS4+nuaRvhWFdCeFoBhXXeAp93XNo=
|
||||||
github.com/pion/datachannel v1.5.10 h1:ly0Q26K1i6ZkGf42W7D4hQYR90pZwzFOjTq5AuCKk4o=
|
github.com/pion/datachannel v1.5.10 h1:ly0Q26K1i6ZkGf42W7D4hQYR90pZwzFOjTq5AuCKk4o=
|
||||||
|
|
@ -140,12 +153,12 @@ github.com/pion/webrtc/v4 v4.1.4/go.mod h1:Oab9npu1iZtQRMic3K3toYq5zFPvToe/QBw7d
|
||||||
github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
|
github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
|
||||||
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
|
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
|
||||||
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
||||||
github.com/prometheus/client_golang v1.23.0 h1:ust4zpdl9r4trLY/gSjlm07PuiBq2ynaXXlptpfy8Uc=
|
github.com/prometheus/client_golang v1.23.2 h1:Je96obch5RDVy3FDMndoUsjAhG5Edi49h0RJWRi/o0o=
|
||||||
github.com/prometheus/client_golang v1.23.0/go.mod h1:i/o0R9ByOnHX0McrTMTyhYvKE4haaf2mW08I+jGAjEE=
|
github.com/prometheus/client_golang v1.23.2/go.mod h1:Tb1a6LWHB3/SPIzCoaDXI4I8UHKeFTEQ1YCr+0Gyqmg=
|
||||||
github.com/prometheus/client_model v0.6.2 h1:oBsgwpGs7iVziMvrGhE53c/GrLUsZdHnqNwqPLxwZyk=
|
github.com/prometheus/client_model v0.6.2 h1:oBsgwpGs7iVziMvrGhE53c/GrLUsZdHnqNwqPLxwZyk=
|
||||||
github.com/prometheus/client_model v0.6.2/go.mod h1:y3m2F6Gdpfy6Ut/GBsUqTWZqCUvMVzSfMLjcu6wAwpE=
|
github.com/prometheus/client_model v0.6.2/go.mod h1:y3m2F6Gdpfy6Ut/GBsUqTWZqCUvMVzSfMLjcu6wAwpE=
|
||||||
github.com/prometheus/common v0.66.0 h1:K/rJPHrG3+AoQs50r2+0t7zMnMzek2Vbv31OFVsMeVY=
|
github.com/prometheus/common v0.66.1 h1:h5E0h5/Y8niHc5DlaLlWLArTQI7tMrsfQjHV+d9ZoGs=
|
||||||
github.com/prometheus/common v0.66.0/go.mod h1:Ux6NtV1B4LatamKE63tJBntoxD++xmtI/lK0VtEplN4=
|
github.com/prometheus/common v0.66.1/go.mod h1:gcaUsgf3KfRSwHY4dIMXLPV0K/Wg1oZ8+SbZk/HH/dA=
|
||||||
github.com/prometheus/procfs v0.17.0 h1:FuLQ+05u4ZI+SS/w9+BWEM2TXiHKsUQ9TADiRH7DuK0=
|
github.com/prometheus/procfs v0.17.0 h1:FuLQ+05u4ZI+SS/w9+BWEM2TXiHKsUQ9TADiRH7DuK0=
|
||||||
github.com/prometheus/procfs v0.17.0/go.mod h1:oPQLaDAMRbA+u8H5Pbfq+dl3VDAvHxMUOVhe0wYB2zw=
|
github.com/prometheus/procfs v0.17.0/go.mod h1:oPQLaDAMRbA+u8H5Pbfq+dl3VDAvHxMUOVhe0wYB2zw=
|
||||||
github.com/psanford/httpreadat v0.1.0 h1:VleW1HS2zO7/4c7c7zNl33fO6oYACSagjJIyMIwZLUE=
|
github.com/psanford/httpreadat v0.1.0 h1:VleW1HS2zO7/4c7c7zNl33fO6oYACSagjJIyMIwZLUE=
|
||||||
|
|
@ -163,8 +176,9 @@ github.com/sourcegraph/tf-dag v0.2.2-0.20250131204052-3e8ff1477b4f/go.mod h1:pzr
|
||||||
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
|
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
|
||||||
github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw=
|
github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw=
|
||||||
github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo=
|
github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo=
|
||||||
|
github.com/stretchr/objx v0.5.2 h1:xuMeJ0Sdp5ZMRXx/aWO6RZxdr3beISkG5/G/aIRr3pY=
|
||||||
|
github.com/stretchr/objx v0.5.2/go.mod h1:FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/8L+MA=
|
||||||
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
|
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
|
||||||
github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
|
|
||||||
github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
|
github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
|
||||||
github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU=
|
github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU=
|
||||||
github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4=
|
github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4=
|
||||||
|
|
@ -172,6 +186,8 @@ github.com/stretchr/testify v1.11.1 h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu
|
||||||
github.com/stretchr/testify v1.11.1/go.mod h1:wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD981Nm4B6U=
|
github.com/stretchr/testify v1.11.1/go.mod h1:wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD981Nm4B6U=
|
||||||
github.com/twitchyliquid64/golang-asm v0.15.1 h1:SU5vSMR7hnwNxj24w34ZyCi/FmDZTkS4MhqMhdFk5YI=
|
github.com/twitchyliquid64/golang-asm v0.15.1 h1:SU5vSMR7hnwNxj24w34ZyCi/FmDZTkS4MhqMhdFk5YI=
|
||||||
github.com/twitchyliquid64/golang-asm v0.15.1/go.mod h1:a1lVb/DtPvCB8fslRZhAngC2+aY1QWCk3Cedj/Gdt08=
|
github.com/twitchyliquid64/golang-asm v0.15.1/go.mod h1:a1lVb/DtPvCB8fslRZhAngC2+aY1QWCk3Cedj/Gdt08=
|
||||||
|
github.com/u-root/uio v0.0.0-20230220225925-ffce2a382923 h1:tHNk7XK9GkmKUR6Gh8gVBKXc2MVSZ4G/NnWLtzw4gNA=
|
||||||
|
github.com/u-root/uio v0.0.0-20230220225925-ffce2a382923/go.mod h1:eLL9Nub3yfAho7qB0MzZizFhTU2QkLeoVsWdHtDW264=
|
||||||
github.com/ugorji/go/codec v1.3.0 h1:Qd2W2sQawAfG8XSvzwhBeoGq71zXOC/Q1E9y/wUcsUA=
|
github.com/ugorji/go/codec v1.3.0 h1:Qd2W2sQawAfG8XSvzwhBeoGq71zXOC/Q1E9y/wUcsUA=
|
||||||
github.com/ugorji/go/codec v1.3.0/go.mod h1:pRBVtBSKl77K30Bv8R2P+cLSGaTtex6fsA2Wjqmfxj4=
|
github.com/ugorji/go/codec v1.3.0/go.mod h1:pRBVtBSKl77K30Bv8R2P+cLSGaTtex6fsA2Wjqmfxj4=
|
||||||
github.com/vearutop/statigz v1.5.0 h1:FuWwZiT82yBw4xbWdWIawiP2XFTyEPhIo8upRxiKLqk=
|
github.com/vearutop/statigz v1.5.0 h1:FuWwZiT82yBw4xbWdWIawiP2XFTyEPhIo8upRxiKLqk=
|
||||||
|
|
@ -186,31 +202,35 @@ go.bug.st/serial v1.6.4 h1:7FmqNPgVp3pu2Jz5PoPtbZ9jJO5gnEnZIvnI1lzve8A=
|
||||||
go.bug.st/serial v1.6.4/go.mod h1:nofMJxTeNVny/m6+KaafC6vJGj3miwQZ6vW4BZUGJPI=
|
go.bug.st/serial v1.6.4/go.mod h1:nofMJxTeNVny/m6+KaafC6vJGj3miwQZ6vW4BZUGJPI=
|
||||||
go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto=
|
go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto=
|
||||||
go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE=
|
go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE=
|
||||||
golang.org/x/arch v0.18.0 h1:WN9poc33zL4AzGxqf8VtpKUnGvMi8O9lhNyBMF/85qc=
|
go.yaml.in/yaml/v2 v2.4.2 h1:DzmwEr2rDGHl7lsFgAHxmNz/1NlQ7xLIrlN2h5d1eGI=
|
||||||
golang.org/x/arch v0.18.0/go.mod h1:bdwinDaKcfZUGpH09BB7ZmOfhalA8lQdzl62l8gGWsk=
|
go.yaml.in/yaml/v2 v2.4.2/go.mod h1:081UH+NErpNdqlCXm3TtEran0rJZGxAYx9hb/ELlsPU=
|
||||||
golang.org/x/crypto v0.41.0 h1:WKYxWedPGCTVVl5+WHSSrOBT0O8lx32+zxmHxijgXp4=
|
golang.org/x/arch v0.20.0 h1:dx1zTU0MAE98U+TQ8BLl7XsJbgze2WnNKF/8tGp/Q6c=
|
||||||
golang.org/x/crypto v0.41.0/go.mod h1:pO5AFd7FA68rFak7rOAGVuygIISepHftHnr8dr6+sUc=
|
golang.org/x/arch v0.20.0/go.mod h1:bdwinDaKcfZUGpH09BB7ZmOfhalA8lQdzl62l8gGWsk=
|
||||||
golang.org/x/net v0.43.0 h1:lat02VYK2j4aLzMzecihNvTlJNQUq316m2Mr9rnM6YE=
|
golang.org/x/crypto v0.42.0 h1:chiH31gIWm57EkTXpwnqf8qeuMUi0yekh6mT2AvFlqI=
|
||||||
golang.org/x/net v0.43.0/go.mod h1:vhO1fvI4dGsIjh73sWfUVjj3N7CA9WkKJNQm2svM6Jg=
|
golang.org/x/crypto v0.42.0/go.mod h1:4+rDnOTJhQCx2q7/j6rAN5XDw8kPjeaXEUR2eL94ix8=
|
||||||
|
golang.org/x/net v0.44.0 h1:evd8IRDyfNBMBTTY5XRF1vaZlD+EmWx6x8PkhR04H/I=
|
||||||
|
golang.org/x/net v0.44.0/go.mod h1:ECOoLqd5U3Lhyeyo/QDCEVQ4sNgYsqvCZ722XogGieY=
|
||||||
golang.org/x/oauth2 v0.30.0 h1:dnDm7JmhM45NNpd8FDDeLhK6FwqbOf4MLCM9zb1BOHI=
|
golang.org/x/oauth2 v0.30.0 h1:dnDm7JmhM45NNpd8FDDeLhK6FwqbOf4MLCM9zb1BOHI=
|
||||||
golang.org/x/oauth2 v0.30.0/go.mod h1:B++QgG3ZKulg6sRPGD/mqlHQs5rB3Ml9erfeDY7xKlU=
|
golang.org/x/oauth2 v0.30.0/go.mod h1:B++QgG3ZKulg6sRPGD/mqlHQs5rB3Ml9erfeDY7xKlU=
|
||||||
|
golang.org/x/sync v0.17.0 h1:l60nONMj9l5drqw6jlhIELNv9I0A4OFgRsG9k2oT9Ug=
|
||||||
|
golang.org/x/sync v0.17.0/go.mod h1:9KTHXmSnoGruLpwFjVSX0lNNA75CykiMECbovNTZqGI=
|
||||||
|
golang.org/x/sys v0.0.0-20220622161953-175b2fd9d664/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||||
golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||||
golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||||
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||||
golang.org/x/sys v0.10.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
golang.org/x/sys v0.10.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||||
golang.org/x/sys v0.12.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
golang.org/x/sys v0.12.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||||
golang.org/x/sys v0.35.0 h1:vz1N37gP5bs89s7He8XuIYXpyY0+QlsKmzipCbUtyxI=
|
golang.org/x/sys v0.36.0 h1:KVRy2GtZBrk1cBYA7MKu5bEZFxQk4NIDV6RLVcC8o0k=
|
||||||
golang.org/x/sys v0.35.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k=
|
golang.org/x/sys v0.36.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
|
||||||
golang.org/x/text v0.28.0 h1:rhazDwis8INMIwQ4tpjLDzUhx6RlXqZNPEM0huQojng=
|
golang.org/x/term v0.35.0 h1:bZBVKBudEyhRcajGcNc3jIfWPqV4y/Kt2XcoigOWtDQ=
|
||||||
golang.org/x/text v0.28.0/go.mod h1:U8nCwOR8jO/marOQ0QbDiOngZVEBB7MAiitBuMjXiNU=
|
golang.org/x/term v0.35.0/go.mod h1:TPGtkTLesOwf2DE8CgVYiZinHAOuy5AYUYT1lENIZnA=
|
||||||
google.golang.org/protobuf v1.36.8 h1:xHScyCOEuuwZEc6UtSOvPbAT4zRh0xcNRYekJwfqyMc=
|
golang.org/x/text v0.29.0 h1:1neNs90w9YzJ9BocxfsQNHKuAT4pkghyXc4nhZ6sJvk=
|
||||||
google.golang.org/protobuf v1.36.8/go.mod h1:fuxRtAxBytpl4zzqUh6/eyUujkJdNiuEkXntxiD/uRU=
|
golang.org/x/text v0.29.0/go.mod h1:7MhJOA9CD2qZyOKYazxdYMF85OwPdEr9jTtBpO7ydH4=
|
||||||
|
google.golang.org/protobuf v1.36.9 h1:w2gp2mA27hUeUzj9Ex9FBjsBm40zfaDtEWow293U7Iw=
|
||||||
|
google.golang.org/protobuf v1.36.9/go.mod h1:fuxRtAxBytpl4zzqUh6/eyUujkJdNiuEkXntxiD/uRU=
|
||||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||||
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk=
|
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk=
|
||||||
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=
|
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=
|
||||||
gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY=
|
|
||||||
gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ=
|
|
||||||
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
||||||
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
|
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
|
||||||
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
||||||
nullprogram.com/x/optparse v1.0.0/go.mod h1:KdyPE+Igbe0jQUrVfMqDMeJQIJZEuyV7pjYmp6pbG50=
|
|
||||||
|
|
|
||||||
32
hw.go
32
hw.go
|
|
@ -3,6 +3,7 @@ package kvm
|
||||||
import (
|
import (
|
||||||
"fmt"
|
"fmt"
|
||||||
"os"
|
"os"
|
||||||
|
"os/exec"
|
||||||
"regexp"
|
"regexp"
|
||||||
"strings"
|
"strings"
|
||||||
"sync"
|
"sync"
|
||||||
|
|
@ -36,6 +37,37 @@ func readOtpEntropy() ([]byte, error) { //nolint:unused
|
||||||
return content[0x17:0x1C], nil
|
return content[0x17:0x1C], nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func hwReboot(force bool, postRebootAction *PostRebootAction, delay time.Duration) error {
|
||||||
|
logger.Info().Msgf("Reboot requested, rebooting in %d seconds...", delay)
|
||||||
|
|
||||||
|
writeJSONRPCEvent("willReboot", postRebootAction, currentSession)
|
||||||
|
time.Sleep(1 * time.Second) // Wait for the JSONRPCEvent to be sent
|
||||||
|
|
||||||
|
nativeInstance.SwitchToScreenIfDifferent("rebooting_screen")
|
||||||
|
time.Sleep(delay - (1 * time.Second)) // wait requested extra settle time
|
||||||
|
|
||||||
|
args := []string{}
|
||||||
|
if force {
|
||||||
|
args = append(args, "-f")
|
||||||
|
}
|
||||||
|
|
||||||
|
cmd := exec.Command("reboot", args...)
|
||||||
|
err := cmd.Start()
|
||||||
|
if err != nil {
|
||||||
|
logger.Error().Err(err).Msg("failed to reboot")
|
||||||
|
switchToMainScreen()
|
||||||
|
return fmt.Errorf("failed to reboot: %w", err)
|
||||||
|
}
|
||||||
|
|
||||||
|
// If the reboot command is successful, exit the program after 5 seconds
|
||||||
|
go func() {
|
||||||
|
time.Sleep(5 * time.Second)
|
||||||
|
os.Exit(0)
|
||||||
|
}()
|
||||||
|
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
var deviceID string
|
var deviceID string
|
||||||
var deviceIDOnce sync.Once
|
var deviceIDOnce sync.Once
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -16,22 +16,22 @@ import (
|
||||||
type FieldConfig struct {
|
type FieldConfig struct {
|
||||||
Name string
|
Name string
|
||||||
Required bool
|
Required bool
|
||||||
RequiredIf map[string]any
|
RequiredIf map[string]interface{}
|
||||||
OneOf []string
|
OneOf []string
|
||||||
ValidateTypes []string
|
ValidateTypes []string
|
||||||
Defaults any
|
Defaults interface{}
|
||||||
IsEmpty bool
|
IsEmpty bool
|
||||||
CurrentValue any
|
CurrentValue interface{}
|
||||||
TypeString string
|
TypeString string
|
||||||
Delegated bool
|
Delegated bool
|
||||||
shouldUpdateValue bool
|
shouldUpdateValue bool
|
||||||
}
|
}
|
||||||
|
|
||||||
func SetDefaultsAndValidate(config any) error {
|
func SetDefaultsAndValidate(config interface{}) error {
|
||||||
return setDefaultsAndValidate(config, true)
|
return setDefaultsAndValidate(config, true)
|
||||||
}
|
}
|
||||||
|
|
||||||
func setDefaultsAndValidate(config any, isRoot bool) error {
|
func setDefaultsAndValidate(config interface{}, isRoot bool) error {
|
||||||
// first we need to check if the config is a pointer
|
// first we need to check if the config is a pointer
|
||||||
if reflect.TypeOf(config).Kind() != reflect.Ptr {
|
if reflect.TypeOf(config).Kind() != reflect.Ptr {
|
||||||
return fmt.Errorf("config is not a pointer")
|
return fmt.Errorf("config is not a pointer")
|
||||||
|
|
@ -55,7 +55,7 @@ func setDefaultsAndValidate(config any, isRoot bool) error {
|
||||||
Name: field.Name,
|
Name: field.Name,
|
||||||
OneOf: splitString(field.Tag.Get("one_of")),
|
OneOf: splitString(field.Tag.Get("one_of")),
|
||||||
ValidateTypes: splitString(field.Tag.Get("validate_type")),
|
ValidateTypes: splitString(field.Tag.Get("validate_type")),
|
||||||
RequiredIf: make(map[string]any),
|
RequiredIf: make(map[string]interface{}),
|
||||||
CurrentValue: fieldValue.Interface(),
|
CurrentValue: fieldValue.Interface(),
|
||||||
IsEmpty: false,
|
IsEmpty: false,
|
||||||
TypeString: fieldType,
|
TypeString: fieldType,
|
||||||
|
|
@ -142,8 +142,8 @@ func setDefaultsAndValidate(config any, isRoot bool) error {
|
||||||
// now check if the field has required_if
|
// now check if the field has required_if
|
||||||
requiredIf := field.Tag.Get("required_if")
|
requiredIf := field.Tag.Get("required_if")
|
||||||
if requiredIf != "" {
|
if requiredIf != "" {
|
||||||
requiredIfParts := strings.SplitSeq(requiredIf, ",")
|
requiredIfParts := strings.Split(requiredIf, ",")
|
||||||
for part := range requiredIfParts {
|
for _, part := range requiredIfParts {
|
||||||
partVal := strings.SplitN(part, "=", 2)
|
partVal := strings.SplitN(part, "=", 2)
|
||||||
if len(partVal) != 2 {
|
if len(partVal) != 2 {
|
||||||
return fmt.Errorf("invalid required_if for field `%s`: %s", field.Name, requiredIf)
|
return fmt.Errorf("invalid required_if for field `%s`: %s", field.Name, requiredIf)
|
||||||
|
|
@ -168,7 +168,7 @@ func setDefaultsAndValidate(config any, isRoot bool) error {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func validateFields(config any, fields map[string]FieldConfig) error {
|
func validateFields(config interface{}, fields map[string]FieldConfig) error {
|
||||||
// now we can start to validate the fields
|
// now we can start to validate the fields
|
||||||
for _, fieldConfig := range fields {
|
for _, fieldConfig := range fields {
|
||||||
if err := fieldConfig.validate(fields); err != nil {
|
if err := fieldConfig.validate(fields); err != nil {
|
||||||
|
|
@ -215,7 +215,7 @@ func (f *FieldConfig) validate(fields map[string]FieldConfig) error {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (f *FieldConfig) populate(config any) {
|
func (f *FieldConfig) populate(config interface{}) {
|
||||||
// update the field if it's not empty
|
// update the field if it's not empty
|
||||||
if !f.shouldUpdateValue {
|
if !f.shouldUpdateValue {
|
||||||
return
|
return
|
||||||
|
|
@ -346,6 +346,17 @@ func (f *FieldConfig) validateField() error {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Handle []string types, like dns servers, time sync ntp servers, etc.
|
||||||
|
if slice, ok := f.CurrentValue.([]string); ok {
|
||||||
|
for i, item := range slice {
|
||||||
|
if err := f.validateSingleValue(item, i); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
// Handle single string types
|
||||||
val, err := toString(f.CurrentValue)
|
val, err := toString(f.CurrentValue)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return fmt.Errorf("field `%s` cannot use validate_type: %s", f.Name, err)
|
return fmt.Errorf("field `%s` cannot use validate_type: %s", f.Name, err)
|
||||||
|
|
@ -355,30 +366,71 @@ func (f *FieldConfig) validateField() error {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return f.validateSingleValue(val, -1)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (f *FieldConfig) validateSingleValue(val string, index int) error {
|
||||||
for _, validateType := range f.ValidateTypes {
|
for _, validateType := range f.ValidateTypes {
|
||||||
|
var fieldRef string
|
||||||
|
if index >= 0 {
|
||||||
|
fieldRef = fmt.Sprintf("field `%s[%d]`", f.Name, index)
|
||||||
|
} else {
|
||||||
|
fieldRef = fmt.Sprintf("field `%s`", f.Name)
|
||||||
|
}
|
||||||
|
|
||||||
switch validateType {
|
switch validateType {
|
||||||
|
case "int":
|
||||||
|
if _, err := strconv.Atoi(val); err != nil {
|
||||||
|
return fmt.Errorf("field `%s` is not a valid integer: %s", fieldRef, val)
|
||||||
|
}
|
||||||
|
case "ipv6_prefix_length":
|
||||||
|
valInt, err := strconv.Atoi(val)
|
||||||
|
if err != nil {
|
||||||
|
return fmt.Errorf("field `%s` is not a valid IPv6 prefix length: %s", fieldRef, val)
|
||||||
|
}
|
||||||
|
if valInt < 0 || valInt > 128 {
|
||||||
|
return fmt.Errorf("field `%s` is not a valid IPv6 prefix length: %s", fieldRef, val)
|
||||||
|
}
|
||||||
case "ipv4":
|
case "ipv4":
|
||||||
if net.ParseIP(val).To4() == nil {
|
if net.ParseIP(val).To4() == nil {
|
||||||
return fmt.Errorf("field `%s` is not a valid IPv4 address: %s", f.Name, val)
|
return fmt.Errorf("field `%s` is not a valid IPv4 address: %s", fieldRef, val)
|
||||||
}
|
}
|
||||||
case "ipv6":
|
case "ipv6":
|
||||||
if net.ParseIP(val).To16() == nil {
|
if net.ParseIP(val).To16() == nil {
|
||||||
return fmt.Errorf("field `%s` is not a valid IPv6 address: %s", f.Name, val)
|
return fmt.Errorf("field `%s` is not a valid IPv6 address: %s", fieldRef, val)
|
||||||
|
}
|
||||||
|
case "ipv6_prefix":
|
||||||
|
if i, _, err := net.ParseCIDR(val); err != nil {
|
||||||
|
if i.To16() == nil {
|
||||||
|
return fmt.Errorf("field `%s` is not a valid IPv6 prefix: %s", fieldRef, val)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
case "ipv4_or_ipv6":
|
||||||
|
if net.ParseIP(val) == nil {
|
||||||
|
return fmt.Errorf("%s is not a valid IPv4 or IPv6 address: %s", fieldRef, val)
|
||||||
}
|
}
|
||||||
case "hwaddr":
|
case "hwaddr":
|
||||||
if _, err := net.ParseMAC(val); err != nil {
|
if _, err := net.ParseMAC(val); err != nil {
|
||||||
return fmt.Errorf("field `%s` is not a valid MAC address: %s", f.Name, val)
|
return fmt.Errorf("%s is not a valid MAC address: %s", fieldRef, val)
|
||||||
}
|
}
|
||||||
case "hostname":
|
case "hostname":
|
||||||
if _, err := idna.Lookup.ToASCII(val); err != nil {
|
if _, err := idna.Lookup.ToASCII(val); err != nil {
|
||||||
return fmt.Errorf("field `%s` is not a valid hostname: %s", f.Name, val)
|
return fmt.Errorf("%s is not a valid hostname: %s", fieldRef, val)
|
||||||
}
|
}
|
||||||
case "proxy":
|
case "proxy":
|
||||||
if url, err := url.Parse(val); err != nil || (url.Scheme != "http" && url.Scheme != "https") || url.Host == "" {
|
if url, err := url.Parse(val); err != nil || (url.Scheme != "http" && url.Scheme != "https") || url.Host == "" {
|
||||||
return fmt.Errorf("field `%s` is not a valid HTTP proxy URL: %s", f.Name, val)
|
return fmt.Errorf("%s is not a valid HTTP proxy URL: %s", fieldRef, val)
|
||||||
|
}
|
||||||
|
case "url":
|
||||||
|
if _, err := url.Parse(val); err != nil {
|
||||||
|
return fmt.Errorf("%s is not a valid URL: %s", fieldRef, val)
|
||||||
|
}
|
||||||
|
case "cidr":
|
||||||
|
if _, _, err := net.ParseCIDR(val); err != nil {
|
||||||
|
return fmt.Errorf("%s is not a valid CIDR notation: %s", fieldRef, val)
|
||||||
}
|
}
|
||||||
default:
|
default:
|
||||||
return fmt.Errorf("field `%s` cannot use validate_type: unsupported validator: %s", f.Name, validateType)
|
return fmt.Errorf("field `%s` cannot use validate_type: unsupported validator: %s", fieldRef, validateType)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -24,10 +24,10 @@ type testIPv4StaticConfig struct {
|
||||||
}
|
}
|
||||||
|
|
||||||
type testIPv6StaticConfig struct {
|
type testIPv6StaticConfig struct {
|
||||||
Address null.String `json:"address" validate_type:"ipv6" required:"true"`
|
Address null.String `json:"address" validate_type:"ipv6" required:"true"`
|
||||||
Prefix null.String `json:"prefix" validate_type:"ipv6" required:"true"`
|
PrefixLength null.Int `json:"prefix_length" validate_type:"ipv6_prefix_length" required:"true"`
|
||||||
Gateway null.String `json:"gateway" validate_type:"ipv6" required:"true"`
|
Gateway null.String `json:"gateway" validate_type:"ipv6" required:"true"`
|
||||||
DNS []string `json:"dns" validate_type:"ipv6" required:"true"`
|
DNS []string `json:"dns" validate_type:"ipv6" required:"true"`
|
||||||
}
|
}
|
||||||
type testNetworkConfig struct {
|
type testNetworkConfig struct {
|
||||||
Hostname null.String `json:"hostname,omitempty"`
|
Hostname null.String `json:"hostname,omitempty"`
|
||||||
|
|
|
||||||
|
|
@ -16,7 +16,7 @@ func splitString(s string) []string {
|
||||||
return strings.Split(s, ",")
|
return strings.Split(s, ",")
|
||||||
}
|
}
|
||||||
|
|
||||||
func toString(v any) (string, error) {
|
func toString(v interface{}) (string, error) {
|
||||||
switch v := v.(type) {
|
switch v := v.(type) {
|
||||||
case string:
|
case string:
|
||||||
return v, nil
|
return v, nil
|
||||||
|
|
|
||||||
|
|
@ -128,7 +128,7 @@
|
||||||
this.statsElement = statsElement;
|
this.statsElement = statsElement;
|
||||||
this.stream = null;
|
this.stream = null;
|
||||||
this.reconnectAttempts = 0;
|
this.reconnectAttempts = 0;
|
||||||
this.maxReconnectAttempts = 10;
|
this.maxReconnectAttempts = 500;
|
||||||
this.reconnectDelay = 1000; // Start with 1 second
|
this.reconnectDelay = 1000; // Start with 1 second
|
||||||
this.maxReconnectDelay = 30000; // Max 30 seconds
|
this.maxReconnectDelay = 30000; // Max 30 seconds
|
||||||
this.isConnecting = false;
|
this.isConnecting = false;
|
||||||
|
|
|
||||||
|
|
@ -146,14 +146,17 @@ func (m *MDNS) start(allowRestart bool) error {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Start starts the mDNS server
|
||||||
func (m *MDNS) Start() error {
|
func (m *MDNS) Start() error {
|
||||||
return m.start(false)
|
return m.start(false)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Restart restarts the mDNS server
|
||||||
func (m *MDNS) Restart() error {
|
func (m *MDNS) Restart() error {
|
||||||
return m.start(true)
|
return m.start(true)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Stop stops the mDNS server
|
||||||
func (m *MDNS) Stop() error {
|
func (m *MDNS) Stop() error {
|
||||||
m.lock.Lock()
|
m.lock.Lock()
|
||||||
defer m.lock.Unlock()
|
defer m.lock.Unlock()
|
||||||
|
|
@ -165,26 +168,45 @@ func (m *MDNS) Stop() error {
|
||||||
return m.conn.Close()
|
return m.conn.Close()
|
||||||
}
|
}
|
||||||
|
|
||||||
func (m *MDNS) SetLocalNames(localNames []string, always bool) error {
|
func (m *MDNS) setLocalNames(localNames []string) {
|
||||||
if reflect.DeepEqual(m.localNames, localNames) && !always {
|
m.lock.Lock()
|
||||||
return nil
|
defer m.lock.Unlock()
|
||||||
|
|
||||||
|
if reflect.DeepEqual(m.localNames, localNames) {
|
||||||
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
m.localNames = localNames
|
m.localNames = localNames
|
||||||
_ = m.Restart()
|
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (m *MDNS) SetListenOptions(listenOptions *MDNSListenOptions) error {
|
func (m *MDNS) setListenOptions(listenOptions *MDNSListenOptions) {
|
||||||
|
m.lock.Lock()
|
||||||
|
defer m.lock.Unlock()
|
||||||
|
|
||||||
if m.listenOptions != nil &&
|
if m.listenOptions != nil &&
|
||||||
m.listenOptions.IPv4 == listenOptions.IPv4 &&
|
m.listenOptions.IPv4 == listenOptions.IPv4 &&
|
||||||
m.listenOptions.IPv6 == listenOptions.IPv6 {
|
m.listenOptions.IPv6 == listenOptions.IPv6 {
|
||||||
return nil
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
m.listenOptions = listenOptions
|
m.listenOptions = listenOptions
|
||||||
_ = m.Restart()
|
}
|
||||||
|
|
||||||
return nil
|
// SetLocalNames sets the local names and restarts the mDNS server
|
||||||
|
func (m *MDNS) SetLocalNames(localNames []string) error {
|
||||||
|
m.setLocalNames(localNames)
|
||||||
|
return m.Restart()
|
||||||
|
}
|
||||||
|
|
||||||
|
// SetListenOptions sets the listen options and restarts the mDNS server
|
||||||
|
func (m *MDNS) SetListenOptions(listenOptions *MDNSListenOptions) error {
|
||||||
|
m.setListenOptions(listenOptions)
|
||||||
|
return m.Restart()
|
||||||
|
}
|
||||||
|
|
||||||
|
// SetOptions sets the local names and listen options and restarts the mDNS server
|
||||||
|
func (m *MDNS) SetOptions(options *MDNSOptions) error {
|
||||||
|
m.setLocalNames(options.LocalNames)
|
||||||
|
m.setListenOptions(options.ListenOptions)
|
||||||
|
return m.Restart()
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,7 @@
|
||||||
|
build
|
||||||
|
deps
|
||||||
|
ui_index.c
|
||||||
|
include/lvgl
|
||||||
|
lib
|
||||||
|
# Makefile is generated by CMake
|
||||||
|
Makefile
|
||||||
|
|
@ -0,0 +1,71 @@
|
||||||
|
cmake_minimum_required(VERSION 3.14)
|
||||||
|
include(FetchContent)
|
||||||
|
include(ExternalProject)
|
||||||
|
|
||||||
|
project(jknative LANGUAGES C CXX)
|
||||||
|
|
||||||
|
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
|
||||||
|
|
||||||
|
# Rockchip SDK paths
|
||||||
|
set(RK_SDK_BASE "/opt/jetkvm-native-buildkit")
|
||||||
|
set(RK_MEDIA_OUTPUT "${RK_SDK_BASE}/media/out")
|
||||||
|
set(RK_MEDIA_INCLUDE_PATH "${RK_MEDIA_OUTPUT}/include")
|
||||||
|
set(RK_APP_MEDIA_LIBS_PATH "${RK_MEDIA_OUTPUT}/lib")
|
||||||
|
|
||||||
|
set(LV_USE_KCONFIG ON CACHE BOOL "" FORCE)
|
||||||
|
set(LV_BUILD_DEFCONFIG_PATH ${CMAKE_CURRENT_SOURCE_DIR}/lvgl_defconfig CACHE PATH "" FORCE)
|
||||||
|
|
||||||
|
# # libgpiod
|
||||||
|
|
||||||
|
# ExternalProject_Add(libgpiod-project
|
||||||
|
# URL https://mirrors.edge.kernel.org/pub/software/libs/libgpiod/libgpiod-2.2.tar.gz
|
||||||
|
# URL_HASH SHA256=f89c2176250f1a9563265479eb8ad5f22a63f42db6a1f438effc570f0254d2f5
|
||||||
|
# SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/deps/libgpiod
|
||||||
|
# BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/deps/libgpiod
|
||||||
|
# CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env CPPFLAGS=-fPIC ${CMAKE_CURRENT_SOURCE_DIR}/deps/libgpiod/configure --enable-tools=no CC=${CMAKE_C_COMPILER} --host=${CMAKE_HOST_SYSTEM_PROCESSOR}
|
||||||
|
# BUILD_COMMAND make && make install
|
||||||
|
# BUILD_BYPRODUCTS ${CMAKE_CURRENT_BINARY_DIR}/deps/libgpiod/lib/libgpiod.a
|
||||||
|
# )
|
||||||
|
|
||||||
|
|
||||||
|
# Fetch LVGL from GitHub
|
||||||
|
FetchContent_Declare(
|
||||||
|
lvgl
|
||||||
|
GIT_REPOSITORY https://github.com/lvgl/lvgl.git
|
||||||
|
GIT_TAG v9.3.0
|
||||||
|
GIT_SHALLOW 1
|
||||||
|
UPDATE_DISCONNECTED 1
|
||||||
|
PATCH_COMMAND patch -p1 -f < ${CMAKE_CURRENT_SOURCE_DIR}/lvgl-minify.patch && cat ${CMAKE_CURRENT_SOURCE_DIR}/lvgl-minify.del | xargs rm -v
|
||||||
|
)
|
||||||
|
FetchContent_MakeAvailable(lvgl)
|
||||||
|
|
||||||
|
# Get source files, excluding CMake generated files
|
||||||
|
file(GLOB_RECURSE sources CONFIGURE_DEPENDS "*.c" "ui/*.c")
|
||||||
|
list(FILTER sources EXCLUDE REGEX "CMakeFiles.*CompilerId.*\\.c$")
|
||||||
|
|
||||||
|
add_library(jknative STATIC ${sources} ${CMAKE_CURRENT_SOURCE_DIR}/ctrl.h)
|
||||||
|
|
||||||
|
# Include directories
|
||||||
|
target_include_directories(jknative PRIVATE
|
||||||
|
${RK_MEDIA_INCLUDE_PATH}
|
||||||
|
${RK_MEDIA_INCLUDE_PATH}/libdrm
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/ui
|
||||||
|
${CMAKE_CURRENT_BINARY_DIR}/deps/libgpiod/include
|
||||||
|
)
|
||||||
|
|
||||||
|
# Set library search path
|
||||||
|
target_link_directories(jknative PRIVATE ${RK_APP_MEDIA_LIBS_PATH})
|
||||||
|
# target_link_directories(jknative PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/deps/libgpiod/lib)
|
||||||
|
|
||||||
|
target_link_libraries(jknative PRIVATE
|
||||||
|
lvgl::lvgl
|
||||||
|
pthread
|
||||||
|
rockit
|
||||||
|
rockchip_mpp
|
||||||
|
rga
|
||||||
|
m
|
||||||
|
# libgpiod
|
||||||
|
)
|
||||||
|
|
||||||
|
install(TARGETS jknative DESTINATION lib)
|
||||||
|
|
@ -0,0 +1,420 @@
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <string.h>
|
||||||
|
#include <sys/un.h>
|
||||||
|
#include <sys/socket.h>
|
||||||
|
#include <errno.h>
|
||||||
|
#include <unistd.h>
|
||||||
|
#include <pthread.h>
|
||||||
|
#include <stdint.h>
|
||||||
|
#include <fcntl.h>
|
||||||
|
#include "video.h"
|
||||||
|
#include "screen.h"
|
||||||
|
#include "edid.h"
|
||||||
|
#include "ctrl.h"
|
||||||
|
#include <lvgl.h>
|
||||||
|
#include "ui_index.h"
|
||||||
|
#include "log.h"
|
||||||
|
#include "log_handler.h"
|
||||||
|
|
||||||
|
jetkvm_video_state_t state;
|
||||||
|
jetkvm_video_state_handler_t *video_state_handler = NULL;
|
||||||
|
jetkvm_rpc_handler_t *rpc_handler = NULL;
|
||||||
|
jetkvm_video_handler_t *video_handler = NULL;
|
||||||
|
|
||||||
|
|
||||||
|
void jetkvm_set_log_handler(jetkvm_log_handler_t *handler) {
|
||||||
|
log_set_handler(handler);
|
||||||
|
}
|
||||||
|
|
||||||
|
void jetkvm_set_video_handler(jetkvm_video_handler_t *handler) {
|
||||||
|
video_handler = handler;
|
||||||
|
}
|
||||||
|
|
||||||
|
static jetkvm_indev_handler_t *jetkvm_indev_handler = NULL;
|
||||||
|
|
||||||
|
static void jetkvm_indev_wrapper(lv_event_code_t code) {
|
||||||
|
if (jetkvm_indev_handler != NULL) {
|
||||||
|
(*jetkvm_indev_handler)((int)code);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void jetkvm_set_indev_handler(jetkvm_indev_handler_t *handler) {
|
||||||
|
jetkvm_indev_handler = handler;
|
||||||
|
lvgl_set_indev_handler(jetkvm_indev_wrapper);
|
||||||
|
}
|
||||||
|
|
||||||
|
void jetkvm_set_rpc_handler(jetkvm_rpc_handler_t *handler) {
|
||||||
|
rpc_handler = handler;
|
||||||
|
}
|
||||||
|
|
||||||
|
void jetkvm_call_rpc_handler(const char *method, const char *params) {
|
||||||
|
if (rpc_handler != NULL) {
|
||||||
|
(*rpc_handler)(method, params);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
const char *jetkvm_ui_event_code_to_name(int code) {
|
||||||
|
return lv_event_code_get_name((lv_event_code_t)code);
|
||||||
|
}
|
||||||
|
|
||||||
|
void video_report_format(bool ready, const char *error, u_int16_t width, u_int16_t height, double frame_per_second)
|
||||||
|
{
|
||||||
|
state.ready = ready;
|
||||||
|
state.error = error;
|
||||||
|
state.width = width;
|
||||||
|
state.height = height;
|
||||||
|
state.frame_per_second = frame_per_second;
|
||||||
|
if (video_state_handler != NULL) {
|
||||||
|
(*video_state_handler)(&state);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
int video_send_frame(const uint8_t *frame, ssize_t len)
|
||||||
|
{
|
||||||
|
if (video_handler != NULL) {
|
||||||
|
(*video_handler)(frame, len);
|
||||||
|
} else {
|
||||||
|
log_error("video handler is not set");
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Convert a hexadecimal string to an array of uint8_t bytes
|
||||||
|
*
|
||||||
|
* @param hex_str The input hexadecimal string
|
||||||
|
* @param bytes The output byte array (must be pre-allocated)
|
||||||
|
* @param max_len The maximum number of bytes that can be stored in the output array
|
||||||
|
* @return int The number of bytes converted, or -1 on error
|
||||||
|
*/
|
||||||
|
int hex_to_bytes(const char *hex_str, uint8_t *bytes, size_t max_len)
|
||||||
|
{
|
||||||
|
size_t hex_len = strnlen(hex_str, 4096);
|
||||||
|
if (hex_len % 2 != 0 || hex_len / 2 > max_len)
|
||||||
|
{
|
||||||
|
return -1; // Invalid input length or insufficient output buffer
|
||||||
|
}
|
||||||
|
|
||||||
|
for (size_t i = 0; i < hex_len; i += 2)
|
||||||
|
{
|
||||||
|
char byte_str[3] = {hex_str[i], hex_str[i + 1], '\0'};
|
||||||
|
char *end_ptr;
|
||||||
|
long value = strtol(byte_str, &end_ptr, 16);
|
||||||
|
|
||||||
|
if (*end_ptr != '\0' || value < 0 || value > 255)
|
||||||
|
{
|
||||||
|
return -1; // Invalid hexadecimal value
|
||||||
|
}
|
||||||
|
|
||||||
|
bytes[i / 2] = (uint8_t)value;
|
||||||
|
}
|
||||||
|
|
||||||
|
return hex_len / 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Convert an array of uint8_t bytes to a hexadecimal string, user must free the returned string
|
||||||
|
*
|
||||||
|
* @param bytes The input byte array
|
||||||
|
* @param len The number of bytes in the input array
|
||||||
|
* @return char* The output hexadecimal string (dynamically allocated, must be freed by the caller), or NULL on error
|
||||||
|
*/
|
||||||
|
const char *bytes_to_hex(const uint8_t *bytes, size_t len)
|
||||||
|
{
|
||||||
|
if (bytes == NULL || len == 0)
|
||||||
|
{
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
char *hex_str = malloc(2 * len + 1); // Each byte becomes 2 hex chars, plus null terminator
|
||||||
|
if (hex_str == NULL)
|
||||||
|
{
|
||||||
|
return NULL; // Memory allocation failed
|
||||||
|
}
|
||||||
|
|
||||||
|
for (size_t i = 0; i < len; i++)
|
||||||
|
{
|
||||||
|
snprintf(hex_str + (2 * i), 3, "%02x", bytes[i]);
|
||||||
|
}
|
||||||
|
|
||||||
|
hex_str[2 * len] = '\0'; // Ensure null termination
|
||||||
|
return hex_str;
|
||||||
|
}
|
||||||
|
|
||||||
|
lv_obj_flag_t str_to_lv_obj_flag(const char *flag)
|
||||||
|
{
|
||||||
|
if (strcmp(flag, "LV_OBJ_FLAG_HIDDEN") == 0)
|
||||||
|
{
|
||||||
|
return LV_OBJ_FLAG_HIDDEN;
|
||||||
|
}
|
||||||
|
else if (strcmp(flag, "LV_OBJ_FLAG_CLICKABLE") == 0)
|
||||||
|
{
|
||||||
|
return LV_OBJ_FLAG_CLICKABLE;
|
||||||
|
}
|
||||||
|
else if (strcmp(flag, "LV_OBJ_FLAG_SCROLLABLE") == 0)
|
||||||
|
{
|
||||||
|
return LV_OBJ_FLAG_SCROLLABLE;
|
||||||
|
}
|
||||||
|
else if (strcmp(flag, "LV_OBJ_FLAG_CLICK_FOCUSABLE") == 0)
|
||||||
|
{
|
||||||
|
return LV_OBJ_FLAG_CLICK_FOCUSABLE;
|
||||||
|
}
|
||||||
|
else if (strcmp(flag, "LV_OBJ_FLAG_SCROLL_ON_FOCUS") == 0)
|
||||||
|
{
|
||||||
|
return LV_OBJ_FLAG_SCROLL_ON_FOCUS;
|
||||||
|
}
|
||||||
|
else if (strcmp(flag, "LV_OBJ_FLAG_SCROLL_CHAIN") == 0)
|
||||||
|
{
|
||||||
|
return LV_OBJ_FLAG_SCROLL_CHAIN;
|
||||||
|
}
|
||||||
|
else if (strcmp(flag, "LV_OBJ_FLAG_PRESS_LOCK") == 0)
|
||||||
|
{
|
||||||
|
return LV_OBJ_FLAG_PRESS_LOCK;
|
||||||
|
}
|
||||||
|
else if (strcmp(flag, "LV_OBJ_FLAG_OVERFLOW_VISIBLE") == 0)
|
||||||
|
{
|
||||||
|
return LV_OBJ_FLAG_OVERFLOW_VISIBLE;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return 0; // Unknown flag
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void jetkvm_ui_set_var(const char *name, const char *value) {
|
||||||
|
for (int i = 0; i < ui_vars_size; i++) {
|
||||||
|
if (strcmp(ui_vars[i].name, name) == 0) {
|
||||||
|
ui_vars[i].setter(value);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
log_error("variable %s not found", name);
|
||||||
|
}
|
||||||
|
|
||||||
|
const char *jetkvm_ui_get_var(const char *name) {
|
||||||
|
for (int i = 0; i < ui_vars_size; i++) {
|
||||||
|
if (strcmp(ui_vars[i].name, name) == 0) {
|
||||||
|
return ui_vars[i].getter();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
log_error("variable %s not found", name);
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
void jetkvm_ui_init(u_int16_t rotation) {
|
||||||
|
lvgl_init(rotation);
|
||||||
|
}
|
||||||
|
|
||||||
|
void jetkvm_ui_tick() {
|
||||||
|
lvgl_tick();
|
||||||
|
}
|
||||||
|
|
||||||
|
void jetkvm_set_video_state_handler(jetkvm_video_state_handler_t *handler) {
|
||||||
|
video_state_handler = handler;
|
||||||
|
}
|
||||||
|
|
||||||
|
void jetkvm_ui_set_rotation(u_int16_t rotation)
|
||||||
|
{
|
||||||
|
lvgl_set_rotation(NULL, rotation);
|
||||||
|
}
|
||||||
|
|
||||||
|
const char *jetkvm_ui_get_current_screen() {
|
||||||
|
return ui_get_current_screen();
|
||||||
|
}
|
||||||
|
|
||||||
|
void jetkvm_ui_load_screen(const char *obj_name) {
|
||||||
|
lv_obj_t *obj = ui_get_obj(obj_name);
|
||||||
|
if (obj == NULL) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (lv_scr_act() != obj) {
|
||||||
|
lv_scr_load(obj);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
int jetkvm_ui_set_text(const char *obj_name, const char *text) {
|
||||||
|
lv_obj_t *obj = ui_get_obj(obj_name);
|
||||||
|
if (obj == NULL) {
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (strcmp(lv_label_get_text(obj), text) == 0) {
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
lv_label_set_text(obj, text);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
void jetkvm_ui_set_image(const char *obj_name, const char *image_name) {
|
||||||
|
lv_obj_t *obj = ui_get_obj(obj_name);
|
||||||
|
if (obj == NULL) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
lv_img_set_src(obj, image_name);
|
||||||
|
}
|
||||||
|
|
||||||
|
lv_state_t str_to_lv_state(const char *state_name) {
|
||||||
|
if (strcmp(state_name, "LV_STATE_USER_1") == 0) {
|
||||||
|
return LV_STATE_USER_1;
|
||||||
|
}
|
||||||
|
else if (strcmp(state_name, "LV_STATE_USER_2") == 0) {
|
||||||
|
return LV_STATE_USER_2;
|
||||||
|
}
|
||||||
|
else if (strcmp(state_name, "LV_STATE_USER_3") == 0) {
|
||||||
|
return LV_STATE_USER_3;
|
||||||
|
}
|
||||||
|
else if (strcmp(state_name, "LV_STATE_USER_4") == 0) {
|
||||||
|
return LV_STATE_USER_4;
|
||||||
|
}
|
||||||
|
else if (strcmp(state_name, "LV_STATE_DISABLED") == 0) {
|
||||||
|
return LV_STATE_DISABLED;
|
||||||
|
}
|
||||||
|
else if (strcmp(state_name, "LV_STATE_DEFAULT") == 0) {
|
||||||
|
return LV_STATE_DEFAULT;
|
||||||
|
}
|
||||||
|
else if (strcmp(state_name, "LV_STATE_CHECKED") == 0) {
|
||||||
|
return LV_STATE_CHECKED;
|
||||||
|
}
|
||||||
|
else if (strcmp(state_name, "LV_STATE_FOCUSED") == 0) {
|
||||||
|
return LV_STATE_FOCUSED;
|
||||||
|
}
|
||||||
|
return LV_STATE_DEFAULT;
|
||||||
|
}
|
||||||
|
|
||||||
|
void jetkvm_ui_add_state(const char *obj_name, const char *state_name) {
|
||||||
|
lv_obj_t *obj = ui_get_obj(obj_name);
|
||||||
|
if (obj == NULL) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
lv_state_t state_val = str_to_lv_state(state_name);
|
||||||
|
lv_obj_add_state(obj, state_val);
|
||||||
|
}
|
||||||
|
|
||||||
|
void jetkvm_ui_clear_state(const char *obj_name, const char *state_name) {
|
||||||
|
lv_obj_t *obj = ui_get_obj(obj_name);
|
||||||
|
if (obj == NULL) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
lv_state_t state_val = str_to_lv_state(state_name);
|
||||||
|
lv_obj_clear_state(obj, state_val);
|
||||||
|
}
|
||||||
|
|
||||||
|
int jetkvm_ui_add_flag(const char *obj_name, const char *flag_name) {
|
||||||
|
lv_obj_t *obj = ui_get_obj(obj_name);
|
||||||
|
if (obj == NULL) {
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
lv_obj_flag_t flag_val = str_to_lv_obj_flag(flag_name);
|
||||||
|
if (flag_val == 0)
|
||||||
|
{
|
||||||
|
return -2;
|
||||||
|
}
|
||||||
|
lv_obj_add_flag(obj, flag_val);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
int jetkvm_ui_clear_flag(const char *obj_name, const char *flag_name) {
|
||||||
|
lv_obj_t *obj = ui_get_obj(obj_name);
|
||||||
|
if (obj == NULL) {
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
lv_obj_flag_t flag_val = str_to_lv_obj_flag(flag_name);
|
||||||
|
if (flag_val == 0)
|
||||||
|
{
|
||||||
|
return -2;
|
||||||
|
}
|
||||||
|
lv_obj_clear_flag(obj, flag_val);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
void jetkvm_ui_fade_in(const char *obj_name, u_int32_t duration) {
|
||||||
|
lv_obj_t *obj = ui_get_obj(obj_name);
|
||||||
|
if (obj == NULL) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
lv_obj_fade_in(obj, duration, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
void jetkvm_ui_fade_out(const char *obj_name, u_int32_t duration) {
|
||||||
|
lv_obj_t *obj = ui_get_obj(obj_name);
|
||||||
|
if (obj == NULL) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
lv_obj_fade_out(obj, duration, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
void jetkvm_ui_set_opacity(const char *obj_name, u_int8_t opacity) {
|
||||||
|
lv_obj_t *obj = ui_get_obj(obj_name);
|
||||||
|
if (obj == NULL) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
lv_obj_set_style_opa(obj, opacity, LV_PART_MAIN);
|
||||||
|
}
|
||||||
|
|
||||||
|
const char *jetkvm_ui_get_lvgl_version() {
|
||||||
|
return lv_version_info();
|
||||||
|
}
|
||||||
|
|
||||||
|
void jetkvm_video_start() {
|
||||||
|
video_start_streaming();
|
||||||
|
}
|
||||||
|
|
||||||
|
void jetkvm_video_stop() {
|
||||||
|
video_stop_streaming();
|
||||||
|
}
|
||||||
|
|
||||||
|
int jetkvm_video_set_quality_factor(float quality_factor) {
|
||||||
|
if (quality_factor <= 0 || quality_factor > 1) {
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
video_set_quality_factor(quality_factor);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
float jetkvm_video_get_quality_factor() {
|
||||||
|
return video_get_quality_factor();
|
||||||
|
}
|
||||||
|
|
||||||
|
int jetkvm_video_set_edid(const char *edid_hex) {
|
||||||
|
uint8_t edid[256];
|
||||||
|
int edid_len = hex_to_bytes(edid_hex, edid, 256);
|
||||||
|
if (edid_len < 0) {
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
return set_edid(edid, edid_len);
|
||||||
|
}
|
||||||
|
|
||||||
|
char *jetkvm_video_get_edid_hex() {
|
||||||
|
uint8_t edid[256];
|
||||||
|
int edid_len = get_edid(edid, 256);
|
||||||
|
if (edid_len < 0) {
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
return (char *)bytes_to_hex(edid, edid_len);
|
||||||
|
}
|
||||||
|
|
||||||
|
jetkvm_video_state_t *jetkvm_video_get_status() {
|
||||||
|
return &state;
|
||||||
|
}
|
||||||
|
|
||||||
|
char *jetkvm_video_log_status() {
|
||||||
|
return (char *)videoc_log_status();
|
||||||
|
}
|
||||||
|
|
||||||
|
int jetkvm_video_init(float factor) {
|
||||||
|
return video_init(factor);
|
||||||
|
}
|
||||||
|
|
||||||
|
void jetkvm_video_shutdown() {
|
||||||
|
video_shutdown();
|
||||||
|
}
|
||||||
|
|
||||||
|
void jetkvm_crash() {
|
||||||
|
// let's call a function that will crash the program
|
||||||
|
int* p = 0;
|
||||||
|
*p = 0;
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,71 @@
|
||||||
|
#ifndef VIDEO_DAEMON_CTRL_H
|
||||||
|
#define VIDEO_DAEMON_CTRL_H
|
||||||
|
|
||||||
|
#include <stdbool.h>
|
||||||
|
#include <stdint.h>
|
||||||
|
#include <sys/types.h>
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
bool ready;
|
||||||
|
const char *error;
|
||||||
|
u_int16_t width;
|
||||||
|
u_int16_t height;
|
||||||
|
double frame_per_second;
|
||||||
|
} jetkvm_video_state_t;
|
||||||
|
|
||||||
|
typedef void (jetkvm_video_state_handler_t)(jetkvm_video_state_t *state);
|
||||||
|
typedef void (jetkvm_log_handler_t)(int level, const char *filename, const char *funcname, int line, const char *message);
|
||||||
|
typedef void (jetkvm_rpc_handler_t)(const char *method, const char *params);
|
||||||
|
typedef void (jetkvm_video_handler_t)(const uint8_t *frame, ssize_t len);
|
||||||
|
typedef void (jetkvm_indev_handler_t)(int code);
|
||||||
|
|
||||||
|
void jetkvm_set_log_handler(jetkvm_log_handler_t *handler);
|
||||||
|
void jetkvm_set_video_handler(jetkvm_video_handler_t *handler);
|
||||||
|
void jetkvm_set_indev_handler(jetkvm_indev_handler_t *handler);
|
||||||
|
void jetkvm_set_rpc_handler(jetkvm_rpc_handler_t *handler);
|
||||||
|
void jetkvm_call_rpc_handler(const char *method, const char *params);
|
||||||
|
void jetkvm_set_video_state_handler(jetkvm_video_state_handler_t *handler);
|
||||||
|
void jetkvm_crash();
|
||||||
|
|
||||||
|
void jetkvm_ui_set_var(const char *name, const char *value);
|
||||||
|
const char *jetkvm_ui_get_var(const char *name);
|
||||||
|
|
||||||
|
void jetkvm_ui_init(u_int16_t rotation);
|
||||||
|
void jetkvm_ui_tick();
|
||||||
|
|
||||||
|
|
||||||
|
void jetkvm_ui_set_rotation(u_int16_t rotation);
|
||||||
|
const char *jetkvm_ui_get_current_screen();
|
||||||
|
void jetkvm_ui_load_screen(const char *obj_name);
|
||||||
|
int jetkvm_ui_set_text(const char *obj_name, const char *text);
|
||||||
|
void jetkvm_ui_set_image(const char *obj_name, const char *image_name);
|
||||||
|
void jetkvm_ui_add_state(const char *obj_name, const char *state_name);
|
||||||
|
void jetkvm_ui_clear_state(const char *obj_name, const char *state_name);
|
||||||
|
void jetkvm_ui_fade_in(const char *obj_name, u_int32_t duration);
|
||||||
|
void jetkvm_ui_fade_out(const char *obj_name, u_int32_t duration);
|
||||||
|
void jetkvm_ui_set_opacity(const char *obj_name, u_int8_t opacity);
|
||||||
|
int jetkvm_ui_add_flag(const char *obj_name, const char *flag_name);
|
||||||
|
int jetkvm_ui_clear_flag(const char *obj_name, const char *flag_name);
|
||||||
|
|
||||||
|
const char *jetkvm_ui_get_lvgl_version();
|
||||||
|
|
||||||
|
const char *jetkvm_ui_event_code_to_name(int code);
|
||||||
|
|
||||||
|
int jetkvm_video_init(float quality_factor);
|
||||||
|
void jetkvm_video_shutdown();
|
||||||
|
void jetkvm_video_start();
|
||||||
|
void jetkvm_video_stop();
|
||||||
|
int jetkvm_video_set_quality_factor(float quality_factor);
|
||||||
|
float jetkvm_video_get_quality_factor();
|
||||||
|
int jetkvm_video_set_edid(const char *edid_hex);
|
||||||
|
char *jetkvm_video_get_edid_hex();
|
||||||
|
char *jetkvm_video_log_status();
|
||||||
|
jetkvm_video_state_t *jetkvm_video_get_status();
|
||||||
|
|
||||||
|
void video_report_format(bool ready, const char *error, u_int16_t width, u_int16_t height, double frame_per_second);
|
||||||
|
int video_send_frame(const uint8_t *frame, ssize_t len);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#endif //VIDEO_DAEMON_CTRL_H
|
||||||
|
|
@ -0,0 +1,178 @@
|
||||||
|
#include "edid.h"
|
||||||
|
#include "log.h"
|
||||||
|
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <stdbool.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <stddef.h>
|
||||||
|
#include <string.h>
|
||||||
|
#include <fcntl.h>
|
||||||
|
#include <unistd.h>
|
||||||
|
#include <sys/ioctl.h>
|
||||||
|
#include <linux/videodev2.h>
|
||||||
|
#include <errno.h>
|
||||||
|
#include <sys/klog.h>
|
||||||
|
|
||||||
|
#define MAX_EDID_SIZE 256
|
||||||
|
#define V4L_SUBDEV "/dev/v4l-subdev2"
|
||||||
|
|
||||||
|
int get_edid(uint8_t *edid, size_t max_size)
|
||||||
|
{
|
||||||
|
if (edid == NULL)
|
||||||
|
{
|
||||||
|
errno = EINVAL;
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (max_size != 128 && max_size != 256)
|
||||||
|
{
|
||||||
|
errno = EINVAL;
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
int fd;
|
||||||
|
struct v4l2_edid v4l2_edid;
|
||||||
|
|
||||||
|
fd = open(V4L_SUBDEV, O_RDWR);
|
||||||
|
if (fd < 0)
|
||||||
|
{
|
||||||
|
log_error("Failed to open device");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
memset(&v4l2_edid, 0, sizeof(v4l2_edid));
|
||||||
|
v4l2_edid.pad = 0;
|
||||||
|
v4l2_edid.start_block = 0;
|
||||||
|
v4l2_edid.blocks = 2;
|
||||||
|
v4l2_edid.edid = edid;
|
||||||
|
|
||||||
|
if (ioctl(fd, VIDIOC_G_EDID, &v4l2_edid) < 0)
|
||||||
|
{
|
||||||
|
log_error("Failed to get EDID");
|
||||||
|
close(fd);
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
close(fd);
|
||||||
|
return v4l2_edid.blocks * 128;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void fix_edid_checksum(uint8_t *edid, size_t size)
|
||||||
|
{
|
||||||
|
for (size_t block = 0; block < size / 128; block++)
|
||||||
|
{
|
||||||
|
uint8_t sum = 0;
|
||||||
|
for (int i = 0; i < 127; i++)
|
||||||
|
{
|
||||||
|
sum += edid[block * 128 + i];
|
||||||
|
}
|
||||||
|
edid[block * 128 + 127] = (uint8_t)(256 - sum);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
int set_edid(uint8_t *edid, size_t size)
|
||||||
|
{
|
||||||
|
if (edid == NULL)
|
||||||
|
{
|
||||||
|
errno = EINVAL;
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (size != 128 && size != 256)
|
||||||
|
{
|
||||||
|
errno = EINVAL;
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
int fd;
|
||||||
|
struct v4l2_edid v4l2_edid;
|
||||||
|
|
||||||
|
fd = open(V4L_SUBDEV, O_RDWR);
|
||||||
|
if (fd < 0)
|
||||||
|
{
|
||||||
|
log_error("Failed to open device");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
fix_edid_checksum(edid, size);
|
||||||
|
|
||||||
|
memset(&v4l2_edid, 0, sizeof(v4l2_edid));
|
||||||
|
v4l2_edid.pad = 0;
|
||||||
|
v4l2_edid.start_block = 0;
|
||||||
|
v4l2_edid.blocks = size / 128;
|
||||||
|
v4l2_edid.edid = edid;
|
||||||
|
|
||||||
|
if (ioctl(fd, VIDIOC_S_EDID, &v4l2_edid) < 0)
|
||||||
|
{
|
||||||
|
log_error("Failed to set EDID");
|
||||||
|
close(fd);
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
close(fd);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
const char *videoc_log_status()
|
||||||
|
{
|
||||||
|
int fd;
|
||||||
|
char *buffer = NULL;
|
||||||
|
|
||||||
|
fd = open(V4L_SUBDEV, O_RDWR);
|
||||||
|
if (fd < 0)
|
||||||
|
{
|
||||||
|
log_error("Failed to open device");
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (ioctl(fd, VIDIOC_LOG_STATUS) == -1)
|
||||||
|
{
|
||||||
|
log_error("VIDIOC_LOG_STATUS failed");
|
||||||
|
close(fd);
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
close(fd);
|
||||||
|
|
||||||
|
char buf[40960];
|
||||||
|
int len = -1;
|
||||||
|
|
||||||
|
len = klogctl(3, buf, sizeof(buf) - 1);
|
||||||
|
|
||||||
|
if (len >= 0)
|
||||||
|
{
|
||||||
|
bool found_status = false;
|
||||||
|
char *p = buf;
|
||||||
|
char *q;
|
||||||
|
|
||||||
|
buf[len] = 0;
|
||||||
|
while ((q = strstr(p, "START STATUS")))
|
||||||
|
{
|
||||||
|
found_status = true;
|
||||||
|
p = q + 1;
|
||||||
|
}
|
||||||
|
if (found_status)
|
||||||
|
{
|
||||||
|
while (p > buf && *p != '<')
|
||||||
|
p--;
|
||||||
|
q = p;
|
||||||
|
while ((q = strstr(q, "<6>")))
|
||||||
|
{
|
||||||
|
memcpy(q, " ", 3);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
buffer = strdup(p);
|
||||||
|
if (buffer == NULL)
|
||||||
|
{
|
||||||
|
log_error("Failed to allocate memory for status");
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
return buffer;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
log_error("Failed to read kernel log");
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,35 @@
|
||||||
|
#ifndef EDID_H
|
||||||
|
#define EDID_H
|
||||||
|
|
||||||
|
#include <stdint.h>
|
||||||
|
|
||||||
|
|
||||||
|
#include <stddef.h>
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Read the EDID from the display
|
||||||
|
*
|
||||||
|
* @param edid Buffer to store the EDID data
|
||||||
|
* @param max_size Maximum size of the buffer (should be 128 or 256)
|
||||||
|
* @return int Number of bytes read on success, -1 on failure
|
||||||
|
*/
|
||||||
|
int get_edid(uint8_t *edid, size_t max_size);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Set the EDID of the display
|
||||||
|
*
|
||||||
|
* @param edid The EDID to set, it can be modified
|
||||||
|
* @param size The size of the EDID (should be 128 or 256)
|
||||||
|
* @return int 0 on success, -1 on failure
|
||||||
|
*/
|
||||||
|
int set_edid(uint8_t *edid, size_t size);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Get the status of the videocontroller, aka v4l2-ctl --log-status.
|
||||||
|
* User should free the returned string
|
||||||
|
*
|
||||||
|
* @return const char* The status of the videocontroller
|
||||||
|
*/
|
||||||
|
const char* videoc_log_status();
|
||||||
|
|
||||||
|
#endif // EDID_H
|
||||||
|
|
@ -0,0 +1,98 @@
|
||||||
|
#ifndef VIDEO_DAEMON_LOG_H
|
||||||
|
#define VIDEO_DAEMON_LOG_H
|
||||||
|
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <string.h>
|
||||||
|
#include <time.h>
|
||||||
|
#include "log_handler.h"
|
||||||
|
|
||||||
|
/* Default level */
|
||||||
|
#ifndef LOG_LEVEL
|
||||||
|
#define LOG_LEVEL LEVEL_INFO
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define __FILENAME__ (strrchr(__FILE__, '/') ? strrchr(__FILE__, '/') + 1 : __FILE__)
|
||||||
|
|
||||||
|
void jetkvm_log(const char *message);
|
||||||
|
|
||||||
|
/* Log to screen */
|
||||||
|
#define emit_log(level, file, func, line, ...) do { \
|
||||||
|
/* call the log handler */ \
|
||||||
|
char msg_buffer[1024]; \
|
||||||
|
sprintf(msg_buffer, __VA_ARGS__); \
|
||||||
|
log_message(level, file, func, line, msg_buffer); \
|
||||||
|
} while (0)
|
||||||
|
|
||||||
|
/* Level enum */
|
||||||
|
#define LEVEL_PANIC 5
|
||||||
|
#define LEVEL_FATAL 4
|
||||||
|
#define LEVEL_ERROR 3
|
||||||
|
#define LEVEL_WARN 2
|
||||||
|
#define LEVEL_INFO 1
|
||||||
|
#define LEVEL_DEBUG 0
|
||||||
|
#define LEVEL_TRACE -1
|
||||||
|
|
||||||
|
/* TRACE LOG */
|
||||||
|
#define log_trace(...) do { \
|
||||||
|
if (LOG_LEVEL <= LEVEL_TRACE) { \
|
||||||
|
emit_log( \
|
||||||
|
LEVEL_TRACE, __FILENAME__, __func__, __LINE__, __VA_ARGS__ \
|
||||||
|
); \
|
||||||
|
} \
|
||||||
|
} while (0)
|
||||||
|
|
||||||
|
/* DEBUG LOG */
|
||||||
|
#define log_debug(...) do { \
|
||||||
|
if (LOG_LEVEL <= LEVEL_DEBUG) { \
|
||||||
|
emit_log( \
|
||||||
|
LEVEL_DEBUG, __FILENAME__, __func__, __LINE__, __VA_ARGS__ \
|
||||||
|
); \
|
||||||
|
} \
|
||||||
|
} while (0)
|
||||||
|
|
||||||
|
/* INFO LOG */
|
||||||
|
#define log_info(...) do { \
|
||||||
|
if (LOG_LEVEL <= LEVEL_INFO) { \
|
||||||
|
emit_log( \
|
||||||
|
LEVEL_INFO, __FILENAME__, __func__, __LINE__, __VA_ARGS__ \
|
||||||
|
); \
|
||||||
|
} \
|
||||||
|
} while (0)
|
||||||
|
|
||||||
|
/* NOTICE LOG */
|
||||||
|
#define log_notice(...) do { \
|
||||||
|
if (LOG_LEVEL <= LEVEL_INFO) { \
|
||||||
|
emit_log( \
|
||||||
|
LEVEL_INFO, __FILENAME__, __func__, __LINE__, __VA_ARGS__ \
|
||||||
|
); \
|
||||||
|
} \
|
||||||
|
} while (0)
|
||||||
|
|
||||||
|
/* WARN LOG */
|
||||||
|
#define log_warn(...) do { \
|
||||||
|
if (LOG_LEVEL <= LEVEL_WARN) { \
|
||||||
|
emit_log( \
|
||||||
|
LEVEL_WARN, __FILENAME__, __func__, __LINE__, __VA_ARGS__ \
|
||||||
|
); \
|
||||||
|
} \
|
||||||
|
} while (0)
|
||||||
|
|
||||||
|
/* ERROR LOG */
|
||||||
|
#define log_error(...) do { \
|
||||||
|
if (LOG_LEVEL <= LEVEL_ERROR) { \
|
||||||
|
emit_log( \
|
||||||
|
LEVEL_ERROR, __FILENAME__, __func__, __LINE__, __VA_ARGS__ \
|
||||||
|
); \
|
||||||
|
} \
|
||||||
|
} while (0)
|
||||||
|
|
||||||
|
/* PANIC LOG */
|
||||||
|
#define log_panic(...) do { \
|
||||||
|
if (LOG_LEVEL <= LEVEL_PANIC) { \
|
||||||
|
emit_log( \
|
||||||
|
LEVEL_PANIC, __FILENAME__, __func__, __LINE__, __VA_ARGS__ \
|
||||||
|
); \
|
||||||
|
} \
|
||||||
|
} while (0)
|
||||||
|
|
||||||
|
#endif //VIDEO_DAEMON_LOG_H
|
||||||
|
|
@ -0,0 +1,15 @@
|
||||||
|
#include <stddef.h>
|
||||||
|
#include "log_handler.h"
|
||||||
|
|
||||||
|
/* Log handler */
|
||||||
|
jetkvm_log_handler_t *log_handler = NULL;
|
||||||
|
|
||||||
|
void log_message(int level, const char *filename, const char *funcname, const int line, const char *message) {
|
||||||
|
if (log_handler != NULL) {
|
||||||
|
log_handler(level, filename, funcname, line, message);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void log_set_handler(jetkvm_log_handler_t *handler) {
|
||||||
|
log_handler = handler;
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,26 @@
|
||||||
|
#ifndef LOG_HANDLER_H
|
||||||
|
#define LOG_HANDLER_H
|
||||||
|
|
||||||
|
typedef void (jetkvm_log_handler_t)(int level, const char *filename, const char *funcname, const int line, const char *message);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Log a message
|
||||||
|
*
|
||||||
|
* @param level The level of the message
|
||||||
|
* @param filename The filename of the message
|
||||||
|
* @param funcname The function name of the message
|
||||||
|
* @param line The line number of the message
|
||||||
|
* @param message The message to log
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
void log_message(int level, const char *filename, const char *funcname, const int line, const char *message);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Set the log handler
|
||||||
|
*
|
||||||
|
* @param handler The handler to set
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
void log_set_handler(jetkvm_log_handler_t *handler);
|
||||||
|
|
||||||
|
#endif
|
||||||
File diff suppressed because it is too large
Load Diff
|
|
@ -0,0 +1,289 @@
|
||||||
|
diff --git a/env_support/cmake/os_desktop.cmake b/env_support/cmake/os_desktop.cmake
|
||||||
|
index 5c6b05ed8..a18044d64 100644
|
||||||
|
--- a/env_support/cmake/os_desktop.cmake
|
||||||
|
+++ b/env_support/cmake/os_desktop.cmake
|
||||||
|
@@ -60,8 +60,6 @@ get_directory_property(HAS_PARENT_SCOPE PARENT_DIRECTORY)
|
||||||
|
# Set sources used for LVGL components
|
||||||
|
file(GLOB_RECURSE SOURCES ${LVGL_ROOT_DIR}/src/*.c
|
||||||
|
${LVGL_ROOT_DIR}/src/*.S)
|
||||||
|
-file(GLOB_RECURSE EXAMPLE_SOURCES ${LVGL_ROOT_DIR}/examples/*.c)
|
||||||
|
-file(GLOB_RECURSE DEMO_SOURCES ${LVGL_ROOT_DIR}/demos/*.c)
|
||||||
|
file(GLOB_RECURSE THORVG_SOURCES ${LVGL_ROOT_DIR}/src/libs/thorvg/*.cpp
|
||||||
|
${LVGL_ROOT_DIR}/src/others/vg_lite_tvg/*.cpp)
|
||||||
|
|
||||||
|
@@ -229,51 +227,6 @@ if(NOT (CMAKE_C_COMPILER_ID STREQUAL "MSVC"))
|
||||||
|
PROPERTIES COMPILE_FLAGS -Wunused-parameter)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
-# Build LVGL example library
|
||||||
|
-if(CONFIG_LV_BUILD_EXAMPLES)
|
||||||
|
-
|
||||||
|
- message(STATUS "Enabling the building of examples")
|
||||||
|
-
|
||||||
|
- add_library(lvgl_examples ${EXAMPLE_SOURCES})
|
||||||
|
- add_library(lvgl::examples ALIAS lvgl_examples)
|
||||||
|
- target_include_directories(lvgl_examples SYSTEM PUBLIC ${LVGL_ROOT_DIR}/examples)
|
||||||
|
- set_target_properties(lvgl_examples PROPERTIES COMPILE_DEFINITIONS "${COMP_DEF}")
|
||||||
|
-
|
||||||
|
- # This tells cmake to link lvgl with lvgl_examples
|
||||||
|
- # PUBLIC allows code linking with LVGL to also use the library
|
||||||
|
- # The linker will resolve all dependencies when dynamic linking
|
||||||
|
- target_link_libraries(lvgl PUBLIC lvgl_examples)
|
||||||
|
-
|
||||||
|
- # During static linking, we need to create a cyclic dependency as the examples also needs lvgl
|
||||||
|
- if (NOT BUILD_SHARED_LIBS)
|
||||||
|
- target_link_libraries(lvgl_examples PRIVATE lvgl)
|
||||||
|
- endif()
|
||||||
|
-
|
||||||
|
-endif()
|
||||||
|
-
|
||||||
|
-# Build LVGL demos library
|
||||||
|
-if(CONFIG_LV_BUILD_DEMOS)
|
||||||
|
-
|
||||||
|
- message(STATUS "Enabling the building of demos")
|
||||||
|
-
|
||||||
|
- add_library(lvgl_demos ${DEMO_SOURCES})
|
||||||
|
- add_library(lvgl::demos ALIAS lvgl_demos)
|
||||||
|
- target_include_directories(lvgl_demos SYSTEM PUBLIC ${LVGL_ROOT_DIR}/demos)
|
||||||
|
- set_target_properties(lvgl_demos PROPERTIES COMPILE_DEFINITIONS "${COMP_DEF}")
|
||||||
|
-
|
||||||
|
- # This tells cmake to link lvgl with lvgl_examples
|
||||||
|
- # PUBLIC allows code linking with LVGL to also use the library
|
||||||
|
- # The linker will resolve all dependencies when dynamic linking
|
||||||
|
- target_link_libraries(lvgl PUBLIC lvgl_demos)
|
||||||
|
-
|
||||||
|
- # During static linking, we need to create a cyclic dependency as the demos also needs lvgl
|
||||||
|
- if (NOT BUILD_SHARED_LIBS)
|
||||||
|
- # If static linking - demos depends on fonts defined in lvgl
|
||||||
|
- # During dynamic linking, the linker is able to resolve everything
|
||||||
|
- target_link_libraries(lvgl_demos PRIVATE lvgl)
|
||||||
|
- endif()
|
||||||
|
-
|
||||||
|
-endif()
|
||||||
|
|
||||||
|
############################## INSTALLATION ######################################
|
||||||
|
|
||||||
|
@@ -373,58 +326,6 @@ if(CONFIG_LV_USE_THORVG_INTERNAL)
|
||||||
|
|
||||||
|
endif()
|
||||||
|
|
||||||
|
-if(CONFIG_LV_BUILD_DEMOS)
|
||||||
|
-
|
||||||
|
- install(
|
||||||
|
- DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/demos"
|
||||||
|
- DESTINATION "${INC_INSTALL_DIR}"
|
||||||
|
- FILES_MATCHING
|
||||||
|
- PATTERN "*.h")
|
||||||
|
-
|
||||||
|
- set_target_properties(
|
||||||
|
- lvgl_demos
|
||||||
|
- PROPERTIES OUTPUT_NAME lvgl_demos
|
||||||
|
- VERSION ${LVGL_VERSION}
|
||||||
|
- SOVERSION ${LVGL_SOVERSION}
|
||||||
|
- ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/lib"
|
||||||
|
- LIBRARY_OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/lib"
|
||||||
|
- PUBLIC_HEADER "${LVGL_PUBLIC_HEADERS}")
|
||||||
|
-
|
||||||
|
- install(
|
||||||
|
- TARGETS lvgl_demos
|
||||||
|
- ARCHIVE DESTINATION "${LIB_INSTALL_DIR}"
|
||||||
|
- LIBRARY DESTINATION "${LIB_INSTALL_DIR}"
|
||||||
|
- RUNTIME DESTINATION "${RUNTIME_INSTALL_DIR}"
|
||||||
|
- PUBLIC_HEADER DESTINATION "${INC_INSTALL_DIR}")
|
||||||
|
-
|
||||||
|
-endif()
|
||||||
|
-
|
||||||
|
-if(CONFIG_LV_BUILD_EXAMPLES)
|
||||||
|
-
|
||||||
|
- install(
|
||||||
|
- DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/examples"
|
||||||
|
- DESTINATION "${INC_INSTALL_DIR}"
|
||||||
|
- FILES_MATCHING
|
||||||
|
- PATTERN "*.h")
|
||||||
|
-
|
||||||
|
- set_target_properties(
|
||||||
|
- lvgl_examples
|
||||||
|
- PROPERTIES OUTPUT_NAME lvgl_examples
|
||||||
|
- VERSION ${LVGL_VERSION}
|
||||||
|
- SOVERSION ${LVGL_SOVERSION}
|
||||||
|
- ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/lib"
|
||||||
|
- LIBRARY_OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/lib"
|
||||||
|
- PUBLIC_HEADER "${LVGL_PUBLIC_HEADERS}")
|
||||||
|
-
|
||||||
|
- install(
|
||||||
|
- TARGETS lvgl_examples
|
||||||
|
- ARCHIVE DESTINATION "${LIB_INSTALL_DIR}"
|
||||||
|
- LIBRARY DESTINATION "${LIB_INSTALL_DIR}"
|
||||||
|
- RUNTIME DESTINATION "${RUNTIME_INSTALL_DIR}"
|
||||||
|
- PUBLIC_HEADER DESTINATION "${INC_INSTALL_DIR}")
|
||||||
|
-
|
||||||
|
-endif()
|
||||||
|
-
|
||||||
|
############################## SET GLOBAL VARIABLES ######################################
|
||||||
|
|
||||||
|
if (HAS_PARENT_SCOPE)
|
||||||
|
diff --git a/src/drivers/lv_drivers.h b/src/drivers/lv_drivers.h
|
||||||
|
index 085010813..6e93deab1 100644
|
||||||
|
--- a/src/drivers/lv_drivers.h
|
||||||
|
+++ b/src/drivers/lv_drivers.h
|
||||||
|
@@ -31,33 +31,12 @@ extern "C" {
|
||||||
|
#include "display/st7789/lv_st7789.h"
|
||||||
|
#include "display/st7796/lv_st7796.h"
|
||||||
|
|
||||||
|
-#include "display/renesas_glcdc/lv_renesas_glcdc.h"
|
||||||
|
#include "display/st_ltdc/lv_st_ltdc.h"
|
||||||
|
#include "display/ft81x/lv_ft81x.h"
|
||||||
|
|
||||||
|
-#include "nuttx/lv_nuttx_entry.h"
|
||||||
|
-#include "nuttx/lv_nuttx_fbdev.h"
|
||||||
|
-#include "nuttx/lv_nuttx_touchscreen.h"
|
||||||
|
-#include "nuttx/lv_nuttx_lcd.h"
|
||||||
|
-#include "nuttx/lv_nuttx_libuv.h"
|
||||||
|
-
|
||||||
|
#include "evdev/lv_evdev.h"
|
||||||
|
#include "libinput/lv_libinput.h"
|
||||||
|
|
||||||
|
-#include "windows/lv_windows_input.h"
|
||||||
|
-#include "windows/lv_windows_display.h"
|
||||||
|
-
|
||||||
|
-#include "glfw/lv_glfw_window.h"
|
||||||
|
-#include "glfw/lv_opengles_texture.h"
|
||||||
|
-#include "glfw/lv_opengles_driver.h"
|
||||||
|
-
|
||||||
|
-#include "qnx/lv_qnx.h"
|
||||||
|
-
|
||||||
|
-#include "wayland/lv_wayland.h"
|
||||||
|
-
|
||||||
|
-#include "uefi/lv_uefi_context.h"
|
||||||
|
-#include "uefi/lv_uefi_indev.h"
|
||||||
|
-#include "uefi/lv_uefi_display.h"
|
||||||
|
|
||||||
|
/*********************
|
||||||
|
* DEFINES
|
||||||
|
diff --git a/src/font/lv_font.h b/src/font/lv_font.h
|
||||||
|
index 180891832..b66c30eaa 100644
|
||||||
|
--- a/src/font/lv_font.h
|
||||||
|
+++ b/src/font/lv_font.h
|
||||||
|
@@ -230,122 +230,10 @@ bool lv_font_has_static_bitmap(const lv_font_t * font);
|
||||||
|
|
||||||
|
#define LV_FONT_DECLARE(font_name) LV_ATTRIBUTE_EXTERN_DATA extern const lv_font_t font_name;
|
||||||
|
|
||||||
|
-#if LV_FONT_MONTSERRAT_8
|
||||||
|
-LV_FONT_DECLARE(lv_font_montserrat_8)
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
-#if LV_FONT_MONTSERRAT_10
|
||||||
|
-LV_FONT_DECLARE(lv_font_montserrat_10)
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
-#if LV_FONT_MONTSERRAT_12
|
||||||
|
-LV_FONT_DECLARE(lv_font_montserrat_12)
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
#if LV_FONT_MONTSERRAT_14
|
||||||
|
LV_FONT_DECLARE(lv_font_montserrat_14)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
-#if LV_FONT_MONTSERRAT_16
|
||||||
|
-LV_FONT_DECLARE(lv_font_montserrat_16)
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
-#if LV_FONT_MONTSERRAT_18
|
||||||
|
-LV_FONT_DECLARE(lv_font_montserrat_18)
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
-#if LV_FONT_MONTSERRAT_20
|
||||||
|
-LV_FONT_DECLARE(lv_font_montserrat_20)
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
-#if LV_FONT_MONTSERRAT_22
|
||||||
|
-LV_FONT_DECLARE(lv_font_montserrat_22)
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
-#if LV_FONT_MONTSERRAT_24
|
||||||
|
-LV_FONT_DECLARE(lv_font_montserrat_24)
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
-#if LV_FONT_MONTSERRAT_26
|
||||||
|
-LV_FONT_DECLARE(lv_font_montserrat_26)
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
-#if LV_FONT_MONTSERRAT_28
|
||||||
|
-LV_FONT_DECLARE(lv_font_montserrat_28)
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
-#if LV_FONT_MONTSERRAT_30
|
||||||
|
-LV_FONT_DECLARE(lv_font_montserrat_30)
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
-#if LV_FONT_MONTSERRAT_32
|
||||||
|
-LV_FONT_DECLARE(lv_font_montserrat_32)
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
-#if LV_FONT_MONTSERRAT_34
|
||||||
|
-LV_FONT_DECLARE(lv_font_montserrat_34)
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
-#if LV_FONT_MONTSERRAT_36
|
||||||
|
-LV_FONT_DECLARE(lv_font_montserrat_36)
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
-#if LV_FONT_MONTSERRAT_38
|
||||||
|
-LV_FONT_DECLARE(lv_font_montserrat_38)
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
-#if LV_FONT_MONTSERRAT_40
|
||||||
|
-LV_FONT_DECLARE(lv_font_montserrat_40)
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
-#if LV_FONT_MONTSERRAT_42
|
||||||
|
-LV_FONT_DECLARE(lv_font_montserrat_42)
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
-#if LV_FONT_MONTSERRAT_44
|
||||||
|
-LV_FONT_DECLARE(lv_font_montserrat_44)
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
-#if LV_FONT_MONTSERRAT_46
|
||||||
|
-LV_FONT_DECLARE(lv_font_montserrat_46)
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
-#if LV_FONT_MONTSERRAT_48
|
||||||
|
-LV_FONT_DECLARE(lv_font_montserrat_48)
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
-#if LV_FONT_MONTSERRAT_28_COMPRESSED
|
||||||
|
-LV_FONT_DECLARE(lv_font_montserrat_28_compressed)
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
-#if LV_FONT_DEJAVU_16_PERSIAN_HEBREW
|
||||||
|
-LV_FONT_DECLARE(lv_font_dejavu_16_persian_hebrew)
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
-#if LV_FONT_SIMSUN_14_CJK
|
||||||
|
-LV_FONT_DECLARE(lv_font_simsun_14_cjk)
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
-#if LV_FONT_SIMSUN_16_CJK
|
||||||
|
-LV_FONT_DECLARE(lv_font_simsun_16_cjk)
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
-#if LV_FONT_SOURCE_HAN_SANS_SC_14_CJK
|
||||||
|
-LV_FONT_DECLARE(lv_font_source_han_sans_sc_14_cjk)
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
-#if LV_FONT_SOURCE_HAN_SANS_SC_16_CJK
|
||||||
|
-LV_FONT_DECLARE(lv_font_source_han_sans_sc_16_cjk)
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
-#if LV_FONT_UNSCII_8
|
||||||
|
-LV_FONT_DECLARE(lv_font_unscii_8)
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
-#if LV_FONT_UNSCII_16
|
||||||
|
-LV_FONT_DECLARE(lv_font_unscii_16)
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
/*Declare the custom (user defined) fonts*/
|
||||||
|
#ifdef LV_FONT_CUSTOM_DECLARE
|
||||||
|
LV_FONT_CUSTOM_DECLARE
|
||||||
|
|
@ -0,0 +1,23 @@
|
||||||
|
CONFIG_LV_OS_PTHREAD=y
|
||||||
|
CONFIG_LV_USE_OBJ_ID=y
|
||||||
|
CONFIG_LV_USE_OBJ_NAME=y
|
||||||
|
CONFIG_LV_USE_OBJ_ID_BUILTIN=y
|
||||||
|
CONFIG_LV_USE_OBJ_PROPERTY=y
|
||||||
|
CONFIG_LV_USE_OBJ_PROPERTY_NAME=y
|
||||||
|
CONFIG_LV_USE_PRIVATE_API=y
|
||||||
|
# CONFIG_LV_USE_CALENDAR is not set
|
||||||
|
# CONFIG_LV_USE_CHART is not set
|
||||||
|
# CONFIG_LV_USE_CHECKBOX is not set
|
||||||
|
# CONFIG_LV_USE_MSGBOX is not set
|
||||||
|
# CONFIG_LV_USE_ROLLER is not set
|
||||||
|
# CONFIG_LV_USE_SCALE is not set
|
||||||
|
# CONFIG_LV_USE_SLIDER is not set
|
||||||
|
# CONFIG_LV_USE_TABLE is not set
|
||||||
|
# CONFIG_LV_USE_TABVIEW is not set
|
||||||
|
# CONFIG_LV_USE_TILEVIEW is not set
|
||||||
|
CONFIG_LV_USE_QRCODE=y
|
||||||
|
CONFIG_LV_USE_LINUX_FBDEV=y
|
||||||
|
CONFIG_LV_USE_EVDEV=y
|
||||||
|
CONFIG_LV_USE_ST7789=y
|
||||||
|
CONFIG_LV_BUILD_EXAMPLES=n
|
||||||
|
CONFIG_LV_BUILD_DEMOS=n
|
||||||
|
|
@ -0,0 +1,175 @@
|
||||||
|
#include <time.h>
|
||||||
|
#include <sys/time.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <unistd.h>
|
||||||
|
|
||||||
|
#include "log.h"
|
||||||
|
#include "screen.h"
|
||||||
|
#include <lvgl.h>
|
||||||
|
// #include "st7789/lcd.h"
|
||||||
|
#include "ui/ui.h"
|
||||||
|
#include "ui_index.h"
|
||||||
|
#include "ctrl.h"
|
||||||
|
|
||||||
|
// #define DISP_BUF_SIZE (300 * 240 * 2)
|
||||||
|
// static lv_color_t buf[DISP_BUF_SIZE];
|
||||||
|
|
||||||
|
lv_display_t *disp = NULL;
|
||||||
|
|
||||||
|
indev_handler_t *indev_handler = NULL;
|
||||||
|
|
||||||
|
void lvgl_set_indev_handler(indev_handler_t *handler) {
|
||||||
|
indev_handler = handler;
|
||||||
|
}
|
||||||
|
|
||||||
|
void handle_indev_event(lv_event_t *e) {
|
||||||
|
if (indev_handler == NULL) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
indev_handler(lv_event_get_code(e));
|
||||||
|
}
|
||||||
|
|
||||||
|
void lvgl_init(u_int16_t rotation) {
|
||||||
|
log_trace("initalizing lvgl");
|
||||||
|
|
||||||
|
/*LittlevGL init*/
|
||||||
|
lv_init();
|
||||||
|
|
||||||
|
/*Linux frame buffer device init*/
|
||||||
|
disp = lv_linux_fbdev_create();
|
||||||
|
// lv_display_set_physical_resolution(disp, 240, 300);
|
||||||
|
lv_display_set_resolution(disp, 240, 300);
|
||||||
|
lv_linux_fbdev_set_file(disp, "/dev/fb0");
|
||||||
|
|
||||||
|
lvgl_set_rotation(disp, rotation);
|
||||||
|
|
||||||
|
/* Linux input device init */
|
||||||
|
lv_indev_t *mouse = lv_evdev_create(LV_INDEV_TYPE_POINTER, "/dev/input/event1");
|
||||||
|
lv_indev_set_group(mouse, lv_group_get_default());
|
||||||
|
lv_indev_set_display(mouse, disp);
|
||||||
|
|
||||||
|
lv_indev_add_event_cb(mouse, handle_indev_event, LV_EVENT_ALL, NULL);
|
||||||
|
|
||||||
|
log_trace("initalizing ui");
|
||||||
|
|
||||||
|
ui_init();
|
||||||
|
|
||||||
|
ui_set_rpc_handler((jetkvm_rpc_handler_t *)jetkvm_call_rpc_handler);
|
||||||
|
|
||||||
|
log_info("ui initalized");
|
||||||
|
}
|
||||||
|
|
||||||
|
void lvgl_tick(void) {
|
||||||
|
lv_timer_handler();
|
||||||
|
ui_tick();
|
||||||
|
}
|
||||||
|
|
||||||
|
void lvgl_set_rotation(lv_display_t *disp_ref, u_int16_t rotation) {
|
||||||
|
if (disp_ref == NULL) {
|
||||||
|
disp_ref = disp;
|
||||||
|
}
|
||||||
|
log_info("setting rotation to %d", rotation);
|
||||||
|
if (rotation == 0) {
|
||||||
|
lv_display_set_rotation(disp_ref, LV_DISP_ROTATION_0);
|
||||||
|
} else if (rotation == 90) {
|
||||||
|
lv_display_set_rotation(disp_ref, LV_DISP_ROTATION_90);
|
||||||
|
} else if (rotation == 180) {
|
||||||
|
lv_display_set_rotation(disp_ref, LV_DISP_ROTATION_180);
|
||||||
|
} else if (rotation == 270) {
|
||||||
|
lv_display_set_rotation(disp_ref, LV_DISP_ROTATION_270);
|
||||||
|
} else {
|
||||||
|
log_error("invalid rotation %d", rotation);
|
||||||
|
}
|
||||||
|
|
||||||
|
lv_style_t *flex_screen_style = ui_get_style("flex_screen");
|
||||||
|
if (flex_screen_style == NULL) {
|
||||||
|
log_error("flex_screen style not found");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
lv_style_t *flex_screen_menu_style = ui_get_style("flex_screen_menu");
|
||||||
|
if (flex_screen_menu_style == NULL) {
|
||||||
|
log_error("flex_screen_menu style not found");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (rotation == 90) {
|
||||||
|
lv_style_set_pad_left(flex_screen_style, 24);
|
||||||
|
lv_style_set_pad_right(flex_screen_style, 44);
|
||||||
|
} else if (rotation == 270) {
|
||||||
|
lv_style_set_pad_left(flex_screen_style, 44);
|
||||||
|
lv_style_set_pad_right(flex_screen_style, 24);
|
||||||
|
}
|
||||||
|
|
||||||
|
log_info("refreshing objects");
|
||||||
|
lv_obj_report_style_change(flex_screen_style);
|
||||||
|
lv_obj_report_style_change(flex_screen_menu_style);
|
||||||
|
}
|
||||||
|
|
||||||
|
uint32_t custom_tick_get(void)
|
||||||
|
{
|
||||||
|
static uint64_t start_ms = 0;
|
||||||
|
if(start_ms == 0) {
|
||||||
|
struct timeval tv_start;
|
||||||
|
gettimeofday(&tv_start, NULL);
|
||||||
|
start_ms = (tv_start.tv_sec * 1000000 + tv_start.tv_usec) / 1000;
|
||||||
|
}
|
||||||
|
|
||||||
|
struct timeval tv_now;
|
||||||
|
gettimeofday(&tv_now, NULL);
|
||||||
|
uint64_t now_ms;
|
||||||
|
now_ms = (tv_now.tv_sec * 1000000 + tv_now.tv_usec) / 1000;
|
||||||
|
|
||||||
|
uint32_t time_ms = now_ms - start_ms;
|
||||||
|
return time_ms;
|
||||||
|
}
|
||||||
|
|
||||||
|
lv_obj_t *ui_get_obj(const char *name) {
|
||||||
|
for (size_t i = 0; i < ui_objects_size; i++) {
|
||||||
|
if (strcmp(ui_objects[i].name, name) == 0) {
|
||||||
|
return *ui_objects[i].obj;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
lv_style_t *ui_get_style(const char *name) {
|
||||||
|
for (size_t i = 0; i < ui_styles_size; i++) {
|
||||||
|
if (strcmp(ui_styles[i].name, name) == 0) {
|
||||||
|
return ui_styles[i].getter();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
const char *ui_get_current_screen() {
|
||||||
|
lv_obj_t *scr = lv_scr_act();
|
||||||
|
if (scr == NULL) {
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
for (size_t i = 0; i < ui_objects_size; i++) {
|
||||||
|
if (*(ui_objects[i].obj) == scr) {
|
||||||
|
return ui_objects[i].name;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
const lv_img_dsc_t *ui_get_image(const char *name) {
|
||||||
|
for (size_t i = 0; i < ui_images_size; i++) {
|
||||||
|
if (strcmp(ui_images[i].name, name) == 0) {
|
||||||
|
return ui_images[i].img;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
void ui_set_text(const char *name, const char *text) {
|
||||||
|
lv_obj_t *obj = ui_get_obj(name);
|
||||||
|
if(obj == NULL) {
|
||||||
|
log_error("ui_set_text %s %s, obj not found", name, text);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
lv_label_set_text(obj, text);
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,55 @@
|
||||||
|
#ifndef SCREEN_H
|
||||||
|
#define SCREEN_H
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
typedef void (indev_handler_t)(lv_event_code_t code);
|
||||||
|
|
||||||
|
void lvgl_set_indev_handler(indev_handler_t *handler);
|
||||||
|
|
||||||
|
void lvgl_init(u_int16_t rotation);
|
||||||
|
void lvgl_tick(void);
|
||||||
|
|
||||||
|
void lvgl_set_rotation(lv_display_t *disp, u_int16_t rotation);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Set the text of an object
|
||||||
|
*
|
||||||
|
* @param name The name of the object
|
||||||
|
* @param text The text to set
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
void ui_set_text(const char *name, const char *text);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Get the object with the given name
|
||||||
|
*
|
||||||
|
* @param name The name of the object
|
||||||
|
* @return lv_obj_t* The object with the given name
|
||||||
|
*/
|
||||||
|
lv_obj_t *ui_get_obj(const char *name);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Get the style with the given name
|
||||||
|
*
|
||||||
|
* @param name The name of the style
|
||||||
|
* @return lv_style_t* The style with the given name
|
||||||
|
*/
|
||||||
|
lv_style_t *ui_get_style(const char *name);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Get the image with the given name
|
||||||
|
*
|
||||||
|
* @param name The name of the image
|
||||||
|
* @return const lv_img_dsc_t* The image with the given name
|
||||||
|
*/
|
||||||
|
const lv_img_dsc_t *ui_get_image(const char *name);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Get the current screen name
|
||||||
|
*
|
||||||
|
* @return const char* The name of the current screen
|
||||||
|
*/
|
||||||
|
const char *ui_get_current_screen();
|
||||||
|
|
||||||
|
#endif // SCREEN_H
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
../eez/src/ui
|
||||||
|
|
@ -0,0 +1,40 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
cat << EOF > ui_index.c
|
||||||
|
// This file was generated by ui_index.gen.sh, do not edit it manually
|
||||||
|
#include "ui_index.h"
|
||||||
|
|
||||||
|
ui_obj_map ui_objects[] = {
|
||||||
|
$(grep -h "lv_obj_t \*" ui/screens.h | sed 's/lv_obj_t \*//g' | sed 's/;//g' | while read -r line; do
|
||||||
|
echo " {\"$line\", &(objects.$line)},"
|
||||||
|
done)
|
||||||
|
};
|
||||||
|
|
||||||
|
const int ui_objects_size = sizeof(ui_objects) / sizeof(ui_objects[0]);
|
||||||
|
|
||||||
|
ui_style_map ui_styles[] = {
|
||||||
|
$(grep 'lv_style_t \*get_style_' ui/styles.h | sed 's/lv_style_t \*get_style_//g' | sed 's/_MAIN_DEFAULT();//g' | sed 's/\r//' | while read -r line; do
|
||||||
|
echo " {\"$line\", &get_style_${line}_MAIN_DEFAULT},"
|
||||||
|
done)
|
||||||
|
};
|
||||||
|
|
||||||
|
const int ui_styles_size = sizeof(ui_styles) / sizeof(ui_styles[0]);
|
||||||
|
|
||||||
|
ui_img_map ui_images[] = {
|
||||||
|
$(grep "extern const lv_img_dsc_t " ui/images.h | sed 's/extern const lv_img_dsc_t //g' | sed 's/;//g' | while read -r line; do
|
||||||
|
echo " {\"$line\", &$line},"
|
||||||
|
done)
|
||||||
|
};
|
||||||
|
|
||||||
|
const int ui_images_size = sizeof(ui_images) / sizeof(ui_images[0]);
|
||||||
|
|
||||||
|
ui_var_map ui_vars[] = {
|
||||||
|
$(grep 'extern const char \*get_var_' ui/vars.h | sed 's/extern const char \*get_var_//g' | sed 's/();//g' | sed 's/\r//' | while read -r line; do
|
||||||
|
echo " {\"$line\", &get_var_$line, &set_var_$line},"
|
||||||
|
done)
|
||||||
|
};
|
||||||
|
|
||||||
|
const int ui_vars_size = sizeof(ui_vars) / sizeof(ui_vars[0]);
|
||||||
|
EOF
|
||||||
|
|
||||||
|
echo "ui_index.c has been generated successfully."
|
||||||
|
|
@ -0,0 +1,43 @@
|
||||||
|
#ifndef UI_INDEX_H
|
||||||
|
#define UI_INDEX_H
|
||||||
|
|
||||||
|
#include "ui/ui.h"
|
||||||
|
#include "ui/screens.h"
|
||||||
|
#include "ui/styles.h"
|
||||||
|
#include "ui/images.h"
|
||||||
|
#include "ui/vars.h"
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
const char *name;
|
||||||
|
lv_obj_t **obj; // Pointer to the object pointer, as the object pointer is only populated after the ui is initialized
|
||||||
|
} ui_obj_map;
|
||||||
|
|
||||||
|
extern ui_obj_map ui_objects[];
|
||||||
|
extern const int ui_objects_size;
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
const char *name;
|
||||||
|
lv_style_t *(*getter)();
|
||||||
|
} ui_style_map;
|
||||||
|
|
||||||
|
extern ui_style_map ui_styles[];
|
||||||
|
extern const int ui_styles_size;
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
const char *name;
|
||||||
|
const lv_img_dsc_t *img; // Pointer to the image descriptor const
|
||||||
|
} ui_img_map;
|
||||||
|
|
||||||
|
extern ui_img_map ui_images[];
|
||||||
|
extern const int ui_images_size;
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
const char *name;
|
||||||
|
const char *(*getter)();
|
||||||
|
void (*setter)(const char *value);
|
||||||
|
} ui_var_map;
|
||||||
|
|
||||||
|
extern ui_var_map ui_vars[];
|
||||||
|
extern const int ui_vars_size;
|
||||||
|
|
||||||
|
#endif // UI_INDEX_H
|
||||||
|
|
@ -0,0 +1,839 @@
|
||||||
|
#define _POSIX_C_SOURCE 200809L
|
||||||
|
#include <unistd.h>
|
||||||
|
#include <time.h>
|
||||||
|
#include <rk_type.h>
|
||||||
|
#include <rk_mpi_venc.h>
|
||||||
|
#include <rk_mpi_sys.h>
|
||||||
|
#include <string.h>
|
||||||
|
#include <rk_debug.h>
|
||||||
|
#include <malloc.h>
|
||||||
|
#include <stdbool.h>
|
||||||
|
#include <rk_mpi_mb.h>
|
||||||
|
#include <fcntl.h>
|
||||||
|
#include <linux/videodev2.h>
|
||||||
|
#include <sys/ioctl.h>
|
||||||
|
#include <errno.h>
|
||||||
|
#include <unistd.h>
|
||||||
|
#include <stdatomic.h>
|
||||||
|
#include <sys/socket.h>
|
||||||
|
#include <netinet/in.h>
|
||||||
|
#include <arpa/inet.h>
|
||||||
|
#include <rk_mpi_mmz.h>
|
||||||
|
#include <pthread.h>
|
||||||
|
#include <assert.h>
|
||||||
|
#include <sys/un.h>
|
||||||
|
#include <sys/socket.h>
|
||||||
|
#include "video.h"
|
||||||
|
#include "ctrl.h"
|
||||||
|
#include "log.h"
|
||||||
|
|
||||||
|
#define VIDEO_DEV "/dev/video0"
|
||||||
|
#define SUB_DEV "/dev/v4l-subdev2"
|
||||||
|
#define SLEEP_MODE_FILE "/sys/devices/platform/ff470000.i2c/i2c-4/4-000f/sleep_mode"
|
||||||
|
|
||||||
|
#define RK_ALIGN(x, a) (((x) + (a)-1) & ~((a)-1))
|
||||||
|
#define RK_ALIGN_2(x) RK_ALIGN(x, 2)
|
||||||
|
#define RK_ALIGN_16(x) RK_ALIGN(x, 16)
|
||||||
|
#define RK_ALIGN_32(x) RK_ALIGN(x, 32)
|
||||||
|
|
||||||
|
int sub_dev_fd = -1;
|
||||||
|
#define VENC_CHANNEL 0
|
||||||
|
MB_POOL memPool = MB_INVALID_POOLID;
|
||||||
|
|
||||||
|
bool sleep_mode_available = false;
|
||||||
|
bool should_exit = false;
|
||||||
|
float quality_factor = 1.0f;
|
||||||
|
|
||||||
|
static void *venc_read_stream(void *arg);
|
||||||
|
|
||||||
|
RK_U64 get_us()
|
||||||
|
{
|
||||||
|
struct timespec time = {0, 0};
|
||||||
|
clock_gettime(CLOCK_MONOTONIC, &time);
|
||||||
|
return (RK_U64)time.tv_sec * 1000000 + (RK_U64)time.tv_nsec / 1000; /* microseconds */
|
||||||
|
}
|
||||||
|
|
||||||
|
static void ensure_sleep_mode_disabled()
|
||||||
|
{
|
||||||
|
if (!sleep_mode_available)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
int fd = open(SLEEP_MODE_FILE, O_RDWR);
|
||||||
|
if (fd < 0)
|
||||||
|
{
|
||||||
|
log_error("Failed to open sleep mode file: %s", strerror(errno));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
lseek(fd, 0, SEEK_SET);
|
||||||
|
char buffer[1];
|
||||||
|
read(fd, buffer, 1);
|
||||||
|
if (buffer[0] == '0') {
|
||||||
|
close(fd);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
log_warn("HDMI sleep mode is not disabled, disabling it");
|
||||||
|
lseek(fd, 0, SEEK_SET);
|
||||||
|
write(fd, "0", 1);
|
||||||
|
close(fd);
|
||||||
|
|
||||||
|
usleep(1000); // give some time to the system to disable the sleep mode
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void detect_sleep_mode()
|
||||||
|
{
|
||||||
|
if (access(SLEEP_MODE_FILE, F_OK) != 0) {
|
||||||
|
sleep_mode_available = false;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
sleep_mode_available = true;
|
||||||
|
ensure_sleep_mode_disabled();
|
||||||
|
}
|
||||||
|
|
||||||
|
double calculate_bitrate(float bitrate_factor, int width, int height)
|
||||||
|
{
|
||||||
|
const int32_t base_bitrate_high = 2000;
|
||||||
|
const int32_t base_bitrate_low = 512;
|
||||||
|
|
||||||
|
double pixels = (double)width * height;
|
||||||
|
double ref_pixels = 1920.0 * 1080.0;
|
||||||
|
|
||||||
|
double scale_factor = pixels / ref_pixels;
|
||||||
|
|
||||||
|
int32_t base_bitrate = base_bitrate_low + (int32_t)((base_bitrate_high - base_bitrate_low) * bitrate_factor);
|
||||||
|
|
||||||
|
int32_t bitrate = (int32_t)(base_bitrate * scale_factor);
|
||||||
|
|
||||||
|
const int32_t min_bitrate = 100;
|
||||||
|
if (bitrate < min_bitrate)
|
||||||
|
{
|
||||||
|
bitrate = min_bitrate;
|
||||||
|
}
|
||||||
|
|
||||||
|
return bitrate;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void populate_venc_attr(VENC_CHN_ATTR_S *stAttr, RK_U32 bitrate, RK_U32 max_bitrate, RK_U32 width, RK_U32 height)
|
||||||
|
{
|
||||||
|
memset(stAttr, 0, sizeof(VENC_CHN_ATTR_S));
|
||||||
|
|
||||||
|
stAttr->stRcAttr.enRcMode = VENC_RC_MODE_H264VBR;
|
||||||
|
stAttr->stRcAttr.stH264Vbr.u32BitRate = bitrate;
|
||||||
|
stAttr->stRcAttr.stH264Vbr.u32MaxBitRate = max_bitrate;
|
||||||
|
stAttr->stRcAttr.stH264Vbr.u32Gop = 60;
|
||||||
|
|
||||||
|
stAttr->stVencAttr.enType = RK_VIDEO_ID_AVC;
|
||||||
|
stAttr->stVencAttr.enPixelFormat = RK_FMT_YUV422_YUYV;
|
||||||
|
stAttr->stVencAttr.u32Profile = H264E_PROFILE_HIGH;
|
||||||
|
stAttr->stVencAttr.u32PicWidth = width;
|
||||||
|
stAttr->stVencAttr.u32PicHeight = height;
|
||||||
|
// stAttr->stVencAttr.u32VirWidth = (width + 15) & (~15);
|
||||||
|
// stAttr->stVencAttr.u32VirHeight = (height + 15) & (~15);
|
||||||
|
stAttr->stVencAttr.u32VirWidth = RK_ALIGN_2(width);
|
||||||
|
stAttr->stVencAttr.u32VirHeight = RK_ALIGN_2(height);
|
||||||
|
stAttr->stVencAttr.u32StreamBufCnt = 3;
|
||||||
|
stAttr->stVencAttr.u32BufSize = width * height * 3 / 2;
|
||||||
|
stAttr->stVencAttr.enMirror = MIRROR_NONE;
|
||||||
|
}
|
||||||
|
|
||||||
|
pthread_t *venc_read_thread = NULL;
|
||||||
|
volatile bool venc_running = false;
|
||||||
|
static int32_t venc_start(int32_t bitrate, int32_t max_bitrate, int32_t width, int32_t height)
|
||||||
|
{
|
||||||
|
int32_t ret;
|
||||||
|
VENC_CHN_ATTR_S stAttr;
|
||||||
|
populate_venc_attr(&stAttr, bitrate, max_bitrate, width, height);
|
||||||
|
|
||||||
|
ret = RK_MPI_VENC_CreateChn(VENC_CHANNEL, &stAttr);
|
||||||
|
if (ret < 0)
|
||||||
|
{
|
||||||
|
RK_LOGE("error RK_MPI_VENC_CreateChn, %d", ret);
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
VENC_RECV_PIC_PARAM_S stRecvParam;
|
||||||
|
memset(&stRecvParam, 0, sizeof(VENC_RECV_PIC_PARAM_S));
|
||||||
|
stRecvParam.s32RecvPicNum = -1;
|
||||||
|
ret = RK_MPI_VENC_StartRecvFrame(VENC_CHANNEL, &stRecvParam);
|
||||||
|
if (ret < 0)
|
||||||
|
{
|
||||||
|
RK_LOGE("error RK_MPI_VENC_StartRecvFrame, %d", ret);
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
venc_running = true;
|
||||||
|
venc_read_thread = malloc(sizeof(pthread_t));
|
||||||
|
if (pthread_create(venc_read_thread, NULL, venc_read_stream, NULL) != 0)
|
||||||
|
{
|
||||||
|
RK_LOGE("Failed to create venc_read_thread");
|
||||||
|
return RK_FAILURE;
|
||||||
|
}
|
||||||
|
|
||||||
|
return RK_SUCCESS;
|
||||||
|
}
|
||||||
|
|
||||||
|
static int32_t venc_stop()
|
||||||
|
{
|
||||||
|
venc_running = false;
|
||||||
|
|
||||||
|
int32_t ret;
|
||||||
|
ret = RK_MPI_VENC_StopRecvFrame(VENC_CHANNEL);
|
||||||
|
if (ret != RK_SUCCESS)
|
||||||
|
{
|
||||||
|
RK_LOGE("Failed to stop receiving frames for VENC_CHANNEL, error code: %d", ret);
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (venc_read_thread != NULL)
|
||||||
|
{
|
||||||
|
pthread_join(*venc_read_thread, NULL);
|
||||||
|
free(venc_read_thread);
|
||||||
|
venc_read_thread = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
ret = RK_MPI_VENC_DestroyChn(VENC_CHANNEL);
|
||||||
|
if (ret != RK_SUCCESS)
|
||||||
|
{
|
||||||
|
RK_LOGE("Failed to destroy VENC_CHANNEL, error code: %d", ret);
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
return RK_SUCCESS;
|
||||||
|
}
|
||||||
|
|
||||||
|
struct buffer
|
||||||
|
{
|
||||||
|
struct v4l2_plane plane_buffer;
|
||||||
|
MB_BLK mb_blk;
|
||||||
|
};
|
||||||
|
|
||||||
|
const int input_buffer_count = 3;
|
||||||
|
|
||||||
|
static int32_t buf_init()
|
||||||
|
{
|
||||||
|
MB_POOL_CONFIG_S stMbPoolCfg;
|
||||||
|
memset(&stMbPoolCfg, 0, sizeof(MB_POOL_CONFIG_S));
|
||||||
|
stMbPoolCfg.u64MBSize = 1920 * 1080 * 3; // max resolution
|
||||||
|
stMbPoolCfg.u32MBCnt = input_buffer_count;
|
||||||
|
stMbPoolCfg.enAllocType = MB_ALLOC_TYPE_DMA;
|
||||||
|
stMbPoolCfg.bPreAlloc = RK_TRUE;
|
||||||
|
memPool = RK_MPI_MB_CreatePool(&stMbPoolCfg);
|
||||||
|
if (memPool == MB_INVALID_POOLID)
|
||||||
|
{
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
log_info("created memory pool");
|
||||||
|
|
||||||
|
return RK_SUCCESS;
|
||||||
|
}
|
||||||
|
|
||||||
|
pthread_t *format_thread = NULL;
|
||||||
|
|
||||||
|
int video_init(float factor)
|
||||||
|
{
|
||||||
|
detect_sleep_mode();
|
||||||
|
|
||||||
|
if (factor <= 0 || factor > 1) {
|
||||||
|
factor = 1.0f;
|
||||||
|
}
|
||||||
|
quality_factor = factor;
|
||||||
|
|
||||||
|
if (RK_MPI_SYS_Init() != RK_SUCCESS)
|
||||||
|
{
|
||||||
|
log_error("RK_MPI_SYS_Init failed");
|
||||||
|
return RK_FAILURE;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (sub_dev_fd < 0)
|
||||||
|
{
|
||||||
|
sub_dev_fd = open(SUB_DEV, O_RDWR);
|
||||||
|
if (sub_dev_fd < 0)
|
||||||
|
{
|
||||||
|
log_error("failed to open control sub device %s: %s", SUB_DEV, strerror(errno));
|
||||||
|
return errno;
|
||||||
|
}
|
||||||
|
log_info("opened control sub device %s", SUB_DEV);
|
||||||
|
}
|
||||||
|
|
||||||
|
int32_t ret = buf_init();
|
||||||
|
if (ret != RK_SUCCESS)
|
||||||
|
{
|
||||||
|
log_error("buf_init failed with error: %d", ret);
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
log_info("buf_init completed successfully");
|
||||||
|
|
||||||
|
format_thread = malloc(sizeof(pthread_t));
|
||||||
|
pthread_create(format_thread, NULL, run_detect_format, NULL);
|
||||||
|
return RK_SUCCESS;
|
||||||
|
}
|
||||||
|
|
||||||
|
// static int32_t venc_set_param(int32_t bitrate, int32_t max_bitrate, int32_t width, int32_t height)
|
||||||
|
// {
|
||||||
|
|
||||||
|
// VENC_CHN_ATTR_S stAttr;
|
||||||
|
// populate_venc_attr(&stAttr, bitrate, max_bitrate, width, height);
|
||||||
|
// VENC_CHN_PARAM_S stParam;
|
||||||
|
// memset(&stParam, 0, sizeof(VENC_CHN_PARAM_S));
|
||||||
|
|
||||||
|
// RK_MPI_VENC_StopRecvFrame(VENC_CHANNEL);
|
||||||
|
|
||||||
|
// int32_t ret = RK_MPI_VENC_SetChnParam(VENC_CHANNEL, &stAttr);
|
||||||
|
// if (ret < 0)
|
||||||
|
// {
|
||||||
|
// RK_LOGE("error RK_MPI_VENC_SetChnParam, %d", ret);
|
||||||
|
// return ret;
|
||||||
|
// }
|
||||||
|
// VENC_RECV_PIC_PARAM_S stRecvParam;
|
||||||
|
// memset(&stRecvParam, 0, sizeof(VENC_RECV_PIC_PARAM_S));
|
||||||
|
// stRecvParam.s32RecvPicNum = -1;
|
||||||
|
// ret = RK_MPI_VENC_StartRecvFrame(VENC_CHANNEL, &stRecvParam);
|
||||||
|
// if (ret < 0)
|
||||||
|
// {
|
||||||
|
// RK_LOGE("error RK_MPI_VENC_StartRecvFrame, %d", ret);
|
||||||
|
// return ret;
|
||||||
|
// }
|
||||||
|
|
||||||
|
// return RK_SUCCESS;
|
||||||
|
// }
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Continuously reads encoded video streams and sends them over unix socket.
|
||||||
|
*
|
||||||
|
* @param arg Unused parameter (void pointer for thread compatibility)
|
||||||
|
* @return NULL Always returns NULL
|
||||||
|
*/
|
||||||
|
static void *venc_read_stream(void *arg)
|
||||||
|
{
|
||||||
|
(void)arg;
|
||||||
|
void *pData = RK_NULL;
|
||||||
|
int loopCount = 0;
|
||||||
|
int s32Ret;
|
||||||
|
|
||||||
|
VENC_STREAM_S stFrame;
|
||||||
|
stFrame.pstPack = malloc(sizeof(VENC_PACK_S));
|
||||||
|
while (venc_running)
|
||||||
|
{
|
||||||
|
log_trace("RK_MPI_VENC_GetStream");
|
||||||
|
s32Ret = RK_MPI_VENC_GetStream(VENC_CHANNEL, &stFrame, 200); // blocks max 200ms
|
||||||
|
if (s32Ret == RK_SUCCESS)
|
||||||
|
{
|
||||||
|
RK_U64 nowUs = get_us();
|
||||||
|
log_trace("chn:0, loopCount:%d enc->seq:%d wd:%d pts=%llu delay=%lldus",
|
||||||
|
loopCount, stFrame.u32Seq, stFrame.pstPack->u32Len,
|
||||||
|
stFrame.pstPack->u64PTS, nowUs - stFrame.pstPack->u64PTS);
|
||||||
|
pData = RK_MPI_MB_Handle2VirAddr(stFrame.pstPack->pMbBlk);
|
||||||
|
video_send_frame(pData, (ssize_t)stFrame.pstPack->u32Len);
|
||||||
|
s32Ret = RK_MPI_VENC_ReleaseStream(VENC_CHANNEL, &stFrame);
|
||||||
|
if (s32Ret != RK_SUCCESS)
|
||||||
|
{
|
||||||
|
log_error("RK_MPI_VENC_ReleaseStream fail %x", s32Ret);
|
||||||
|
}
|
||||||
|
loopCount++;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (s32Ret == RK_ERR_VENC_BUF_EMPTY)
|
||||||
|
{
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
log_error("RK_MPI_VENC_GetStream fail %x", s32Ret);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
log_info("exiting venc_read_stream");
|
||||||
|
free(stFrame.pstPack);
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
uint32_t detected_width, detected_height;
|
||||||
|
bool detected_signal = false, streaming_flag = false, streaming_stopped = true;
|
||||||
|
|
||||||
|
pthread_t *streaming_thread = NULL;
|
||||||
|
pthread_mutex_t streaming_mutex = PTHREAD_MUTEX_INITIALIZER;
|
||||||
|
|
||||||
|
bool get_streaming_flag()
|
||||||
|
{
|
||||||
|
log_info("getting streaming flag");
|
||||||
|
pthread_mutex_lock(&streaming_mutex);
|
||||||
|
bool flag = streaming_flag;
|
||||||
|
pthread_mutex_unlock(&streaming_mutex);
|
||||||
|
return flag;
|
||||||
|
}
|
||||||
|
|
||||||
|
void set_streaming_flag(bool flag)
|
||||||
|
{
|
||||||
|
log_info("setting streaming flag to %d", flag);
|
||||||
|
|
||||||
|
pthread_mutex_lock(&streaming_mutex);
|
||||||
|
streaming_flag = flag;
|
||||||
|
pthread_mutex_unlock(&streaming_mutex);
|
||||||
|
}
|
||||||
|
|
||||||
|
void write_buffer_to_file(const uint8_t *buffer, size_t length, const char *filename)
|
||||||
|
{
|
||||||
|
FILE *file = fopen(filename, "wb");
|
||||||
|
fwrite(buffer, 1, length, file);
|
||||||
|
fclose(file);
|
||||||
|
}
|
||||||
|
|
||||||
|
void *run_video_stream(void *arg)
|
||||||
|
{
|
||||||
|
enum v4l2_buf_type type = V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE;
|
||||||
|
|
||||||
|
log_info("running video stream");
|
||||||
|
|
||||||
|
streaming_stopped = false;
|
||||||
|
|
||||||
|
while (streaming_flag)
|
||||||
|
{
|
||||||
|
if (detected_signal == false)
|
||||||
|
{
|
||||||
|
usleep(10000); // Reduced to 10ms for better responsiveness to streaming_flag changes
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
int video_dev_fd = open(VIDEO_DEV, O_RDWR);
|
||||||
|
if (video_dev_fd < 0)
|
||||||
|
{
|
||||||
|
log_error("failed to open video capture device %s: %s", VIDEO_DEV, strerror(errno));
|
||||||
|
usleep(1000000);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
log_info("opened video capture device %s", VIDEO_DEV);
|
||||||
|
|
||||||
|
uint32_t width = detected_width;
|
||||||
|
uint32_t height = detected_height;
|
||||||
|
struct v4l2_format fmt;
|
||||||
|
memset(&fmt, 0, sizeof(struct v4l2_format));
|
||||||
|
fmt.type = type;
|
||||||
|
fmt.fmt.pix_mp.width = width;
|
||||||
|
fmt.fmt.pix_mp.height = height;
|
||||||
|
fmt.fmt.pix_mp.pixelformat = V4L2_PIX_FMT_YUYV;
|
||||||
|
fmt.fmt.pix_mp.field = V4L2_FIELD_ANY;
|
||||||
|
|
||||||
|
if (ioctl(video_dev_fd, VIDIOC_S_FMT, &fmt) < 0)
|
||||||
|
{
|
||||||
|
log_error("Set format fail: %s", strerror(errno));
|
||||||
|
usleep(100000); // Sleep for 100 milliseconds
|
||||||
|
close(video_dev_fd);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
struct v4l2_buffer buf;
|
||||||
|
|
||||||
|
struct v4l2_requestbuffers req;
|
||||||
|
req.count = input_buffer_count;
|
||||||
|
req.type = V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE;
|
||||||
|
req.memory = V4L2_MEMORY_DMABUF;
|
||||||
|
|
||||||
|
if (ioctl(video_dev_fd, VIDIOC_REQBUFS, &req) < 0)
|
||||||
|
{
|
||||||
|
log_error("VIDIOC_REQBUFS failed: %s", strerror(errno));
|
||||||
|
close(video_dev_fd);
|
||||||
|
return (void *)errno;
|
||||||
|
}
|
||||||
|
log_info("VIDIOC_REQBUFS successful");
|
||||||
|
|
||||||
|
struct buffer buffers[3] = {};
|
||||||
|
log_info("allocated buffers");
|
||||||
|
|
||||||
|
for (int i = 0; i < input_buffer_count; i++)
|
||||||
|
{
|
||||||
|
struct v4l2_plane *planes_buffer = &buffers[i].plane_buffer;
|
||||||
|
memset(planes_buffer, 0, sizeof(struct v4l2_plane));
|
||||||
|
|
||||||
|
memset(&buf, 0, sizeof(buf));
|
||||||
|
buf.type = V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE;
|
||||||
|
buf.memory = V4L2_MEMORY_DMABUF;
|
||||||
|
buf.m.planes = planes_buffer;
|
||||||
|
buf.length = 1;
|
||||||
|
buf.index = i;
|
||||||
|
|
||||||
|
if (-1 == ioctl(video_dev_fd, VIDIOC_QUERYBUF, &buf))
|
||||||
|
{
|
||||||
|
log_error("VIDIOC_QUERYBUF failed: %s", strerror(errno));
|
||||||
|
req.count = i;
|
||||||
|
close(video_dev_fd);
|
||||||
|
return (void *)errno;
|
||||||
|
}
|
||||||
|
log_info("VIDIOC_QUERYBUF successful for buffer %d", i);
|
||||||
|
|
||||||
|
log_info("plane: length = %d", planes_buffer->length);
|
||||||
|
log_info("plane: offset = %d", planes_buffer->m.mem_offset);
|
||||||
|
|
||||||
|
MB_BLK blk = RK_MPI_MB_GetMB(memPool, (planes_buffer)->length, RK_TRUE);
|
||||||
|
if (blk == NULL)
|
||||||
|
{
|
||||||
|
log_error("get mb blk failed!");
|
||||||
|
close(video_dev_fd);
|
||||||
|
return (void *)errno;
|
||||||
|
}
|
||||||
|
log_info("Got memory block for buffer %d", i);
|
||||||
|
|
||||||
|
buffers[i].mb_blk = blk;
|
||||||
|
|
||||||
|
RK_S32 buf_fd = (RK_MPI_MB_Handle2Fd(blk));
|
||||||
|
if (buf_fd < 0)
|
||||||
|
{
|
||||||
|
log_error("RK_MPI_MB_Handle2Fd failed!");
|
||||||
|
close(video_dev_fd);
|
||||||
|
return (void *)errno;
|
||||||
|
}
|
||||||
|
log_info("Converted memory block to file descriptor for buffer %d", i);
|
||||||
|
planes_buffer->m.fd = buf_fd;
|
||||||
|
}
|
||||||
|
|
||||||
|
for (int i = 0; i < input_buffer_count; ++i)
|
||||||
|
{
|
||||||
|
struct v4l2_buffer buf;
|
||||||
|
memset(&buf, 0, sizeof(buf));
|
||||||
|
buf.type = V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE;
|
||||||
|
buf.memory = V4L2_MEMORY_DMABUF;
|
||||||
|
buf.length = 1;
|
||||||
|
buf.index = i;
|
||||||
|
buf.m.planes = &buffers[i].plane_buffer;
|
||||||
|
if (ioctl(video_dev_fd, VIDIOC_QBUF, &buf) < 0)
|
||||||
|
{
|
||||||
|
log_error("VIDIOC_QBUF failed: %s", strerror(errno));
|
||||||
|
close(video_dev_fd);
|
||||||
|
return (void *)errno;
|
||||||
|
}
|
||||||
|
log_info("VIDIOC_QBUF successful for buffer %d", i);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (ioctl(video_dev_fd, VIDIOC_STREAMON, &type) < 0)
|
||||||
|
{
|
||||||
|
log_error("VIDIOC_STREAMON failed: %s", strerror(errno));
|
||||||
|
close(video_dev_fd);
|
||||||
|
return (void *)errno;
|
||||||
|
}
|
||||||
|
|
||||||
|
struct v4l2_plane tmp_plane;
|
||||||
|
|
||||||
|
// Set VENC parameters
|
||||||
|
int32_t bitrate = calculate_bitrate(quality_factor, width, height);
|
||||||
|
RK_S32 ret = venc_start(bitrate, bitrate * 2, width, height);
|
||||||
|
if (ret != RK_SUCCESS)
|
||||||
|
{
|
||||||
|
log_error("Set VENC parameters failed with %#x", ret);
|
||||||
|
goto cleanup;
|
||||||
|
}
|
||||||
|
|
||||||
|
fd_set fds;
|
||||||
|
struct timeval tv;
|
||||||
|
int r;
|
||||||
|
uint32_t num = 0;
|
||||||
|
VIDEO_FRAME_INFO_S stFrame;
|
||||||
|
|
||||||
|
while (streaming_flag)
|
||||||
|
{
|
||||||
|
FD_ZERO(&fds);
|
||||||
|
FD_SET(video_dev_fd, &fds);
|
||||||
|
tv.tv_sec = 1;
|
||||||
|
tv.tv_usec = 0;
|
||||||
|
|
||||||
|
r = select(video_dev_fd + 1, &fds, NULL, NULL, &tv);
|
||||||
|
if (r == 0)
|
||||||
|
{
|
||||||
|
log_info("select timeout");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
if (r == -1)
|
||||||
|
{
|
||||||
|
if (errno == EINTR)
|
||||||
|
{
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
log_error("select in video streaming");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
memset(&buf, 0, sizeof(buf));
|
||||||
|
buf.type = V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE;
|
||||||
|
buf.memory = V4L2_MEMORY_DMABUF;
|
||||||
|
buf.m.planes = &tmp_plane;
|
||||||
|
buf.length = 1;
|
||||||
|
if (ioctl(video_dev_fd, VIDIOC_DQBUF, &buf) < 0)
|
||||||
|
{
|
||||||
|
log_error("VIDIOC_DQBUF failed: %s", strerror(errno));
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
log_trace("got frame, bytesused = %d", tmp_plane.bytesused);
|
||||||
|
memset(&stFrame, 0, sizeof(VIDEO_FRAME_INFO_S));
|
||||||
|
MB_BLK blk = RK_NULL;
|
||||||
|
blk = RK_MPI_MMZ_Fd2Handle(tmp_plane.m.fd);
|
||||||
|
assert(blk != RK_NULL);
|
||||||
|
stFrame.stVFrame.pMbBlk = blk;
|
||||||
|
stFrame.stVFrame.u32Width = width;
|
||||||
|
stFrame.stVFrame.u32Height = height;
|
||||||
|
// stFrame.stVFrame.u32VirWidth = (width + 15) & (~15);
|
||||||
|
// stFrame.stVFrame.u32VirHeight = (height + 15) & (~15);
|
||||||
|
stFrame.stVFrame.u32VirWidth = RK_ALIGN_2(width);
|
||||||
|
stFrame.stVFrame.u32VirHeight = RK_ALIGN_2(height);
|
||||||
|
stFrame.stVFrame.u32TimeRef = num; // frame number
|
||||||
|
stFrame.stVFrame.u64PTS = get_us();
|
||||||
|
stFrame.stVFrame.enPixelFormat = RK_FMT_YUV422_YUYV;
|
||||||
|
stFrame.stVFrame.u32FrameFlag |= 0;
|
||||||
|
stFrame.stVFrame.enCompressMode = COMPRESS_MODE_NONE;
|
||||||
|
bool retried = false;
|
||||||
|
retry_send_frame:
|
||||||
|
if (RK_MPI_VENC_SendFrame(VENC_CHANNEL, &stFrame, 2000) != RK_SUCCESS)
|
||||||
|
{
|
||||||
|
if (retried == true)
|
||||||
|
{
|
||||||
|
log_error("RK_MPI_VENC_SendFrame retry failed");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
log_error("RK_MPI_VENC_SendFrame failed,retrying");
|
||||||
|
retried = true;
|
||||||
|
usleep(1000llu);
|
||||||
|
goto retry_send_frame;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
num++;
|
||||||
|
|
||||||
|
if (ioctl(video_dev_fd, VIDIOC_QBUF, &buf) < 0)
|
||||||
|
log_error("failure VIDIOC_QBUF: %s", strerror(errno));
|
||||||
|
}
|
||||||
|
cleanup:
|
||||||
|
log_info("cleaning up video capture device %s", VIDEO_DEV);
|
||||||
|
if (ioctl(video_dev_fd, VIDIOC_STREAMOFF, &type) < 0)
|
||||||
|
{
|
||||||
|
log_error("VIDIOC_STREAMOFF failed: %s", strerror(errno));
|
||||||
|
}
|
||||||
|
|
||||||
|
// Explicitly free V4L2 buffer queue
|
||||||
|
struct v4l2_requestbuffers req_free;
|
||||||
|
memset(&req_free, 0, sizeof(req_free));
|
||||||
|
req_free.count = 0;
|
||||||
|
req_free.type = V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE;
|
||||||
|
req_free.memory = V4L2_MEMORY_DMABUF;
|
||||||
|
|
||||||
|
if (ioctl(video_dev_fd, VIDIOC_REQBUFS, &req_free) < 0)
|
||||||
|
{
|
||||||
|
log_error("Failed to free V4L2 buffers: %s", strerror(errno));
|
||||||
|
}
|
||||||
|
|
||||||
|
venc_stop();
|
||||||
|
|
||||||
|
for (int i = 0; i < input_buffer_count; i++)
|
||||||
|
{
|
||||||
|
if (buffers[i].mb_blk != NULL)
|
||||||
|
{
|
||||||
|
RK_MPI_MB_ReleaseMB((buffers + i)->mb_blk);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
log_info("closing video capture device %s", VIDEO_DEV);
|
||||||
|
close(video_dev_fd);
|
||||||
|
}
|
||||||
|
|
||||||
|
log_info("video stream thread exiting");
|
||||||
|
|
||||||
|
streaming_stopped = true;
|
||||||
|
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
void video_shutdown()
|
||||||
|
{
|
||||||
|
if (should_exit == true)
|
||||||
|
{
|
||||||
|
log_info("shutting down in progress already");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
video_stop_streaming();
|
||||||
|
|
||||||
|
should_exit = true;
|
||||||
|
if (sub_dev_fd > 0)
|
||||||
|
{
|
||||||
|
shutdown(sub_dev_fd, SHUT_RDWR);
|
||||||
|
log_info("Closed sub_dev_fd");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (memPool != MB_INVALID_POOLID)
|
||||||
|
{
|
||||||
|
RK_MPI_MB_DestroyPool(memPool);
|
||||||
|
}
|
||||||
|
log_info("Destroyed memory pool");
|
||||||
|
|
||||||
|
pthread_mutex_destroy(&streaming_mutex);
|
||||||
|
log_info("Destroyed streaming mutex");
|
||||||
|
}
|
||||||
|
|
||||||
|
void video_start_streaming()
|
||||||
|
{
|
||||||
|
log_info("starting video streaming");
|
||||||
|
if (streaming_thread != NULL)
|
||||||
|
{
|
||||||
|
if (streaming_stopped == true) {
|
||||||
|
log_error("video streaming already stopped but streaming_thread is not NULL");
|
||||||
|
assert(streaming_stopped == true);
|
||||||
|
}
|
||||||
|
log_warn("video streaming already started");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
pthread_t *new_thread = malloc(sizeof(pthread_t));
|
||||||
|
if (new_thread == NULL)
|
||||||
|
{
|
||||||
|
log_error("Failed to allocate memory for streaming thread");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
set_streaming_flag(true);
|
||||||
|
int result = pthread_create(new_thread, NULL, run_video_stream, NULL);
|
||||||
|
if (result != 0)
|
||||||
|
{
|
||||||
|
log_error("Failed to create streaming thread: %s", strerror(result));
|
||||||
|
set_streaming_flag(false);
|
||||||
|
free(new_thread);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Only set streaming_thread after successful creation
|
||||||
|
streaming_thread = new_thread;
|
||||||
|
}
|
||||||
|
|
||||||
|
void video_stop_streaming()
|
||||||
|
{
|
||||||
|
if (streaming_thread == NULL) {
|
||||||
|
log_info("video streaming already stopped");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
log_info("stopping video streaming");
|
||||||
|
set_streaming_flag(false);
|
||||||
|
|
||||||
|
log_info("waiting for video streaming thread to exit");
|
||||||
|
int attempts = 0;
|
||||||
|
while (!streaming_stopped && attempts < 30) {
|
||||||
|
usleep(100000); // 100ms
|
||||||
|
attempts++;
|
||||||
|
}
|
||||||
|
if (!streaming_stopped) {
|
||||||
|
log_error("video streaming thread did not exit after 30s");
|
||||||
|
}
|
||||||
|
|
||||||
|
pthread_join(*streaming_thread, NULL);
|
||||||
|
free(streaming_thread);
|
||||||
|
streaming_thread = NULL;
|
||||||
|
|
||||||
|
log_info("video streaming stopped");
|
||||||
|
}
|
||||||
|
|
||||||
|
void video_restart_streaming()
|
||||||
|
{
|
||||||
|
if (get_streaming_flag() == true)
|
||||||
|
{
|
||||||
|
log_info("restarting video streaming");
|
||||||
|
video_stop_streaming();
|
||||||
|
}
|
||||||
|
video_start_streaming();
|
||||||
|
}
|
||||||
|
|
||||||
|
void *run_detect_format(void *arg)
|
||||||
|
{
|
||||||
|
struct v4l2_event_subscription sub;
|
||||||
|
struct v4l2_event ev;
|
||||||
|
struct v4l2_dv_timings dv_timings;
|
||||||
|
|
||||||
|
memset(&sub, 0, sizeof(sub));
|
||||||
|
sub.type = V4L2_EVENT_SOURCE_CHANGE;
|
||||||
|
if (ioctl(sub_dev_fd, VIDIOC_SUBSCRIBE_EVENT, &sub) == -1)
|
||||||
|
{
|
||||||
|
log_error("cannot subscribe to event");
|
||||||
|
goto exit;
|
||||||
|
}
|
||||||
|
|
||||||
|
while (!should_exit)
|
||||||
|
{
|
||||||
|
ensure_sleep_mode_disabled();
|
||||||
|
|
||||||
|
memset(&dv_timings, 0, sizeof(dv_timings));
|
||||||
|
if (ioctl(sub_dev_fd, VIDIOC_QUERY_DV_TIMINGS, &dv_timings) != 0)
|
||||||
|
{
|
||||||
|
detected_signal = false;
|
||||||
|
if (errno == ENOLINK)
|
||||||
|
{
|
||||||
|
// No timings could be detected because no signal was found.
|
||||||
|
log_info("HDMI status: no signal");
|
||||||
|
video_report_format(false, "no_signal", 0, 0, 0);
|
||||||
|
}
|
||||||
|
else if (errno == ENOLCK)
|
||||||
|
{
|
||||||
|
// The signal was unstable and the hardware could not lock on to it.
|
||||||
|
log_info("HDMI status: no lock");
|
||||||
|
video_report_format(false, "no_lock", 0, 0, 0);
|
||||||
|
}
|
||||||
|
else if (errno == ERANGE)
|
||||||
|
{
|
||||||
|
// Timings were found, but they are out of range of the hardware capabilities.
|
||||||
|
log_warn("HDMI status: out of range");
|
||||||
|
video_report_format(false, "out_of_range", 0, 0, 0);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
log_error("error VIDIOC_QUERY_DV_TIMINGS: %s", strerror(errno));
|
||||||
|
sleep(1);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
log_info("Active width: %d", dv_timings.bt.width);
|
||||||
|
log_info("Active height: %d", dv_timings.bt.height);
|
||||||
|
double frames_per_second = (double)dv_timings.bt.pixelclock /
|
||||||
|
((dv_timings.bt.height + dv_timings.bt.vfrontporch + dv_timings.bt.vsync +
|
||||||
|
dv_timings.bt.vbackporch) *
|
||||||
|
(dv_timings.bt.width + dv_timings.bt.hfrontporch + dv_timings.bt.hsync +
|
||||||
|
dv_timings.bt.hbackporch));
|
||||||
|
log_info("Frames per second: %.2f fps", frames_per_second);
|
||||||
|
|
||||||
|
bool should_restart = dv_timings.bt.width != detected_width || dv_timings.bt.height != detected_height || !detected_signal;
|
||||||
|
|
||||||
|
detected_width = dv_timings.bt.width;
|
||||||
|
detected_height = dv_timings.bt.height;
|
||||||
|
detected_signal = true;
|
||||||
|
video_report_format(true, NULL, detected_width, detected_height, frames_per_second);
|
||||||
|
|
||||||
|
if (should_restart) {
|
||||||
|
log_info("restarting video streaming due to format change");
|
||||||
|
video_restart_streaming();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
memset(&ev, 0, sizeof(ev));
|
||||||
|
if (ioctl(sub_dev_fd, VIDIOC_DQEVENT, &ev) != 0)
|
||||||
|
{
|
||||||
|
log_error("failed to VIDIOC_DQEVENT: %s", strerror(errno));
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
log_info("New event of type %u", ev.type);
|
||||||
|
if (ev.type != V4L2_EVENT_SOURCE_CHANGE)
|
||||||
|
{
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
log_info("source change detected!");
|
||||||
|
}
|
||||||
|
exit:
|
||||||
|
close(sub_dev_fd);
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void video_set_quality_factor(float factor)
|
||||||
|
{
|
||||||
|
quality_factor = factor;
|
||||||
|
|
||||||
|
// TODO: update venc bitrate without stopping streaming
|
||||||
|
video_restart_streaming();
|
||||||
|
}
|
||||||
|
|
||||||
|
float video_get_quality_factor() {
|
||||||
|
return quality_factor;
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,48 @@
|
||||||
|
#ifndef VIDEO_DAEMON_VIDEO_H
|
||||||
|
#define VIDEO_DAEMON_VIDEO_H
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Initialize the video subsystem
|
||||||
|
*
|
||||||
|
* @return int 0 on success, -1 on failure
|
||||||
|
*/
|
||||||
|
int video_init(float quality_factor);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Shutdown the video subsystem
|
||||||
|
*/
|
||||||
|
void video_shutdown();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Run the detect format thread
|
||||||
|
*
|
||||||
|
* @param arg The argument to pass to the thread
|
||||||
|
* @return void* The result of the thread
|
||||||
|
*/
|
||||||
|
void *run_detect_format(void *arg);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Start the video streaming
|
||||||
|
*/
|
||||||
|
void video_start_streaming();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Stop the video streaming
|
||||||
|
*/
|
||||||
|
void video_stop_streaming();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Set the quality factor of the video
|
||||||
|
*
|
||||||
|
* @param factor The quality factor to set
|
||||||
|
*/
|
||||||
|
void video_set_quality_factor(float factor);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Get the quality factor of the video
|
||||||
|
*
|
||||||
|
* @return float The quality factor of the video
|
||||||
|
*/
|
||||||
|
float video_get_quality_factor();
|
||||||
|
|
||||||
|
#endif //VIDEO_DAEMON_VIDEO_H
|
||||||
|
|
@ -0,0 +1,397 @@
|
||||||
|
//go:build linux
|
||||||
|
|
||||||
|
package native
|
||||||
|
|
||||||
|
import (
|
||||||
|
"fmt"
|
||||||
|
"sync"
|
||||||
|
"unsafe"
|
||||||
|
|
||||||
|
"github.com/rs/zerolog"
|
||||||
|
)
|
||||||
|
|
||||||
|
/*
|
||||||
|
#cgo LDFLAGS: -Lcgo/lib -ljknative -llvgl
|
||||||
|
#cgo CFLAGS: -Icgo/include
|
||||||
|
#include "ctrl.h"
|
||||||
|
#include <stdlib.h>
|
||||||
|
|
||||||
|
typedef const char cchar_t;
|
||||||
|
typedef const uint8_t cuint8_t;
|
||||||
|
|
||||||
|
extern void jetkvm_go_log_handler(int level, cchar_t *filename, cchar_t *funcname, int line, cchar_t *message);
|
||||||
|
static inline void jetkvm_cgo_setup_log_handler() {
|
||||||
|
jetkvm_set_log_handler(&jetkvm_go_log_handler);
|
||||||
|
}
|
||||||
|
|
||||||
|
extern void jetkvm_go_video_state_handler(jetkvm_video_state_t *state);
|
||||||
|
static inline void jetkvm_cgo_setup_video_state_handler() {
|
||||||
|
jetkvm_set_video_state_handler(&jetkvm_go_video_state_handler);
|
||||||
|
}
|
||||||
|
|
||||||
|
extern void jetkvm_go_video_handler(cuint8_t *frame, ssize_t len);
|
||||||
|
static inline void jetkvm_cgo_setup_video_handler() {
|
||||||
|
jetkvm_set_video_handler(&jetkvm_go_video_handler);
|
||||||
|
}
|
||||||
|
|
||||||
|
extern void jetkvm_go_indev_handler(int code);
|
||||||
|
static inline void jetkvm_cgo_setup_indev_handler() {
|
||||||
|
jetkvm_set_indev_handler(&jetkvm_go_indev_handler);
|
||||||
|
}
|
||||||
|
|
||||||
|
extern void jetkvm_go_rpc_handler(cchar_t *method, cchar_t *params);
|
||||||
|
static inline void jetkvm_cgo_setup_rpc_handler() {
|
||||||
|
jetkvm_set_rpc_handler(&jetkvm_go_rpc_handler);
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
import "C"
|
||||||
|
|
||||||
|
var cgoLock sync.Mutex
|
||||||
|
|
||||||
|
//export jetkvm_go_video_state_handler
|
||||||
|
func jetkvm_go_video_state_handler(state *C.jetkvm_video_state_t) {
|
||||||
|
videoState := VideoState{
|
||||||
|
Ready: bool(state.ready),
|
||||||
|
Error: C.GoString(state.error),
|
||||||
|
Width: int(state.width),
|
||||||
|
Height: int(state.height),
|
||||||
|
FramePerSecond: float64(state.frame_per_second),
|
||||||
|
}
|
||||||
|
videoStateChan <- videoState
|
||||||
|
}
|
||||||
|
|
||||||
|
//export jetkvm_go_log_handler
|
||||||
|
func jetkvm_go_log_handler(level C.int, filename *C.cchar_t, funcname *C.cchar_t, line C.int, message *C.cchar_t) {
|
||||||
|
logMessage := nativeLogMessage{
|
||||||
|
Level: zerolog.Level(level),
|
||||||
|
Message: C.GoString(message),
|
||||||
|
File: C.GoString(filename),
|
||||||
|
FuncName: C.GoString(funcname),
|
||||||
|
Line: int(line),
|
||||||
|
}
|
||||||
|
|
||||||
|
logChan <- logMessage
|
||||||
|
}
|
||||||
|
|
||||||
|
//export jetkvm_go_video_handler
|
||||||
|
func jetkvm_go_video_handler(frame *C.cuint8_t, len C.ssize_t) {
|
||||||
|
videoFrameChan <- C.GoBytes(unsafe.Pointer(frame), C.int(len))
|
||||||
|
}
|
||||||
|
|
||||||
|
//export jetkvm_go_indev_handler
|
||||||
|
func jetkvm_go_indev_handler(code C.int) {
|
||||||
|
indevEventChan <- int(code)
|
||||||
|
}
|
||||||
|
|
||||||
|
//export jetkvm_go_rpc_handler
|
||||||
|
func jetkvm_go_rpc_handler(method *C.cchar_t, params *C.cchar_t) {
|
||||||
|
rpcEventChan <- C.GoString(method)
|
||||||
|
}
|
||||||
|
|
||||||
|
var eventCodeToNameMap = map[int]string{}
|
||||||
|
|
||||||
|
func uiEventCodeToName(code int) string {
|
||||||
|
name, ok := eventCodeToNameMap[code]
|
||||||
|
if !ok {
|
||||||
|
cCode := C.int(code)
|
||||||
|
cName := C.jetkvm_ui_event_code_to_name(cCode)
|
||||||
|
name = C.GoString(cName)
|
||||||
|
eventCodeToNameMap[code] = name
|
||||||
|
}
|
||||||
|
|
||||||
|
return name
|
||||||
|
}
|
||||||
|
|
||||||
|
func setUpNativeHandlers() {
|
||||||
|
cgoLock.Lock()
|
||||||
|
defer cgoLock.Unlock()
|
||||||
|
|
||||||
|
C.jetkvm_cgo_setup_log_handler()
|
||||||
|
C.jetkvm_cgo_setup_video_state_handler()
|
||||||
|
C.jetkvm_cgo_setup_video_handler()
|
||||||
|
C.jetkvm_cgo_setup_indev_handler()
|
||||||
|
C.jetkvm_cgo_setup_rpc_handler()
|
||||||
|
}
|
||||||
|
|
||||||
|
func uiInit(rotation uint16) {
|
||||||
|
cgoLock.Lock()
|
||||||
|
defer cgoLock.Unlock()
|
||||||
|
|
||||||
|
cRotation := C.u_int16_t(rotation)
|
||||||
|
|
||||||
|
C.jetkvm_ui_init(cRotation)
|
||||||
|
}
|
||||||
|
|
||||||
|
func uiTick() {
|
||||||
|
cgoLock.Lock()
|
||||||
|
defer cgoLock.Unlock()
|
||||||
|
|
||||||
|
C.jetkvm_ui_tick()
|
||||||
|
}
|
||||||
|
|
||||||
|
func videoInit(factor float64) error {
|
||||||
|
cgoLock.Lock()
|
||||||
|
defer cgoLock.Unlock()
|
||||||
|
|
||||||
|
factorC := C.float(factor)
|
||||||
|
|
||||||
|
ret := C.jetkvm_video_init(factorC)
|
||||||
|
if ret != 0 {
|
||||||
|
return fmt.Errorf("failed to initialize video: %d", ret)
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func videoShutdown() {
|
||||||
|
cgoLock.Lock()
|
||||||
|
defer cgoLock.Unlock()
|
||||||
|
|
||||||
|
C.jetkvm_video_shutdown()
|
||||||
|
}
|
||||||
|
|
||||||
|
func videoStart() {
|
||||||
|
cgoLock.Lock()
|
||||||
|
defer cgoLock.Unlock()
|
||||||
|
|
||||||
|
C.jetkvm_video_start()
|
||||||
|
}
|
||||||
|
|
||||||
|
func videoStop() {
|
||||||
|
cgoLock.Lock()
|
||||||
|
defer cgoLock.Unlock()
|
||||||
|
|
||||||
|
C.jetkvm_video_stop()
|
||||||
|
}
|
||||||
|
|
||||||
|
func videoLogStatus() string {
|
||||||
|
cgoLock.Lock()
|
||||||
|
defer cgoLock.Unlock()
|
||||||
|
|
||||||
|
logStatus := C.jetkvm_video_log_status()
|
||||||
|
defer C.free(unsafe.Pointer(logStatus))
|
||||||
|
|
||||||
|
return C.GoString(logStatus)
|
||||||
|
}
|
||||||
|
|
||||||
|
func uiSetVar(name string, value string) {
|
||||||
|
cgoLock.Lock()
|
||||||
|
defer cgoLock.Unlock()
|
||||||
|
|
||||||
|
nameCStr := C.CString(name)
|
||||||
|
defer C.free(unsafe.Pointer(nameCStr))
|
||||||
|
|
||||||
|
valueCStr := C.CString(value)
|
||||||
|
defer C.free(unsafe.Pointer(valueCStr))
|
||||||
|
|
||||||
|
C.jetkvm_ui_set_var(nameCStr, valueCStr)
|
||||||
|
}
|
||||||
|
|
||||||
|
func uiGetVar(name string) string {
|
||||||
|
cgoLock.Lock()
|
||||||
|
defer cgoLock.Unlock()
|
||||||
|
|
||||||
|
nameCStr := C.CString(name)
|
||||||
|
defer C.free(unsafe.Pointer(nameCStr))
|
||||||
|
|
||||||
|
return C.GoString(C.jetkvm_ui_get_var(nameCStr))
|
||||||
|
}
|
||||||
|
|
||||||
|
func uiSwitchToScreen(screen string) {
|
||||||
|
cgoLock.Lock()
|
||||||
|
defer cgoLock.Unlock()
|
||||||
|
|
||||||
|
screenCStr := C.CString(screen)
|
||||||
|
defer C.free(unsafe.Pointer(screenCStr))
|
||||||
|
C.jetkvm_ui_load_screen(screenCStr)
|
||||||
|
}
|
||||||
|
|
||||||
|
func uiGetCurrentScreen() string {
|
||||||
|
cgoLock.Lock()
|
||||||
|
defer cgoLock.Unlock()
|
||||||
|
|
||||||
|
screenCStr := C.jetkvm_ui_get_current_screen()
|
||||||
|
return C.GoString(screenCStr)
|
||||||
|
}
|
||||||
|
|
||||||
|
func uiObjAddState(objName string, state string) (bool, error) {
|
||||||
|
cgoLock.Lock()
|
||||||
|
defer cgoLock.Unlock()
|
||||||
|
|
||||||
|
objNameCStr := C.CString(objName)
|
||||||
|
defer C.free(unsafe.Pointer(objNameCStr))
|
||||||
|
stateCStr := C.CString(state)
|
||||||
|
defer C.free(unsafe.Pointer(stateCStr))
|
||||||
|
C.jetkvm_ui_add_state(objNameCStr, stateCStr)
|
||||||
|
return true, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func uiObjClearState(objName string, state string) (bool, error) {
|
||||||
|
cgoLock.Lock()
|
||||||
|
defer cgoLock.Unlock()
|
||||||
|
|
||||||
|
objNameCStr := C.CString(objName)
|
||||||
|
defer C.free(unsafe.Pointer(objNameCStr))
|
||||||
|
stateCStr := C.CString(state)
|
||||||
|
defer C.free(unsafe.Pointer(stateCStr))
|
||||||
|
C.jetkvm_ui_clear_state(objNameCStr, stateCStr)
|
||||||
|
return true, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func uiGetLVGLVersion() string {
|
||||||
|
cgoLock.Lock()
|
||||||
|
defer cgoLock.Unlock()
|
||||||
|
|
||||||
|
return C.GoString(C.jetkvm_ui_get_lvgl_version())
|
||||||
|
}
|
||||||
|
|
||||||
|
// TODO: use Enum instead of string but it's not a hot path and performance is not a concern now
|
||||||
|
func uiObjAddFlag(objName string, flag string) (bool, error) {
|
||||||
|
cgoLock.Lock()
|
||||||
|
defer cgoLock.Unlock()
|
||||||
|
|
||||||
|
objNameCStr := C.CString(objName)
|
||||||
|
defer C.free(unsafe.Pointer(objNameCStr))
|
||||||
|
flagCStr := C.CString(flag)
|
||||||
|
defer C.free(unsafe.Pointer(flagCStr))
|
||||||
|
C.jetkvm_ui_add_flag(objNameCStr, flagCStr)
|
||||||
|
return true, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func uiObjClearFlag(objName string, flag string) (bool, error) {
|
||||||
|
cgoLock.Lock()
|
||||||
|
defer cgoLock.Unlock()
|
||||||
|
|
||||||
|
objNameCStr := C.CString(objName)
|
||||||
|
defer C.free(unsafe.Pointer(objNameCStr))
|
||||||
|
flagCStr := C.CString(flag)
|
||||||
|
defer C.free(unsafe.Pointer(flagCStr))
|
||||||
|
C.jetkvm_ui_clear_flag(objNameCStr, flagCStr)
|
||||||
|
return true, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func uiObjHide(objName string) (bool, error) {
|
||||||
|
return uiObjAddFlag(objName, "LV_OBJ_FLAG_HIDDEN")
|
||||||
|
}
|
||||||
|
|
||||||
|
func uiObjShow(objName string) (bool, error) {
|
||||||
|
return uiObjClearFlag(objName, "LV_OBJ_FLAG_HIDDEN")
|
||||||
|
}
|
||||||
|
|
||||||
|
func uiObjSetOpacity(objName string, opacity int) (bool, error) {
|
||||||
|
cgoLock.Lock()
|
||||||
|
defer cgoLock.Unlock()
|
||||||
|
|
||||||
|
objNameCStr := C.CString(objName)
|
||||||
|
defer C.free(unsafe.Pointer(objNameCStr))
|
||||||
|
|
||||||
|
C.jetkvm_ui_set_opacity(objNameCStr, C.u_int8_t(opacity))
|
||||||
|
return true, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func uiObjFadeIn(objName string, duration uint32) (bool, error) {
|
||||||
|
cgoLock.Lock()
|
||||||
|
defer cgoLock.Unlock()
|
||||||
|
|
||||||
|
objNameCStr := C.CString(objName)
|
||||||
|
defer C.free(unsafe.Pointer(objNameCStr))
|
||||||
|
|
||||||
|
C.jetkvm_ui_fade_in(objNameCStr, C.u_int32_t(duration))
|
||||||
|
|
||||||
|
return true, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func uiObjFadeOut(objName string, duration uint32) (bool, error) {
|
||||||
|
cgoLock.Lock()
|
||||||
|
defer cgoLock.Unlock()
|
||||||
|
|
||||||
|
objNameCStr := C.CString(objName)
|
||||||
|
defer C.free(unsafe.Pointer(objNameCStr))
|
||||||
|
|
||||||
|
C.jetkvm_ui_fade_out(objNameCStr, C.u_int32_t(duration))
|
||||||
|
|
||||||
|
return true, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func uiLabelSetText(objName string, text string) (bool, error) {
|
||||||
|
cgoLock.Lock()
|
||||||
|
defer cgoLock.Unlock()
|
||||||
|
|
||||||
|
objNameCStr := C.CString(objName)
|
||||||
|
defer C.free(unsafe.Pointer(objNameCStr))
|
||||||
|
|
||||||
|
textCStr := C.CString(text)
|
||||||
|
defer C.free(unsafe.Pointer(textCStr))
|
||||||
|
|
||||||
|
ret := C.jetkvm_ui_set_text(objNameCStr, textCStr)
|
||||||
|
if ret < 0 {
|
||||||
|
return false, fmt.Errorf("failed to set text: %d", ret)
|
||||||
|
}
|
||||||
|
return ret == 0, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func uiImgSetSrc(objName string, src string) (bool, error) {
|
||||||
|
cgoLock.Lock()
|
||||||
|
defer cgoLock.Unlock()
|
||||||
|
|
||||||
|
objNameCStr := C.CString(objName)
|
||||||
|
defer C.free(unsafe.Pointer(objNameCStr))
|
||||||
|
|
||||||
|
srcCStr := C.CString(src)
|
||||||
|
defer C.free(unsafe.Pointer(srcCStr))
|
||||||
|
|
||||||
|
C.jetkvm_ui_set_image(objNameCStr, srcCStr)
|
||||||
|
|
||||||
|
return true, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func uiDispSetRotation(rotation uint16) (bool, error) {
|
||||||
|
cgoLock.Lock()
|
||||||
|
defer cgoLock.Unlock()
|
||||||
|
|
||||||
|
nativeLogger.Info().Uint16("rotation", rotation).Msg("setting rotation")
|
||||||
|
|
||||||
|
cRotation := C.u_int16_t(rotation)
|
||||||
|
|
||||||
|
C.jetkvm_ui_set_rotation(cRotation)
|
||||||
|
return true, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func videoGetStreamQualityFactor() (float64, error) {
|
||||||
|
cgoLock.Lock()
|
||||||
|
defer cgoLock.Unlock()
|
||||||
|
|
||||||
|
factor := C.jetkvm_video_get_quality_factor()
|
||||||
|
return float64(factor), nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func videoSetStreamQualityFactor(factor float64) error {
|
||||||
|
cgoLock.Lock()
|
||||||
|
defer cgoLock.Unlock()
|
||||||
|
|
||||||
|
C.jetkvm_video_set_quality_factor(C.float(factor))
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func videoGetEDID() (string, error) {
|
||||||
|
cgoLock.Lock()
|
||||||
|
defer cgoLock.Unlock()
|
||||||
|
|
||||||
|
edidCStr := C.jetkvm_video_get_edid_hex()
|
||||||
|
return C.GoString(edidCStr), nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func videoSetEDID(edid string) error {
|
||||||
|
cgoLock.Lock()
|
||||||
|
defer cgoLock.Unlock()
|
||||||
|
|
||||||
|
edidCStr := C.CString(edid)
|
||||||
|
defer C.free(unsafe.Pointer(edidCStr))
|
||||||
|
C.jetkvm_video_set_edid(edidCStr)
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
// DO NOT USE THIS FUNCTION IN PRODUCTION
|
||||||
|
// This is only for testing purposes
|
||||||
|
func crash() {
|
||||||
|
C.jetkvm_crash()
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,128 @@
|
||||||
|
//go:build !linux
|
||||||
|
|
||||||
|
package native
|
||||||
|
|
||||||
|
func panicPlatformNotSupported() {
|
||||||
|
panic("platform not supported")
|
||||||
|
}
|
||||||
|
|
||||||
|
func setUpNativeHandlers() {
|
||||||
|
panicPlatformNotSupported()
|
||||||
|
}
|
||||||
|
|
||||||
|
func uiSetVar(name string, value string) {
|
||||||
|
panicPlatformNotSupported()
|
||||||
|
}
|
||||||
|
|
||||||
|
func uiGetVar(name string) string {
|
||||||
|
panicPlatformNotSupported()
|
||||||
|
return ""
|
||||||
|
}
|
||||||
|
|
||||||
|
func uiSwitchToScreen(screen string) {
|
||||||
|
panicPlatformNotSupported()
|
||||||
|
}
|
||||||
|
|
||||||
|
func uiGetCurrentScreen() string {
|
||||||
|
panicPlatformNotSupported()
|
||||||
|
return ""
|
||||||
|
}
|
||||||
|
|
||||||
|
func uiObjAddState(objName string, state string) (bool, error) {
|
||||||
|
panicPlatformNotSupported()
|
||||||
|
return false, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func uiObjClearState(objName string, state string) (bool, error) {
|
||||||
|
panicPlatformNotSupported()
|
||||||
|
return false, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func uiObjAddFlag(objName string, flag string) (bool, error) {
|
||||||
|
panicPlatformNotSupported()
|
||||||
|
return false, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func uiObjClearFlag(objName string, flag string) (bool, error) {
|
||||||
|
panicPlatformNotSupported()
|
||||||
|
return false, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func uiObjHide(objName string) (bool, error) {
|
||||||
|
panicPlatformNotSupported()
|
||||||
|
return false, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func uiObjShow(objName string) (bool, error) {
|
||||||
|
panicPlatformNotSupported()
|
||||||
|
return false, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func uiObjSetOpacity(objName string, opacity int) (bool, error) {
|
||||||
|
panicPlatformNotSupported()
|
||||||
|
return false, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func uiObjFadeIn(objName string, duration uint32) (bool, error) {
|
||||||
|
panicPlatformNotSupported()
|
||||||
|
return false, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func uiObjFadeOut(objName string, duration uint32) (bool, error) {
|
||||||
|
panicPlatformNotSupported()
|
||||||
|
return false, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func uiLabelSetText(objName string, text string) (bool, error) {
|
||||||
|
panicPlatformNotSupported()
|
||||||
|
return false, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func uiImgSetSrc(objName string, src string) (bool, error) {
|
||||||
|
panicPlatformNotSupported()
|
||||||
|
return false, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func uiDispSetRotation(rotation uint16) (bool, error) {
|
||||||
|
panicPlatformNotSupported()
|
||||||
|
return false, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func uiEventCodeToName(code int) string {
|
||||||
|
panicPlatformNotSupported()
|
||||||
|
return ""
|
||||||
|
}
|
||||||
|
|
||||||
|
func uiGetLVGLVersion() string {
|
||||||
|
panicPlatformNotSupported()
|
||||||
|
return ""
|
||||||
|
}
|
||||||
|
|
||||||
|
func videoGetStreamQualityFactor() (float64, error) {
|
||||||
|
panicPlatformNotSupported()
|
||||||
|
return 0, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func videoSetStreamQualityFactor(factor float64) error {
|
||||||
|
panicPlatformNotSupported()
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func videoLogStatus() string {
|
||||||
|
panicPlatformNotSupported()
|
||||||
|
return ""
|
||||||
|
}
|
||||||
|
|
||||||
|
func videoGetEDID() (string, error) {
|
||||||
|
panicPlatformNotSupported()
|
||||||
|
return "", nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func videoSetEDID(edid string) error {
|
||||||
|
panicPlatformNotSupported()
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func crash() {
|
||||||
|
panicPlatformNotSupported()
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,80 @@
|
||||||
|
package native
|
||||||
|
|
||||||
|
import (
|
||||||
|
"time"
|
||||||
|
|
||||||
|
"github.com/rs/zerolog"
|
||||||
|
)
|
||||||
|
|
||||||
|
var (
|
||||||
|
videoFrameChan chan []byte = make(chan []byte)
|
||||||
|
videoStateChan chan VideoState = make(chan VideoState)
|
||||||
|
logChan chan nativeLogMessage = make(chan nativeLogMessage)
|
||||||
|
indevEventChan chan int = make(chan int)
|
||||||
|
rpcEventChan chan string = make(chan string)
|
||||||
|
)
|
||||||
|
|
||||||
|
func (n *Native) handleVideoFrameChan() {
|
||||||
|
lastFrame := time.Now()
|
||||||
|
for {
|
||||||
|
frame := <-videoFrameChan
|
||||||
|
now := time.Now()
|
||||||
|
sinceLastFrame := now.Sub(lastFrame)
|
||||||
|
lastFrame = now
|
||||||
|
n.onVideoFrameReceived(frame, sinceLastFrame)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (n *Native) handleVideoStateChan() {
|
||||||
|
for {
|
||||||
|
state := <-videoStateChan
|
||||||
|
n.onVideoStateChange(state)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (n *Native) handleLogChan() {
|
||||||
|
for {
|
||||||
|
entry := <-logChan
|
||||||
|
l := n.l.With().
|
||||||
|
Str("file", entry.File).
|
||||||
|
Str("func", entry.FuncName).
|
||||||
|
Int("line", entry.Line).
|
||||||
|
Logger()
|
||||||
|
|
||||||
|
switch entry.Level {
|
||||||
|
case zerolog.DebugLevel:
|
||||||
|
l.Debug().Msg(entry.Message)
|
||||||
|
case zerolog.InfoLevel:
|
||||||
|
l.Info().Msg(entry.Message)
|
||||||
|
case zerolog.WarnLevel:
|
||||||
|
l.Warn().Msg(entry.Message)
|
||||||
|
case zerolog.ErrorLevel:
|
||||||
|
l.Error().Msg(entry.Message)
|
||||||
|
case zerolog.PanicLevel:
|
||||||
|
l.Panic().Msg(entry.Message)
|
||||||
|
case zerolog.FatalLevel:
|
||||||
|
l.Fatal().Msg(entry.Message)
|
||||||
|
case zerolog.TraceLevel:
|
||||||
|
l.Trace().Msg(entry.Message)
|
||||||
|
case zerolog.NoLevel:
|
||||||
|
l.Info().Msg(entry.Message)
|
||||||
|
default:
|
||||||
|
l.Info().Msg(entry.Message)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (n *Native) handleIndevEventChan() {
|
||||||
|
for {
|
||||||
|
event := <-indevEventChan
|
||||||
|
name := uiEventCodeToName(event)
|
||||||
|
n.onIndevEvent(name)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (n *Native) handleRpcEventChan() {
|
||||||
|
for {
|
||||||
|
event := <-rpcEventChan
|
||||||
|
n.onRpcEvent(event)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
cgo/ctrl.h
|
||||||
|
|
@ -0,0 +1,148 @@
|
||||||
|
package native
|
||||||
|
|
||||||
|
import (
|
||||||
|
"slices"
|
||||||
|
"time"
|
||||||
|
)
|
||||||
|
|
||||||
|
func (n *Native) setUIVars() {
|
||||||
|
uiSetVar("app_version", n.appVersion.String())
|
||||||
|
uiSetVar("system_version", n.systemVersion.String())
|
||||||
|
}
|
||||||
|
|
||||||
|
func (n *Native) initUI() {
|
||||||
|
uiInit(n.displayRotation)
|
||||||
|
n.setUIVars()
|
||||||
|
}
|
||||||
|
|
||||||
|
func (n *Native) tickUI() {
|
||||||
|
for {
|
||||||
|
uiTick()
|
||||||
|
time.Sleep(5 * time.Millisecond)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// GetLVGLVersion returns the LVGL version
|
||||||
|
func (n *Native) GetLVGLVersion() (string, error) {
|
||||||
|
return uiGetLVGLVersion(), nil
|
||||||
|
}
|
||||||
|
|
||||||
|
// UIObjHide hides the object
|
||||||
|
func (n *Native) UIObjHide(objName string) (bool, error) {
|
||||||
|
return uiObjHide(objName)
|
||||||
|
}
|
||||||
|
|
||||||
|
// UIObjShow shows the object
|
||||||
|
func (n *Native) UIObjShow(objName string) (bool, error) {
|
||||||
|
return uiObjShow(objName)
|
||||||
|
}
|
||||||
|
|
||||||
|
// UISetVar sets the variable
|
||||||
|
func (n *Native) UISetVar(name string, value string) {
|
||||||
|
uiSetVar(name, value)
|
||||||
|
}
|
||||||
|
|
||||||
|
// UIGetVar gets the variable
|
||||||
|
func (n *Native) UIGetVar(name string) string {
|
||||||
|
return uiGetVar(name)
|
||||||
|
}
|
||||||
|
|
||||||
|
// UIObjAddState adds the state to the object
|
||||||
|
func (n *Native) UIObjAddState(objName string, state string) (bool, error) {
|
||||||
|
return uiObjAddState(objName, state)
|
||||||
|
}
|
||||||
|
|
||||||
|
// UIObjClearState clears the state from the object
|
||||||
|
func (n *Native) UIObjClearState(objName string, state string) (bool, error) {
|
||||||
|
return uiObjClearState(objName, state)
|
||||||
|
}
|
||||||
|
|
||||||
|
// UIObjAddFlag adds the flag to the object
|
||||||
|
func (n *Native) UIObjAddFlag(objName string, flag string) (bool, error) {
|
||||||
|
return uiObjAddFlag(objName, flag)
|
||||||
|
}
|
||||||
|
|
||||||
|
// UIObjClearFlag clears the flag from the object
|
||||||
|
func (n *Native) UIObjClearFlag(objName string, flag string) (bool, error) {
|
||||||
|
return uiObjClearFlag(objName, flag)
|
||||||
|
}
|
||||||
|
|
||||||
|
// UIObjSetOpacity sets the opacity of the object
|
||||||
|
func (n *Native) UIObjSetOpacity(objName string, opacity int) (bool, error) {
|
||||||
|
return uiObjSetOpacity(objName, opacity)
|
||||||
|
}
|
||||||
|
|
||||||
|
// UIObjFadeIn fades in the object
|
||||||
|
func (n *Native) UIObjFadeIn(objName string, duration uint32) (bool, error) {
|
||||||
|
return uiObjFadeIn(objName, duration)
|
||||||
|
}
|
||||||
|
|
||||||
|
// UIObjFadeOut fades out the object
|
||||||
|
func (n *Native) UIObjFadeOut(objName string, duration uint32) (bool, error) {
|
||||||
|
return uiObjFadeOut(objName, duration)
|
||||||
|
}
|
||||||
|
|
||||||
|
// UIObjSetLabelText sets the text of the object
|
||||||
|
func (n *Native) UIObjSetLabelText(objName string, text string) (bool, error) {
|
||||||
|
return uiLabelSetText(objName, text)
|
||||||
|
}
|
||||||
|
|
||||||
|
// UIObjSetImageSrc sets the image of the object
|
||||||
|
func (n *Native) UIObjSetImageSrc(objName string, image string) (bool, error) {
|
||||||
|
return uiImgSetSrc(objName, image)
|
||||||
|
}
|
||||||
|
|
||||||
|
// DisplaySetRotation sets the rotation of the display
|
||||||
|
func (n *Native) DisplaySetRotation(rotation uint16) (bool, error) {
|
||||||
|
return uiDispSetRotation(rotation)
|
||||||
|
}
|
||||||
|
|
||||||
|
// UpdateLabelIfChanged updates the label if the text has changed
|
||||||
|
func (n *Native) UpdateLabelIfChanged(objName string, newText string) {
|
||||||
|
l := n.lD.Trace().Str("obj", objName).Str("text", newText)
|
||||||
|
|
||||||
|
changed, err := n.UIObjSetLabelText(objName, newText)
|
||||||
|
if err != nil {
|
||||||
|
n.lD.Warn().Str("obj", objName).Str("text", newText).Err(err).Msg("failed to update label")
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
if changed {
|
||||||
|
l.Msg("label changed")
|
||||||
|
} else {
|
||||||
|
l.Msg("label not changed")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// UpdateLabelAndChangeVisibility updates the label and changes the visibility of the object
|
||||||
|
func (n *Native) UpdateLabelAndChangeVisibility(objName string, newText string) {
|
||||||
|
n.UpdateLabelIfChanged(objName, newText)
|
||||||
|
|
||||||
|
containerName := objName + "_container"
|
||||||
|
if newText == "" {
|
||||||
|
_, _ = n.UIObjHide(objName)
|
||||||
|
_, _ = n.UIObjHide(containerName)
|
||||||
|
} else {
|
||||||
|
_, _ = n.UIObjShow(objName)
|
||||||
|
_, _ = n.UIObjShow(containerName)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// SwitchToScreenIf switches to the screen if the screen name is different from the current screen and the screen name is in the shouldSwitch list
|
||||||
|
func (n *Native) SwitchToScreenIf(screenName string, shouldSwitch []string) {
|
||||||
|
currentScreen := uiGetCurrentScreen()
|
||||||
|
if currentScreen == screenName {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if len(shouldSwitch) > 0 && !slices.Contains(shouldSwitch, currentScreen) {
|
||||||
|
n.lD.Trace().Str("from", currentScreen).Str("to", screenName).Msg("skipping screen switch")
|
||||||
|
return
|
||||||
|
}
|
||||||
|
n.lD.Info().Str("from", currentScreen).Str("to", screenName).Msg("switching screen")
|
||||||
|
uiSwitchToScreen(screenName)
|
||||||
|
}
|
||||||
|
|
||||||
|
// SwitchToScreenIfDifferent switches to the screen if the screen name is different from the current screen
|
||||||
|
func (n *Native) SwitchToScreenIfDifferent(screenName string) {
|
||||||
|
n.SwitchToScreenIf(screenName, []string{})
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
src/ui
|
||||||
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
|
|
@ -0,0 +1,194 @@
|
||||||
|
#include "actions.h"
|
||||||
|
#include "screens.h"
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <string.h>
|
||||||
|
#include "ui.h"
|
||||||
|
#include "vars.h"
|
||||||
|
|
||||||
|
int handle_gesture_screen_switch(lv_event_t *e, lv_dir_t direction, int screenId) {
|
||||||
|
lv_event_code_t event_code = lv_event_get_code(e);
|
||||||
|
if (event_code != LV_EVENT_GESTURE) {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (lv_indev_get_gesture_dir(lv_indev_get_act()) != direction) {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
lv_indev_wait_release(lv_indev_get_act());
|
||||||
|
loadScreen(screenId);
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
void handle_gesture_main_screen_switch(lv_event_t *e, lv_dir_t direction) {
|
||||||
|
const char *main_screen = get_var_main_screen();
|
||||||
|
if (strcmp(main_screen, "home_screen") == 0) {
|
||||||
|
loadScreen(SCREEN_ID_HOME_SCREEN);
|
||||||
|
} else if (strcmp(main_screen, "no_network_screen") == 0) {
|
||||||
|
loadScreen(SCREEN_ID_NO_NETWORK_SCREEN);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void action_switch_to_menu(lv_event_t *e) {
|
||||||
|
loadScreen(SCREEN_ID_MENU_SCREEN);
|
||||||
|
}
|
||||||
|
|
||||||
|
void action_switch_to_advanced_menu(lv_event_t *e) {
|
||||||
|
loadScreen(SCREEN_ID_MENU_ADVANCED_SCREEN);
|
||||||
|
}
|
||||||
|
|
||||||
|
void action_switch_to_status(lv_event_t *e) {
|
||||||
|
loadScreen(SCREEN_ID_STATUS_SCREEN);
|
||||||
|
}
|
||||||
|
|
||||||
|
void action_switch_to_about(lv_event_t *e) {
|
||||||
|
loadScreen(SCREEN_ID_ABOUT_SCREEN);
|
||||||
|
}
|
||||||
|
|
||||||
|
void action_switch_to_reset_config(lv_event_t *e) {
|
||||||
|
loadScreen(SCREEN_ID_RESET_CONFIG_SCREEN);
|
||||||
|
}
|
||||||
|
|
||||||
|
void action_switch_to_dhcpc(lv_event_t *e) {
|
||||||
|
loadScreen(SCREEN_ID_SWITCH_DHCP_CLIENT_SCREEN);
|
||||||
|
}
|
||||||
|
|
||||||
|
void action_switch_to_reboot(lv_event_t *e) {
|
||||||
|
loadScreen(SCREEN_ID_REBOOT_SCREEN);
|
||||||
|
}
|
||||||
|
|
||||||
|
void action_menu_screen_gesture(lv_event_t * e) {
|
||||||
|
handle_gesture_main_screen_switch(e, LV_DIR_RIGHT);
|
||||||
|
}
|
||||||
|
|
||||||
|
void action_menu_advanced_screen_gesture(lv_event_t * e) {
|
||||||
|
handle_gesture_screen_switch(e, LV_DIR_RIGHT, SCREEN_ID_MENU_SCREEN);
|
||||||
|
}
|
||||||
|
|
||||||
|
void action_reset_config_screen_gesture(lv_event_t * e) {
|
||||||
|
handle_gesture_screen_switch(e, LV_DIR_RIGHT, SCREEN_ID_MENU_SCREEN);
|
||||||
|
}
|
||||||
|
|
||||||
|
void action_home_screen_gesture(lv_event_t * e) {
|
||||||
|
handle_gesture_screen_switch(e, LV_DIR_LEFT, SCREEN_ID_MENU_SCREEN);
|
||||||
|
}
|
||||||
|
|
||||||
|
void action_about_screen_gesture(lv_event_t * e) {
|
||||||
|
handle_gesture_screen_switch(e, LV_DIR_RIGHT, SCREEN_ID_MENU_SCREEN);
|
||||||
|
}
|
||||||
|
|
||||||
|
// user_data doesn't seem to be working, so we use a global variable here
|
||||||
|
static uint32_t t_reset_config;
|
||||||
|
static uint32_t t_reboot;
|
||||||
|
static uint32_t t_dhcpc;
|
||||||
|
|
||||||
|
static bool b_reboot = false;
|
||||||
|
static bool b_reset_config = false;
|
||||||
|
static bool b_dhcpc = false;
|
||||||
|
|
||||||
|
static bool b_reboot_lock = false;
|
||||||
|
static bool b_reset_config_lock = false;
|
||||||
|
static bool b_dhcpc_lock = false;
|
||||||
|
|
||||||
|
const int RESET_CONFIG_HOLD_TIME = 10;
|
||||||
|
const int REBOOT_HOLD_TIME = 5;
|
||||||
|
const int DHCPC_HOLD_TIME = 5;
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
uint32_t *start_time;
|
||||||
|
bool *completed;
|
||||||
|
bool *lock;
|
||||||
|
int hold_time_seconds;
|
||||||
|
const char *rpc_method;
|
||||||
|
lv_obj_t *button_obj;
|
||||||
|
lv_obj_t *spinner_obj;
|
||||||
|
lv_obj_t *label_obj;
|
||||||
|
const char *default_text;
|
||||||
|
} hold_action_config_t;
|
||||||
|
|
||||||
|
static void handle_hold_action(lv_event_t *e, hold_action_config_t *config) {
|
||||||
|
lv_event_code_t event_code = lv_event_get_code(e);
|
||||||
|
|
||||||
|
if (event_code == LV_EVENT_PRESSED) {
|
||||||
|
*(config->start_time) = lv_tick_get();
|
||||||
|
}
|
||||||
|
else if (event_code == LV_EVENT_PRESSING) {
|
||||||
|
int remaining_time = config->hold_time_seconds * 1000 - lv_tick_elaps(*(config->start_time));
|
||||||
|
if (remaining_time <= 0) {
|
||||||
|
if (*(config->lock)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (config->button_obj && config->spinner_obj) {
|
||||||
|
lv_obj_add_flag(config->button_obj, LV_OBJ_FLAG_HIDDEN);
|
||||||
|
lv_obj_clear_flag(config->spinner_obj, LV_OBJ_FLAG_HIDDEN);
|
||||||
|
}
|
||||||
|
ui_call_rpc_handler(config->rpc_method, NULL);
|
||||||
|
*(config->lock) = true;
|
||||||
|
*(config->completed) = true;
|
||||||
|
} else {
|
||||||
|
*(config->completed) = false;
|
||||||
|
char buf[100];
|
||||||
|
int remaining_time_seconds = remaining_time / 1000;
|
||||||
|
if (remaining_time_seconds <= 1) {
|
||||||
|
remaining_time_seconds = 1;
|
||||||
|
}
|
||||||
|
sprintf(buf, "Press and hold for\n%d seconds", remaining_time_seconds);
|
||||||
|
lv_label_set_text(config->label_obj, buf);
|
||||||
|
}
|
||||||
|
} else if (event_code == LV_EVENT_RELEASED) {
|
||||||
|
if (*(config->lock)) {
|
||||||
|
*(config->lock) = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!*(config->completed)) {
|
||||||
|
lv_label_set_text(config->label_obj, config->default_text);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void action_reset_config(lv_event_t * e) {
|
||||||
|
hold_action_config_t config = {
|
||||||
|
.start_time = &t_reset_config,
|
||||||
|
.completed = &b_reset_config,
|
||||||
|
.lock = &b_reset_config_lock,
|
||||||
|
.hold_time_seconds = RESET_CONFIG_HOLD_TIME,
|
||||||
|
.rpc_method = "resetConfig",
|
||||||
|
.button_obj = objects.reset_config_button,
|
||||||
|
.spinner_obj = objects.reset_config_spinner,
|
||||||
|
.label_obj = objects.reset_config_label,
|
||||||
|
.default_text = "Press and hold for\n10 seconds"
|
||||||
|
};
|
||||||
|
|
||||||
|
handle_hold_action(e, &config);
|
||||||
|
}
|
||||||
|
|
||||||
|
void action_dhcpc(lv_event_t * e) {
|
||||||
|
hold_action_config_t config = {
|
||||||
|
.start_time = &t_dhcpc,
|
||||||
|
.completed = &b_dhcpc,
|
||||||
|
.lock = &b_dhcpc_lock,
|
||||||
|
.hold_time_seconds = DHCPC_HOLD_TIME,
|
||||||
|
.rpc_method = "toggleDHCPClient",
|
||||||
|
.button_obj = NULL, // No button/spinner for reboot
|
||||||
|
.spinner_obj = NULL,
|
||||||
|
.label_obj = objects.dhcpc_label,
|
||||||
|
.default_text = "Press and hold for\n5 seconds"
|
||||||
|
};
|
||||||
|
|
||||||
|
handle_hold_action(e, &config);
|
||||||
|
}
|
||||||
|
|
||||||
|
void action_reboot(lv_event_t * e) {
|
||||||
|
hold_action_config_t config = {
|
||||||
|
.start_time = &t_reboot,
|
||||||
|
.completed = &b_reboot,
|
||||||
|
.lock = &b_reboot_lock,
|
||||||
|
.hold_time_seconds = REBOOT_HOLD_TIME,
|
||||||
|
.rpc_method = "reboot",
|
||||||
|
.button_obj = NULL, // No button/spinner for reboot
|
||||||
|
.spinner_obj = NULL,
|
||||||
|
.label_obj = objects.reboot_label,
|
||||||
|
.default_text = "Press and hold for\n5 seconds"
|
||||||
|
};
|
||||||
|
|
||||||
|
handle_hold_action(e, &config);
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,35 @@
|
||||||
|
#ifndef EEZ_LVGL_UI_EVENTS_H
|
||||||
|
#define EEZ_LVGL_UI_EVENTS_H
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
extern int handle_gesture_screen_switch(lv_event_t *e, lv_dir_t direction, int screenId);
|
||||||
|
|
||||||
|
extern void action_switch_to_menu(lv_event_t * e);
|
||||||
|
extern void action_switch_to_advanced_menu(lv_event_t * e);
|
||||||
|
extern void action_switch_to_reset_config(lv_event_t * e);
|
||||||
|
extern void action_switch_to_about(lv_event_t * e);
|
||||||
|
extern void action_menu_screen_gesture(lv_event_t * e);
|
||||||
|
extern void action_home_screen_gesture(lv_event_t * e);
|
||||||
|
extern void action_menu_advanced_screen_gesture(lv_event_t * e);
|
||||||
|
extern void action_reset_config_screen_gesture(lv_event_t * e);
|
||||||
|
extern void action_about_screen_gesture(lv_event_t * e);
|
||||||
|
extern void action_switch_to_status(lv_event_t * e);
|
||||||
|
extern void action_common_click_event(lv_event_t * e);
|
||||||
|
extern void action_handle_common_press_event(lv_event_t * e);
|
||||||
|
extern void action_reset_config(lv_event_t * e);
|
||||||
|
extern void action_reboot(lv_event_t * e);
|
||||||
|
extern void action_switch_to_reboot(lv_event_t * e);
|
||||||
|
extern void action_dhcpc(lv_event_t * e);
|
||||||
|
extern void action_switch_to_dhcpc(lv_event_t * e);
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif /*EEZ_LVGL_UI_EVENTS_H*/
|
||||||
|
|
@ -0,0 +1,21 @@
|
||||||
|
#ifndef EEZ_LVGL_UI_FONTS_H
|
||||||
|
#define EEZ_LVGL_UI_FONTS_H
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
extern const lv_font_t ui_font_font_bold30;
|
||||||
|
extern const lv_font_t ui_font_font_book16;
|
||||||
|
extern const lv_font_t ui_font_font_book18;
|
||||||
|
extern const lv_font_t ui_font_font_book20;
|
||||||
|
extern const lv_font_t ui_font_font_book24;
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif /*EEZ_LVGL_UI_FONTS_H*/
|
||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
|
@ -0,0 +1,18 @@
|
||||||
|
#include "images.h"
|
||||||
|
|
||||||
|
const ext_img_desc_t images[14] = {
|
||||||
|
{ "logo", &img_logo },
|
||||||
|
{ "boot-logo-2", &img_boot_logo_2 },
|
||||||
|
{ "arrow-icon", &img_arrow_icon },
|
||||||
|
{ "back-caret", &img_back_caret },
|
||||||
|
{ "back-icon", &img_back_icon },
|
||||||
|
{ "check-icon", &img_check_icon },
|
||||||
|
{ "cloud_disconnected", &img_cloud_disconnected },
|
||||||
|
{ "cloud", &img_cloud },
|
||||||
|
{ "d2", &img_d2 },
|
||||||
|
{ "ethernet", &img_ethernet },
|
||||||
|
{ "hdmi", &img_hdmi },
|
||||||
|
{ "jetkvm", &img_jetkvm },
|
||||||
|
{ "usb", &img_usb },
|
||||||
|
{ "x-icon", &img_x_icon },
|
||||||
|
};
|
||||||
|
|
@ -0,0 +1,40 @@
|
||||||
|
#ifndef EEZ_LVGL_UI_IMAGES_H
|
||||||
|
#define EEZ_LVGL_UI_IMAGES_H
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
extern const lv_img_dsc_t img_logo;
|
||||||
|
extern const lv_img_dsc_t img_boot_logo_2;
|
||||||
|
extern const lv_img_dsc_t img_arrow_icon;
|
||||||
|
extern const lv_img_dsc_t img_back_caret;
|
||||||
|
extern const lv_img_dsc_t img_back_icon;
|
||||||
|
extern const lv_img_dsc_t img_check_icon;
|
||||||
|
extern const lv_img_dsc_t img_cloud_disconnected;
|
||||||
|
extern const lv_img_dsc_t img_cloud;
|
||||||
|
extern const lv_img_dsc_t img_d2;
|
||||||
|
extern const lv_img_dsc_t img_ethernet;
|
||||||
|
extern const lv_img_dsc_t img_hdmi;
|
||||||
|
extern const lv_img_dsc_t img_jetkvm;
|
||||||
|
extern const lv_img_dsc_t img_usb;
|
||||||
|
extern const lv_img_dsc_t img_x_icon;
|
||||||
|
|
||||||
|
#ifndef EXT_IMG_DESC_T
|
||||||
|
#define EXT_IMG_DESC_T
|
||||||
|
typedef struct _ext_img_desc_t {
|
||||||
|
const char *name;
|
||||||
|
const lv_img_dsc_t *img_dsc;
|
||||||
|
} ext_img_desc_t;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
extern const ext_img_desc_t images[14];
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif /*EEZ_LVGL_UI_IMAGES_H*/
|
||||||
|
|
@ -0,0 +1,64 @@
|
||||||
|
#ifdef __has_include
|
||||||
|
#if __has_include("lvgl.h")
|
||||||
|
#ifndef LV_LVGL_H_INCLUDE_SIMPLE
|
||||||
|
#define LV_LVGL_H_INCLUDE_SIMPLE
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(LV_LVGL_H_INCLUDE_SIMPLE)
|
||||||
|
#include "lvgl.h"
|
||||||
|
#elif defined(LV_BUILD_TEST)
|
||||||
|
#include "../lvgl.h"
|
||||||
|
#else
|
||||||
|
#include "lvgl/lvgl.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_ARROW_ICON
|
||||||
|
#define LV_ATTRIBUTE_IMG_ARROW_ICON
|
||||||
|
#endif
|
||||||
|
|
||||||
|
static const
|
||||||
|
LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_ARROW_ICON
|
||||||
|
uint8_t img_arrow_icon_map[] = {
|
||||||
|
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xaf,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x5f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xcf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x50,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xb0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xcf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_image_dsc_t img_arrow_icon = {
|
||||||
|
.header.magic = LV_IMAGE_HEADER_MAGIC,
|
||||||
|
.header.cf = LV_COLOR_FORMAT_ARGB8888,
|
||||||
|
.header.flags = 0,
|
||||||
|
.header.w = 21,
|
||||||
|
.header.h = 21,
|
||||||
|
.header.stride = 84,
|
||||||
|
.data_size = sizeof(img_arrow_icon_map),
|
||||||
|
.data = img_arrow_icon_map,
|
||||||
|
};
|
||||||
|
|
||||||
|
|
@ -0,0 +1,55 @@
|
||||||
|
#ifdef __has_include
|
||||||
|
#if __has_include("lvgl.h")
|
||||||
|
#ifndef LV_LVGL_H_INCLUDE_SIMPLE
|
||||||
|
#define LV_LVGL_H_INCLUDE_SIMPLE
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(LV_LVGL_H_INCLUDE_SIMPLE)
|
||||||
|
#include "lvgl.h"
|
||||||
|
#elif defined(LV_BUILD_TEST)
|
||||||
|
#include "../lvgl.h"
|
||||||
|
#else
|
||||||
|
#include "lvgl/lvgl.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_BACK_CARET
|
||||||
|
#define LV_ATTRIBUTE_IMG_BACK_CARET
|
||||||
|
#endif
|
||||||
|
|
||||||
|
static const
|
||||||
|
LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_BACK_CARET
|
||||||
|
uint8_t img_back_caret_map[] = {
|
||||||
|
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xd9,0x4e,0x1c,0x7f,0xd8,0x4e,0x1d,0xff,0xd7,0x4d,0x1d,0x60,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xd9,0x4e,0x1c,0x7f,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x50,0x1d,0x60,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xd9,0x4e,0x1c,0x7f,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x4e,0x1e,0x80,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xd9,0x4e,0x1c,0x7f,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x4e,0x1e,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0xd9,0x4e,0x1c,0x7f,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x4e,0x1e,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd7,0x4d,0x1d,0x60,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x4e,0x1e,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd7,0x50,0x1d,0x60,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd9,0x4e,0x1e,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0xd7,0x4e,0x1c,0x80,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd9,0x4e,0x1e,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xd7,0x4e,0x1c,0x80,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd9,0x4e,0x1e,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xd7,0x4e,0x1c,0x80,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd9,0x4e,0x1e,0x7f,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xd7,0x4e,0x1c,0x80,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x4d,0x1d,0x60,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xd7,0x4e,0x1c,0x80,0xd8,0x4e,0x1d,0xff,0xd7,0x50,0x1d,0x60,
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_image_dsc_t img_back_caret = {
|
||||||
|
.header.magic = LV_IMAGE_HEADER_MAGIC,
|
||||||
|
.header.cf = LV_COLOR_FORMAT_ARGB8888,
|
||||||
|
.header.flags = 0,
|
||||||
|
.header.w = 8,
|
||||||
|
.header.h = 12,
|
||||||
|
.header.stride = 32,
|
||||||
|
.data_size = sizeof(img_back_caret_map),
|
||||||
|
.data = img_back_caret_map,
|
||||||
|
};
|
||||||
|
|
||||||
|
|
@ -0,0 +1,60 @@
|
||||||
|
#ifdef __has_include
|
||||||
|
#if __has_include("lvgl.h")
|
||||||
|
#ifndef LV_LVGL_H_INCLUDE_SIMPLE
|
||||||
|
#define LV_LVGL_H_INCLUDE_SIMPLE
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(LV_LVGL_H_INCLUDE_SIMPLE)
|
||||||
|
#include "lvgl.h"
|
||||||
|
#elif defined(LV_BUILD_TEST)
|
||||||
|
#include "../lvgl.h"
|
||||||
|
#else
|
||||||
|
#include "lvgl/lvgl.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_BACK_ICON
|
||||||
|
#define LV_ATTRIBUTE_IMG_BACK_ICON
|
||||||
|
#endif
|
||||||
|
|
||||||
|
static const
|
||||||
|
LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_BACK_ICON
|
||||||
|
uint8_t img_back_icon_map[] = {
|
||||||
|
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0x50,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xaf,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x50,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xa0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xa0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xa0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xa0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x90,0xff,0xff,0xff,0x50,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_image_dsc_t img_back_icon = {
|
||||||
|
.header.magic = LV_IMAGE_HEADER_MAGIC,
|
||||||
|
.header.cf = LV_COLOR_FORMAT_ARGB8888,
|
||||||
|
.header.flags = 0,
|
||||||
|
.header.w = 17,
|
||||||
|
.header.h = 17,
|
||||||
|
.header.stride = 68,
|
||||||
|
.data_size = sizeof(img_back_icon_map),
|
||||||
|
.data = img_back_icon_map,
|
||||||
|
};
|
||||||
|
|
||||||
|
|
@ -0,0 +1,85 @@
|
||||||
|
#ifdef __has_include
|
||||||
|
#if __has_include("lvgl.h")
|
||||||
|
#ifndef LV_LVGL_H_INCLUDE_SIMPLE
|
||||||
|
#define LV_LVGL_H_INCLUDE_SIMPLE
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(LV_LVGL_H_INCLUDE_SIMPLE)
|
||||||
|
#include "lvgl.h"
|
||||||
|
#elif defined(LV_BUILD_TEST)
|
||||||
|
#include "../lvgl.h"
|
||||||
|
#else
|
||||||
|
#include "lvgl/lvgl.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_BOOT_LOGO_2
|
||||||
|
#define LV_ATTRIBUTE_IMG_BOOT_LOGO_2
|
||||||
|
#endif
|
||||||
|
|
||||||
|
static const
|
||||||
|
LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_BOOT_LOGO_2
|
||||||
|
uint8_t img_boot_logo_2_map[] = {
|
||||||
|
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xd7,0x50,0x20,0x40,0xda,0x4e,0x1d,0x8f,0xd8,0x4e,0x1c,0xcf,0xd9,0x4e,0x1d,0xef,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd9,0x4e,0x1d,0xef,0xd8,0x4e,0x1c,0xcf,0xda,0x4e,0x1d,0x8f,0xda,0x50,0x20,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xd7,0x50,0x20,0x20,0xd8,0x4f,0x1d,0xbf,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4f,0x1d,0xaf,0xd7,0x50,0x20,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xd9,0x51,0x1e,0x5f,0xd9,0x4e,0x1d,0xef,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd9,0x4e,0x1d,0xef,0xd9,0x51,0x1e,0x5f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xd9,0x51,0x1e,0x5f,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd9,0x51,0x1e,0x5f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0xd7,0x50,0x20,0x20,0xd9,0x4e,0x1d,0xef,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd9,0x4e,0x1d,0xef,0xd7,0x50,0x20,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0xd9,0x4f,0x1d,0xaf,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4f,0x1d,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xda,0x50,0x20,0x30,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x50,0x20,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1e,0x90,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1c,0x90,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1e,0xcf,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4f,0x1e,0xcf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd9,0x4f,0x1e,0xef,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd9,0x4e,0x1d,0xef,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xdf,0x6f,0x48,0xff,0xe6,0x90,0x72,0xff,0xeb,0xa6,0x8e,0xff,0xeb,0xa6,0x8e,0xff,0xe6,0x90,0x72,0xff,0xdf,0x6f,0x48,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xeb,0xa7,0x8e,0xff,0xfd,0xf4,0xf1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfa,0xe9,0xe3,0xff,0xe9,0x9c,0x80,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xe4,0x85,0x64,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe4,0x85,0x64,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x6f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xcf,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xa0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xe4,0x85,0x64,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xf4,0xf1,0xff,0xfa,0xe9,0xe3,0xff,0xfa,0xe9,0xe3,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe4,0x85,0x64,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x90,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xa0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xea,0x9b,0x80,0xff,0xf0,0xbd,0xab,0xff,0xe2,0x7a,0x56,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xe2,0x7a,0x56,0xff,0xed,0xb1,0x9c,0xff,0xe9,0x9b,0x80,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xa0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x90,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x90,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xa0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xe0,0x6f,0x48,0xff,0xf3,0xc8,0xb9,0xff,0xe9,0x9c,0x80,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xe9,0x9c,0x80,0xff,0xf5,0xd3,0xc7,0xff,0xdf,0x6f,0x48,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xaf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xa0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xfa,0xe9,0xe3,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe2,0x7a,0x56,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xda,0x59,0x2b,0xff,0xe1,0x7a,0x56,0xff,0xe1,0x7a,0x56,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xe4,0x85,0x64,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xf4,0xf1,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0x8f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xcf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xa0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xcf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xdf,0x6f,0x48,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe2,0x7a,0x56,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xe0,0x6f,0x48,0xff,0xfd,0xf4,0xf1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfa,0xe9,0xe3,0xff,0xdf,0x6f,0x48,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xe2,0x7a,0x56,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x6f,0x47,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x6f,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xaf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x50,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xa0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xe7,0x90,0x72,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xf4,0xf1,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xfa,0xe9,0xe3,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfa,0xe9,0xe3,0xff,0xda,0x59,0x2b,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xfd,0xf4,0xf1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe6,0x90,0x72,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0x8f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xa0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xeb,0xa6,0x8e,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfa,0xe9,0xe3,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xe1,0x7a,0x56,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x6f,0x47,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xfa,0xe9,0xe3,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb,0xa6,0x8e,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x60,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0x90,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0x50,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xa0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xeb,0xa6,0x8e,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfa,0xe9,0xe3,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xe4,0x85,0x64,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe2,0x7a,0x56,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xfa,0xe9,0xe3,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb,0xa6,0x8e,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x50,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xa0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x60,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xe7,0x90,0x72,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xf4,0xf1,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xda,0x59,0x2b,0xff,0xfd,0xf4,0xf1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfa,0xe9,0xe3,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xfd,0xf4,0xf1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe6,0x90,0x72,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xcf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xa0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x60,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x60,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xdf,0x6f,0x48,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe2,0x7a,0x56,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xe0,0x6f,0x48,0xff,0xfa,0xe9,0xe3,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfa,0xe9,0xe3,0xff,0xe0,0x6f,0x48,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xe1,0x7a,0x56,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x6f,0x47,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x50,0xff,0xff,0xff,0x8f,0xff,0xff,0xff,0xaf,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa0,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xa0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xcf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x70,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x50,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xfd,0xf4,0xf1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5,0xd3,0xc6,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xe2,0x7a,0x56,0xff,0xe2,0x7a,0x56,0xff,0xda,0x59,0x2b,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xf3,0xc8,0xb9,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfa,0xe9,0xe3,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xcf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xcf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x90,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xa0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xeb,0xa6,0x8e,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe9,0x9b,0x80,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xe9,0x9c,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe9,0x9b,0x80,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xcf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xcf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xa0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xda,0x59,0x2b,0xff,0xfa,0xe9,0xe3,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe9,0x9b,0x80,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xe9,0x9c,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfa,0xe9,0xe3,0xff,0xda,0x59,0x2b,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xb0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x8f,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x90,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xa0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x90,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xe2,0x7a,0x56,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3,0xc8,0xb8,0xff,0xe1,0x7a,0x56,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xe1,0x7a,0x56,0xff,0xf5,0xd3,0xc7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe2,0x7a,0x56,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x50,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x6f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xcf,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x6f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x90,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xa0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xe7,0x90,0x72,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xf4,0xf1,0xff,0xfa,0xe9,0xe3,0xff,0xfa,0xe9,0xe3,0xff,0xfd,0xf4,0xf1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7,0x90,0x72,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xaf,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x50,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xcf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0x9f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xa0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xe2,0x7a,0x56,0xff,0xfa,0xe9,0xe3,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfa,0xe9,0xe3,0xff,0xe2,0x7a,0x56,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x50,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xa0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xda,0x59,0x2b,0xff,0xea,0x9b,0x80,0xff,0xfa,0xe9,0xe3,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xf4,0xf1,0xff,0xec,0xa6,0x8e,0xff,0xda,0x59,0x2b,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xa0,0xff,0xff,0xff,0xcf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xcf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xa0,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xaf,0xff,0xff,0xff,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x50,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0x9f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0x9f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xe0,0x6f,0x48,0xff,0xe7,0x90,0x72,0xff,0xeb,0xa6,0x8e,0xff,0xeb,0xa6,0x8e,0xff,0xe7,0x90,0x72,0xff,0xe0,0x6f,0x48,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd9,0x4f,0x1e,0xef,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd9,0x4e,0x1d,0xef,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1e,0xcf,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4f,0x1e,0xcf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1e,0x90,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1c,0x90,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd7,0x50,0x1c,0x40,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xda,0x50,0x20,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0xd8,0x4f,0x1d,0xbf,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4f,0x1d,0xaf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0xd7,0x50,0x20,0x20,0xd9,0x4f,0x1e,0xef,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd9,0x4f,0x1e,0xef,0xd7,0x50,0x20,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xd7,0x50,0x1d,0x60,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x50,0x1d,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xd7,0x50,0x1d,0x60,0xd9,0x4f,0x1e,0xef,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd9,0x4f,0x1e,0xef,0xd7,0x50,0x1d,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xd7,0x50,0x20,0x20,0xd8,0x4f,0x1d,0xaf,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4f,0x1d,0xbf,0xd7,0x50,0x20,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xda,0x50,0x20,0x30,0xd8,0x4e,0x1c,0x90,0xd8,0x4f,0x1e,0xcf,0xd9,0x4f,0x1e,0xef,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd9,0x4f,0x1e,0xef,0xd8,0x4f,0x1e,0xcf,0xd8,0x4e,0x1c,0x90,0xd7,0x50,0x1c,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_image_dsc_t img_boot_logo_2 = {
|
||||||
|
.header.magic = LV_IMAGE_HEADER_MAGIC,
|
||||||
|
.header.cf = LV_COLOR_FORMAT_ARGB8888,
|
||||||
|
.header.flags = 0,
|
||||||
|
.header.w = 153,
|
||||||
|
.header.h = 42,
|
||||||
|
.header.stride = 612,
|
||||||
|
.data_size = sizeof(img_boot_logo_2_map),
|
||||||
|
.data = img_boot_logo_2_map,
|
||||||
|
};
|
||||||
|
|
||||||
|
|
@ -0,0 +1,57 @@
|
||||||
|
#ifdef __has_include
|
||||||
|
#if __has_include("lvgl.h")
|
||||||
|
#ifndef LV_LVGL_H_INCLUDE_SIMPLE
|
||||||
|
#define LV_LVGL_H_INCLUDE_SIMPLE
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(LV_LVGL_H_INCLUDE_SIMPLE)
|
||||||
|
#include "lvgl.h"
|
||||||
|
#elif defined(LV_BUILD_TEST)
|
||||||
|
#include "../lvgl.h"
|
||||||
|
#else
|
||||||
|
#include "lvgl/lvgl.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_CHECK_ICON
|
||||||
|
#define LV_ATTRIBUTE_IMG_CHECK_ICON
|
||||||
|
#endif
|
||||||
|
|
||||||
|
static const
|
||||||
|
LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_CHECK_ICON
|
||||||
|
uint8_t img_check_icon_map[] = {
|
||||||
|
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0x60,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x30,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa0,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xff,0xff,0xff,0x30,0xff,0xff,0xff,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xff,0xff,0xff,0xaf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xff,0xff,0xff,0x30,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_image_dsc_t img_check_icon = {
|
||||||
|
.header.magic = LV_IMAGE_HEADER_MAGIC,
|
||||||
|
.header.cf = LV_COLOR_FORMAT_ARGB8888,
|
||||||
|
.header.flags = 0,
|
||||||
|
.header.w = 19,
|
||||||
|
.header.h = 14,
|
||||||
|
.header.stride = 76,
|
||||||
|
.data_size = sizeof(img_check_icon_map),
|
||||||
|
.data = img_check_icon_map,
|
||||||
|
};
|
||||||
|
|
||||||
|
|
@ -0,0 +1,65 @@
|
||||||
|
#ifdef __has_include
|
||||||
|
#if __has_include("lvgl.h")
|
||||||
|
#ifndef LV_LVGL_H_INCLUDE_SIMPLE
|
||||||
|
#define LV_LVGL_H_INCLUDE_SIMPLE
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(LV_LVGL_H_INCLUDE_SIMPLE)
|
||||||
|
#include "lvgl.h"
|
||||||
|
#elif defined(LV_BUILD_TEST)
|
||||||
|
#include "../lvgl.h"
|
||||||
|
#else
|
||||||
|
#include "lvgl/lvgl.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_CLOUD
|
||||||
|
#define LV_ATTRIBUTE_IMG_CLOUD
|
||||||
|
#endif
|
||||||
|
|
||||||
|
static const
|
||||||
|
LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_CLOUD
|
||||||
|
uint8_t img_cloud_map[] = {
|
||||||
|
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x50,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x5f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x90,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x5f,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x50,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0x50,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0xaf,0xff,0xff,0xff,0xcf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_image_dsc_t img_cloud = {
|
||||||
|
.header.magic = LV_IMAGE_HEADER_MAGIC,
|
||||||
|
.header.cf = LV_COLOR_FORMAT_ARGB8888,
|
||||||
|
.header.flags = 0,
|
||||||
|
.header.w = 23,
|
||||||
|
.header.h = 22,
|
||||||
|
.header.stride = 92,
|
||||||
|
.data_size = sizeof(img_cloud_map),
|
||||||
|
.data = img_cloud_map,
|
||||||
|
};
|
||||||
|
|
||||||
|
|
@ -0,0 +1,65 @@
|
||||||
|
#ifdef __has_include
|
||||||
|
#if __has_include("lvgl.h")
|
||||||
|
#ifndef LV_LVGL_H_INCLUDE_SIMPLE
|
||||||
|
#define LV_LVGL_H_INCLUDE_SIMPLE
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(LV_LVGL_H_INCLUDE_SIMPLE)
|
||||||
|
#include "lvgl.h"
|
||||||
|
#elif defined(LV_BUILD_TEST)
|
||||||
|
#include "../lvgl.h"
|
||||||
|
#else
|
||||||
|
#include "lvgl/lvgl.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_CLOUD_DISCONNECTED
|
||||||
|
#define LV_ATTRIBUTE_IMG_CLOUD_DISCONNECTED
|
||||||
|
#endif
|
||||||
|
|
||||||
|
static const
|
||||||
|
LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_CLOUD_DISCONNECTED
|
||||||
|
uint8_t img_cloud_disconnected_map[] = {
|
||||||
|
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0x50,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x8f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x50,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xcf,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x50,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa0,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xcf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa0,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa0,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa0,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa0,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa0,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa0,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa0,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa0,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xaf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0x90,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x50,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xcf,0xff,0xff,0xff,0xa0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_image_dsc_t img_cloud_disconnected = {
|
||||||
|
.header.magic = LV_IMAGE_HEADER_MAGIC,
|
||||||
|
.header.cf = LV_COLOR_FORMAT_ARGB8888,
|
||||||
|
.header.flags = 0,
|
||||||
|
.header.w = 22,
|
||||||
|
.header.h = 22,
|
||||||
|
.header.stride = 88,
|
||||||
|
.data_size = sizeof(img_cloud_disconnected_map),
|
||||||
|
.data = img_cloud_disconnected_map,
|
||||||
|
};
|
||||||
|
|
||||||
|
|
@ -0,0 +1,92 @@
|
||||||
|
#ifdef __has_include
|
||||||
|
#if __has_include("lvgl.h")
|
||||||
|
#ifndef LV_LVGL_H_INCLUDE_SIMPLE
|
||||||
|
#define LV_LVGL_H_INCLUDE_SIMPLE
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(LV_LVGL_H_INCLUDE_SIMPLE)
|
||||||
|
#include "lvgl.h"
|
||||||
|
#elif defined(LV_BUILD_TEST)
|
||||||
|
#include "../lvgl.h"
|
||||||
|
#else
|
||||||
|
#include "lvgl/lvgl.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_D2
|
||||||
|
#define LV_ATTRIBUTE_IMG_D2
|
||||||
|
#endif
|
||||||
|
|
||||||
|
static const
|
||||||
|
LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_D2
|
||||||
|
uint8_t img_d2_map[] = {
|
||||||
|
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xd7,0x50,0x20,0x20,0xd7,0x50,0x20,0x40,0xd7,0x50,0x20,0x40,0xd7,0x50,0x20,0x40,0xd7,0x50,0x20,0x40,0xd7,0x50,0x20,0x40,0xd7,0x50,0x20,0x40,0xd7,0x50,0x20,0x40,0xd7,0x50,0x20,0x40,0xd7,0x50,0x20,0x40,0xd7,0x50,0x20,0x40,0xd7,0x50,0x20,0x40,0xd7,0x50,0x20,0x40,0xd7,0x50,0x20,0x40,0xd7,0x50,0x20,0x40,0xd7,0x50,0x20,0x40,0xd7,0x50,0x20,0x40,0xd7,0x50,0x20,0x40,0xd7,0x50,0x20,0x40,0xd7,0x50,0x20,0x40,0xd7,0x50,0x20,0x40,0xd7,0x50,0x20,0x40,0xd7,0x50,0x20,0x40,0xd7,0x50,0x20,0x40,0xd7,0x50,0x20,0x40,0xd7,0x50,0x20,0x40,0xd7,0x50,0x20,0x40,0xda,0x50,0x20,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xd7,0x4d,0x1d,0x60,0xd8,0x4f,0x1d,0xbf,0xd9,0x4e,0x1d,0xef,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4f,0x1d,0xbf,0xd7,0x4d,0x1d,0x60,0xd7,0x50,0x20,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xd9,0x4d,0x1d,0x50,0xd8,0x4e,0x1d,0xdf,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xdf,0xd9,0x4e,0x1e,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xda,0x4e,0x1e,0x8f,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1c,0xcf,0xd7,0x50,0x20,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xd9,0x4f,0x1d,0x9f,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xdf,0xd7,0x50,0x20,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xd9,0x4e,0x1c,0x7f,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4f,0x1d,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0xda,0x50,0x20,0x30,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4d,0x1e,0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0xd8,0x4e,0x1e,0xcf,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd9,0x4e,0x1d,0xef,0xdf,0x50,0x20,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd7,0x50,0x1c,0x40,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4d,0x1e,0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1e,0x90,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4f,0x1d,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4f,0x1d,0xbf,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd9,0x4f,0x1e,0xef,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x50,0x20,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xdd,0x64,0x3a,0xff,0xe1,0x7a,0x56,0xff,0xe1,0x7a,0x56,0xff,0xdf,0x6f,0x48,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x50,0x20,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xe4,0x85,0x64,0xff,0xf5,0xd3,0xc7,0xff,0xfd,0xf4,0xf1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5,0xd3,0xc7,0xff,0xe6,0x90,0x72,0xff,0xdd,0x64,0x3a,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x50,0x20,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x9f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x5f,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xaf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xaf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xaf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xcf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x70,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xf7,0xde,0xd4,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfa,0xe9,0xe3,0xff,0xda,0x59,0x2b,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x50,0x20,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x90,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xdd,0x64,0x39,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe4,0x85,0x64,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x50,0x20,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x50,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x5f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x90,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x90,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xfa,0xe9,0xe3,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xf4,0xf1,0xff,0xf3,0xc8,0xb9,0xff,0xed,0xb1,0x9c,0xff,0xeb,0xa6,0x8e,0xff,0xf3,0xc8,0xb9,0xff,0xfa,0xe9,0xe3,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xf4,0xf1,0xff,0xdd,0x64,0x3a,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x50,0x20,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xa0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xcf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xdd,0x64,0x39,0xff,0xeb,0xa6,0x8e,0xff,0xe4,0x85,0x64,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xe2,0x7a,0x56,0xff,0xeb,0xa6,0x8e,0xff,0xe0,0x6f,0x48,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x50,0x20,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xa0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x50,0x20,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xaf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x90,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xe1,0x7a,0x56,0xff,0xf0,0xbd,0xab,0xff,0xe6,0x90,0x72,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xe1,0x7a,0x56,0xff,0xf0,0xbd,0xab,0xff,0xe6,0x90,0x72,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x50,0x20,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xdd,0x64,0x39,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe2,0x7a,0x56,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xdd,0x64,0x39,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe6,0x90,0x72,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x50,0x20,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xcf,0xff,0xff,0xff,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x8f,0xff,0xff,0xff,0xcf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xcf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x50,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xcf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xeb,0xa6,0x8e,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb,0xa6,0x8e,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xdd,0x64,0x39,0xff,0xf5,0xd3,0xc7,0xff,0xfd,0xf4,0xf1,0xff,0xff,0xff,0xff,0xff,0xf5,0xd3,0xc7,0xff,0xdd,0x64,0x3a,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xdf,0x6f,0x48,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5,0xd3,0xc6,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x50,0x20,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xaf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x90,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xaf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xb0,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xf5,0xd3,0xc7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x6f,0x47,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xdd,0x64,0x39,0xff,0xfa,0xe9,0xe3,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xf4,0xf1,0xff,0xdf,0x6f,0x48,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xfd,0xf4,0xf1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xf4,0xf1,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x50,0x20,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x8f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x50,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x90,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x50,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xfa,0xe9,0xe3,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xf4,0xf1,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xeb,0xa6,0x8e,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3,0xc7,0xb8,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xf5,0xd3,0xc6,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdd,0x65,0x3a,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x50,0x20,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x8f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xaf,0xff,0xff,0xff,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0x9f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfa,0xe9,0xe3,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xf5,0xd3,0xc7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfa,0xe9,0xe3,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xf0,0xbc,0xaa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdd,0x65,0x3a,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x50,0x20,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xaf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xcf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xaf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x60,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xfa,0xe9,0xe3,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfa,0xe9,0xe3,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xf0,0xbc,0xaa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf8,0xde,0xd5,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xf2,0xc7,0xb9,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdd,0x65,0x3a,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x50,0x20,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x5f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xf7,0xde,0xd5,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xda,0x59,0x2b,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xe2,0x7a,0x56,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe6,0x90,0x72,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xf7,0xde,0xd5,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x50,0x20,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xaf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xaf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xaf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x90,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xf0,0xbc,0xaa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe4,0x85,0x64,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xec,0xa6,0x8e,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1,0xbc,0xaa,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xdd,0x64,0x39,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf8,0xde,0xd5,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x50,0x20,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x6f,0xff,0xff,0xff,0xaf,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x90,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xcf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xe7,0x90,0x72,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5,0xd3,0xc6,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xdd,0x64,0x39,0xff,0xeb,0xa6,0x8e,0xff,0xeb,0xa6,0x8e,0xff,0xe2,0x7a,0x56,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xf0,0xbc,0xaa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf0,0xbd,0xaa,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x50,0x20,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xaf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xcf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xda,0x59,0x2b,0xff,0xfd,0xf4,0xf1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe9,0x9b,0x80,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xdd,0x64,0x39,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdd,0x64,0x3a,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x50,0x20,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xa0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x90,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xeb,0xa6,0x8e,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xf4,0xf1,0xff,0xdf,0x6f,0x48,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xdd,0x64,0x39,0xff,0xfa,0xe9,0xe3,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf0,0xbd,0xaa,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x50,0x20,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xa0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x90,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xda,0x59,0x2b,0xff,0xfa,0xe9,0xe3,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb,0xa7,0x8e,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xe1,0x7a,0x56,0xff,0xfa,0xe9,0xe3,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xf4,0xf1,0xff,0xdd,0x64,0x3a,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x50,0x20,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x50,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xcf,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x6f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x90,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xdd,0x64,0x39,0xff,0xfd,0xf4,0xf1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfa,0xe9,0xe3,0xff,0xe9,0x9b,0x80,0xff,0xdf,0x6f,0x48,0xff,0xda,0x59,0x2b,0xff,0xda,0x59,0x2b,0xff,0xdd,0x64,0x3a,0xff,0xe9,0x9b,0x80,0xff,0xf5,0xd3,0xc7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe4,0x85,0x64,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x50,0x20,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0xcf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xa0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0x6f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8f,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0x50,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x50,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xe0,0x6f,0x48,0xff,0xfa,0xe9,0xe3,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7,0x90,0x72,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x50,0x20,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x50,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x90,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xb0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xdd,0x64,0x39,0xff,0xfa,0xe9,0xe3,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfa,0xe9,0xe3,0xff,0xe2,0x7a,0x56,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x50,0x20,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x90,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x50,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xe7,0x90,0x72,0xff,0xfa,0xe9,0xe3,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xf4,0xf1,0xff,0xec,0xa6,0x8e,0xff,0xda,0x59,0x2b,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x50,0x20,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0xcf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xa0,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0xcf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x90,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xcf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xcf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xaf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x70,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xe0,0x6f,0x48,0xff,0xe9,0x9b,0x80,0xff,0xf3,0xc8,0xb9,0xff,0xf5,0xd3,0xc7,0xff,0xf5,0xd3,0xc7,0xff,0xf0,0xbd,0xab,0xff,0xed,0xb1,0x9c,0xff,0xe2,0x7a,0x56,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x50,0x20,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0x50,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0x40,0xff,0xff,0xff,0x60,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x50,0x20,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1d,0xdf,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xdf,0x50,0x20,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4f,0x1d,0xaf,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4f,0x1e,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x50,0x1e,0x70,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd9,0x4f,0x1d,0x9f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xdf,0x50,0x20,0x10,0xd9,0x4f,0x1e,0xef,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x50,0x20,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0xd7,0x4e,0x1c,0x80,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4f,0x1d,0xbf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0xdf,0x50,0x20,0x10,0xd8,0x4f,0x1e,0xdf,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x50,0x20,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xda,0x50,0x20,0x30,0xd9,0x4f,0x1e,0xef,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4d,0x1b,0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xda,0x50,0x20,0x30,0xd9,0x4f,0x1e,0xef,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x4e,0x1e,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xd7,0x50,0x20,0x20,0xd8,0x4f,0x1e,0xdf,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4f,0x1e,0xdf,0xd7,0x50,0x1c,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xd7,0x50,0x1d,0x60,0xd8,0x4f,0x1e,0xdf,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd9,0x4f,0x1e,0xef,0xd7,0x4e,0x1c,0x80,0xdf,0x50,0x20,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xd7,0x50,0x1c,0x40,0xd7,0x4e,0x1e,0x80,0xd9,0x4f,0x1d,0xaf,0xd8,0x4f,0x1d,0xbf,0xd8,0x4f,0x1d,0xbf,0xd8,0x4f,0x1d,0xbf,0xd8,0x4f,0x1d,0xbf,0xd8,0x4f,0x1d,0xbf,0xd8,0x4f,0x1d,0xbf,0xd8,0x4f,0x1d,0xbf,0xd8,0x4f,0x1d,0xbf,0xd8,0x4f,0x1d,0xbf,0xd8,0x4f,0x1d,0xbf,0xd8,0x4f,0x1d,0xbf,0xd8,0x4f,0x1d,0xbf,0xd8,0x4f,0x1d,0xbf,0xd8,0x4f,0x1d,0xbf,0xd8,0x4f,0x1d,0xbf,0xd8,0x4f,0x1d,0xbf,0xd8,0x4f,0x1d,0xbf,0xd8,0x4f,0x1d,0xbf,0xd8,0x4f,0x1d,0xbf,0xd8,0x4f,0x1d,0xbf,0xd8,0x4f,0x1d,0xbf,0xd8,0x4f,0x1d,0xbf,0xd8,0x4f,0x1d,0xbf,0xd8,0x4f,0x1d,0xbf,0xd8,0x4f,0x1d,0xbf,0xd8,0x4f,0x1d,0xbf,0xd9,0x4f,0x1e,0x9f,0xd8,0x4e,0x1c,0x90,0xd7,0x50,0x1c,0x40,0xdf,0x50,0x20,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_image_dsc_t img_d2 = {
|
||||||
|
.header.magic = LV_IMAGE_HEADER_MAGIC,
|
||||||
|
.header.cf = LV_COLOR_FORMAT_ARGB8888,
|
||||||
|
.header.flags = 0,
|
||||||
|
.header.w = 174,
|
||||||
|
.header.h = 49,
|
||||||
|
.header.stride = 696,
|
||||||
|
.data_size = sizeof(img_d2_map),
|
||||||
|
.data = img_d2_map,
|
||||||
|
};
|
||||||
|
|
||||||
|
|
@ -0,0 +1,75 @@
|
||||||
|
#ifdef __has_include
|
||||||
|
#if __has_include("lvgl.h")
|
||||||
|
#ifndef LV_LVGL_H_INCLUDE_SIMPLE
|
||||||
|
#define LV_LVGL_H_INCLUDE_SIMPLE
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(LV_LVGL_H_INCLUDE_SIMPLE)
|
||||||
|
#include "lvgl.h"
|
||||||
|
#elif defined(LV_BUILD_TEST)
|
||||||
|
#include "../lvgl.h"
|
||||||
|
#else
|
||||||
|
#include "lvgl/lvgl.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_ETHERNET
|
||||||
|
#define LV_ATTRIBUTE_IMG_ETHERNET
|
||||||
|
#endif
|
||||||
|
|
||||||
|
static const
|
||||||
|
LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_ETHERNET
|
||||||
|
uint8_t img_ethernet_map[] = {
|
||||||
|
|
||||||
|
0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xaf,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,
|
||||||
|
0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0x20,
|
||||||
|
0xff,0xff,0xff,0xaf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa0,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xa0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbf,
|
||||||
|
0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,
|
||||||
|
0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
|
||||||
|
0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
|
||||||
|
0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
|
||||||
|
0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
|
||||||
|
0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
|
||||||
|
0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
|
||||||
|
0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
|
||||||
|
0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
|
||||||
|
0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
|
||||||
|
0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
|
||||||
|
0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
|
||||||
|
0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
|
||||||
|
0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
|
||||||
|
0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
|
||||||
|
0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
|
||||||
|
0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
|
||||||
|
0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
|
||||||
|
0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
|
||||||
|
0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
|
||||||
|
0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
|
||||||
|
0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
|
||||||
|
0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
|
||||||
|
0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
|
||||||
|
0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
|
||||||
|
0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
|
||||||
|
0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xb0,
|
||||||
|
0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0x20,
|
||||||
|
0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x20,0xff,0xff,0xff,0xaf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xbf,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_image_dsc_t img_ethernet = {
|
||||||
|
.header.magic = LV_IMAGE_HEADER_MAGIC,
|
||||||
|
.header.cf = LV_COLOR_FORMAT_ARGB8888,
|
||||||
|
.header.flags = 0,
|
||||||
|
.header.w = 32,
|
||||||
|
.header.h = 32,
|
||||||
|
.header.stride = 128,
|
||||||
|
.data_size = sizeof(img_ethernet_map),
|
||||||
|
.data = img_ethernet_map,
|
||||||
|
};
|
||||||
|
|
||||||
|
|
@ -0,0 +1,63 @@
|
||||||
|
#ifdef __has_include
|
||||||
|
#if __has_include("lvgl.h")
|
||||||
|
#ifndef LV_LVGL_H_INCLUDE_SIMPLE
|
||||||
|
#define LV_LVGL_H_INCLUDE_SIMPLE
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(LV_LVGL_H_INCLUDE_SIMPLE)
|
||||||
|
#include "lvgl.h"
|
||||||
|
#elif defined(LV_BUILD_TEST)
|
||||||
|
#include "../lvgl.h"
|
||||||
|
#else
|
||||||
|
#include "lvgl/lvgl.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_HDMI
|
||||||
|
#define LV_ATTRIBUTE_IMG_HDMI
|
||||||
|
#endif
|
||||||
|
|
||||||
|
static const
|
||||||
|
LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_HDMI
|
||||||
|
uint8_t img_hdmi_map[] = {
|
||||||
|
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,
|
||||||
|
0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,
|
||||||
|
0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x1a,0xff,0xff,0xff,0x56,0xff,0xff,0xff,0x51,0xff,0xff,0xff,0x51,0xff,0xff,0xff,0x51,0xff,0xff,0xff,0x51,0xff,0xff,0xff,0x51,0xff,0xff,0xff,0x51,0xff,0xff,0xff,0x51,0xff,0xff,0xff,0x51,0xff,0xff,0xff,0x51,0xff,0xff,0xff,0x51,0xff,0xff,0xff,0x51,0xff,0xff,0xff,0x51,0xff,0xff,0xff,0x51,0xff,0xff,0xff,0x51,0xff,0xff,0xff,0x57,0xff,0xff,0xff,0x1d,0x00,0x00,0x00,0x00,
|
||||||
|
0xff,0xff,0xff,0x1d,0xff,0xff,0xff,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdd,0xff,0xff,0xff,0x1a,
|
||||||
|
0xff,0xff,0xff,0x57,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe0,0xff,0xff,0xff,0xa6,0xff,0xff,0xff,0xaa,0xff,0xff,0xff,0xa8,0xff,0xff,0xff,0xa5,0xff,0xff,0xff,0xa5,0xff,0xff,0xff,0xa5,0xff,0xff,0xff,0xa5,0xff,0xff,0xff,0xa5,0xff,0xff,0xff,0xa5,0xff,0xff,0xff,0xa5,0xff,0xff,0xff,0xa5,0xff,0xff,0xff,0xa9,0xff,0xff,0xff,0xaa,0xff,0xff,0xff,0xa6,0xff,0xff,0xff,0xe0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x56,
|
||||||
|
0xff,0xff,0xff,0x51,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa7,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x05,0xff,0xff,0xff,0x05,0xff,0xff,0xff,0x05,0xff,0xff,0xff,0x05,0xff,0xff,0xff,0x05,0xff,0xff,0xff,0x05,0xff,0xff,0xff,0x05,0xff,0xff,0xff,0x05,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x51,
|
||||||
|
0xff,0xff,0xff,0x51,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa4,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x90,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf4,0xff,0xff,0xff,0xf7,0xff,0xff,0xff,0xf7,0xff,0xff,0xff,0xf7,0xff,0xff,0xff,0xf7,0xff,0xff,0xff,0xf4,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8e,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xa5,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x50,
|
||||||
|
0xff,0xff,0xff,0x57,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xc3,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x8a,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf4,0xff,0xff,0xff,0xf7,0xff,0xff,0xff,0xf7,0xff,0xff,0xff,0xf7,0xff,0xff,0xff,0xf7,0xff,0xff,0xff,0xf4,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x47,0xff,0xff,0xff,0xc2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x57,
|
||||||
|
0xff,0xff,0xff,0x36,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x89,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x05,0xff,0xff,0xff,0x05,0xff,0xff,0xff,0x05,0xff,0xff,0xff,0x05,0xff,0xff,0xff,0x05,0xff,0xff,0xff,0x05,0xff,0xff,0xff,0x05,0xff,0xff,0xff,0x05,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x89,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x33,
|
||||||
|
0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x55,0xff,0xff,0xff,0xa7,0xff,0xff,0xff,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbc,0xff,0xff,0xff,0xa1,0xff,0xff,0xff,0xa6,0xff,0xff,0xff,0xa5,0xff,0xff,0xff,0xa5,0xff,0xff,0xff,0xa5,0xff,0xff,0xff,0xa5,0xff,0xff,0xff,0xa6,0xff,0xff,0xff,0xa2,0xff,0xff,0xff,0xb8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7,0xff,0xff,0xff,0xab,0xff,0xff,0xff,0x59,0x00,0x00,0x00,0x00,
|
||||||
|
0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x4d,0xff,0xff,0xff,0xf7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf8,0xff,0xff,0xff,0x4d,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,
|
||||||
|
0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0x57,0xff,0xff,0xff,0x50,0xff,0xff,0xff,0x51,0xff,0xff,0xff,0x51,0xff,0xff,0xff,0x51,0xff,0xff,0xff,0x51,0xff,0xff,0xff,0x51,0xff,0xff,0xff,0x51,0xff,0xff,0xff,0x50,0xff,0xff,0xff,0x57,0xff,0xff,0xff,0x30,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_image_dsc_t img_hdmi = {
|
||||||
|
.header.magic = LV_IMAGE_HEADER_MAGIC,
|
||||||
|
.header.cf = LV_COLOR_FORMAT_ARGB8888,
|
||||||
|
.header.flags = 0,
|
||||||
|
.header.w = 20,
|
||||||
|
.header.h = 20,
|
||||||
|
.header.stride = 80,
|
||||||
|
.data_size = sizeof(img_hdmi_map),
|
||||||
|
.data = img_hdmi_map,
|
||||||
|
};
|
||||||
|
|
||||||
|
|
@ -0,0 +1,75 @@
|
||||||
|
#ifdef __has_include
|
||||||
|
#if __has_include("lvgl.h")
|
||||||
|
#ifndef LV_LVGL_H_INCLUDE_SIMPLE
|
||||||
|
#define LV_LVGL_H_INCLUDE_SIMPLE
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(LV_LVGL_H_INCLUDE_SIMPLE)
|
||||||
|
#include "lvgl.h"
|
||||||
|
#elif defined(LV_BUILD_TEST)
|
||||||
|
#include "../lvgl.h"
|
||||||
|
#else
|
||||||
|
#include "lvgl/lvgl.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_JETKVM
|
||||||
|
#define LV_ATTRIBUTE_IMG_JETKVM
|
||||||
|
#endif
|
||||||
|
|
||||||
|
static const
|
||||||
|
LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_JETKVM
|
||||||
|
uint8_t img_jetkvm_map[] = {
|
||||||
|
|
||||||
|
0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xdc,0x50,0x1e,0x33,0xd8,0x4d,0x1d,0x98,0xd8,0x4e,0x1c,0xd9,0xd9,0x4e,0x1c,0xfc,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1c,0xfb,0xd8,0x4e,0x1d,0xdf,0xd8,0x4e,0x1e,0xa3,0xda,0x4e,0x1e,0x45,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0xff,0x55,0x00,0x03,0xd8,0x4f,0x1d,0x95,0xda,0x4f,0x1d,0xff,0xe5,0x53,0x1f,0xff,0xdd,0x50,0x1e,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xdc,0x4f,0x1d,0xff,0xe5,0x53,0x1f,0xff,0xde,0x50,0x1e,0xff,0xd8,0x4e,0x1e,0xa4,0xd9,0x4d,0x1a,0x14,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0xff,0x55,0x00,0x03,0xd8,0x4f,0x1d,0xb2,0xe9,0x54,0x1f,0xff,0xd8,0x4e,0x1d,0xfe,0xd8,0x4e,0x1c,0xfb,0xd8,0x4e,0x1d,0xfe,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd8,0x4e,0x1c,0xfb,0xd8,0x4e,0x1d,0xfd,0xe7,0x53,0x1f,0xff,0xd8,0x4f,0x1d,0xd9,0xde,0x4e,0x21,0x17,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0xd9,0x4e,0x1d,0x94,0xea,0x55,0x1f,0xff,0xd8,0x4e,0x1d,0xf9,0xd8,0x4e,0x1d,0xfe,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xf9,0xe7,0x53,0x1f,0xff,0xd8,0x4e,0x1c,0xb6,0x00,0x00,0x00,0x00,0xff,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xda,0x4f,0x1c,0x37,0xdb,0x4f,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd8,0x4e,0x1d,0xfe,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x4e,0x1c,0xfb,0xe5,0x52,0x1f,0xff,0xda,0x4d,0x1d,0x59,0x00,0x00,0x00,0x00,0xbf,0x40,0x00,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1d,0x9d,0xe6,0x53,0x1f,0xff,0xd7,0x4e,0x1c,0xfb,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4f,0x1f,0xff,0xd8,0x50,0x21,0xff,0xd8,0x50,0x22,0xff,0xd8,0x4f,0x20,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1c,0xfb,0xe3,0x52,0x1e,0xff,0xd9,0x4f,0x1e,0xb5,0x00,0x00,0x00,0x00,0xff,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd9,0x4f,0x1d,0xdc,0xdc,0x50,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1c,0xff,0xd8,0x51,0x24,0xff,0xd9,0x55,0x2f,0xff,0xd8,0x4e,0x21,0xff,0xd7,0x48,0x00,0xff,0xd7,0x47,0x00,0xff,0xd8,0x4d,0x1d,0xff,0xd8,0x54,0x2e,0xff,0xd8,0x52,0x26,0xff,0xd8,0x4e,0x1c,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xda,0x4f,0x1d,0xff,0xd9,0x4f,0x1d,0xf0,0xd9,0x4d,0x1a,0x14,0x00,0x00,0x00,0x00,0xff,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1d,0xfc,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1c,0xff,0xd8,0x4f,0x20,0xff,0xd7,0x41,0x00,0xff,0xd5,0x20,0x00,0xff,0xd8,0x4a,0x00,0xff,0xda,0x60,0x42,0xff,0xda,0x62,0x46,0xff,0xd9,0x4f,0x13,0xff,0xd6,0x23,0x00,0xff,0xd6,0x3c,0x00,0xff,0xd8,0x50,0x22,0xff,0xd8,0x4e,0x1c,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd9,0x4f,0x1d,0xff,0xd8,0x4e,0x1d,0xf9,0xd9,0x4d,0x20,0x28,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x50,0x22,0xff,0xd7,0x46,0x00,0xff,0xde,0x77,0x5d,0xff,0xef,0xc4,0xbb,0xff,0xf7,0xe1,0xdb,0xff,0xfc,0xf4,0xf2,0xff,0xfc,0xf6,0xf4,0xff,0xf8,0xe4,0xdf,0xff,0xf1,0xcb,0xc3,0xff,0xe0,0x82,0x6c,0xff,0xd7,0x42,0x00,0xff,0xd8,0x50,0x23,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd9,0x4e,0x1d,0xff,0xd7,0x4e,0x1d,0xfa,0xd5,0x4d,0x1e,0x2b,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x51,0xff,0xff,0xff,0xc6,0xff,0xff,0xff,0xb2,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x07,0xff,0xff,0xff,0xa1,0xff,0xff,0xff,0xc9,0xff,0xff,0xff,0x70,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x24,0xff,0xff,0xff,0xb1,0xff,0xff,0xff,0xba,0xff,0xff,0xff,0xbc,0xff,0xff,0xff,0x39,0xff,0xff,0xff,0x99,0xff,0xff,0xff,0xc6,0xff,0xff,0xff,0x93,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x05,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xc5,0xff,0xff,0xff,0x93,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0a,0xff,0xff,0xff,0xaf,0xff,0xff,0xff,0xb8,0xff,0xff,0xff,0xc4,0xff,0xff,0xff,0x67,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x08,0xff,0xff,0xff,0xa5,0xff,0xff,0xff,0xba,0xff,0xff,0xff,0xc1,0xff,0xff,0xff,0x7f,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x50,0x22,0xff,0xd7,0x47,0x00,0xff,0xdb,0x64,0x45,0xff,0xfd,0xf6,0xf4,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xfa,0xf8,0xff,0xde,0x73,0x57,0xff,0xd7,0x43,0x00,0xff,0xd8,0x51,0x23,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd9,0x4e,0x1d,0xff,0xd7,0x4e,0x1d,0xfa,0xdb,0x4f,0x1e,0x2a,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x76,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x2c,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x07,0xff,0xff,0xff,0x37,0xff,0xff,0xff,0x39,0xff,0xff,0xff,0x0c,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0a,0xff,0xff,0xff,0xea,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa2,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x12,0xff,0xff,0xff,0xd7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x88,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x30,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x3c,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x86,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x12,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3,0xff,0xff,0xff,0x09,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x53,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xb8,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1c,0xff,0xd8,0x4f,0x21,0xff,0xd9,0x57,0x32,0xff,0xd8,0x50,0x23,0xff,0xd9,0x56,0x2a,0xff,0xf9,0xe8,0xe4,0xff,0xfe,0xfb,0xf9,0xff,0xf5,0xd7,0xd0,0xff,0xed,0xc2,0xbc,0xff,0xee,0xc4,0xbd,0xff,0xf4,0xd3,0xcc,0xff,0xfd,0xf6,0xf5,0xff,0xfb,0xf0,0xed,0xff,0xdd,0x6a,0x4a,0xff,0xd7,0x4a,0x12,0xff,0xd9,0x58,0x34,0xff,0xd8,0x50,0x23,0xff,0xd8,0x4e,0x1c,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd9,0x4e,0x1d,0xff,0xd7,0x4e,0x1d,0xfa,0xdb,0x4f,0x1e,0x2a,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x6f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3,0xff,0xff,0xff,0x2a,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0xff,0xff,0xff,0x02,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x1d,0xff,0xff,0xff,0xf5,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x38,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x09,0xff,0xff,0xff,0xdc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x99,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x05,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0xff,0xff,0xff,0xbd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7e,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x42,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x86,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x91,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3,0xff,0xff,0xff,0x24,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xee,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x5c,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xb5,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xad,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1c,0xff,0xd8,0x4f,0x20,0xff,0xd7,0x49,0x0d,0xff,0xd5,0x15,0x00,0xff,0xd6,0x3a,0x00,0xff,0xd7,0x48,0x03,0xff,0xdb,0x5b,0x30,0xff,0xde,0x74,0x59,0xff,0xd7,0x3c,0x00,0xff,0xd6,0x26,0x00,0xff,0xd6,0x2a,0x00,0xff,0xd7,0x38,0x00,0xff,0xdd,0x6c,0x4e,0xff,0xdc,0x65,0x42,0xff,0xd7,0x46,0x02,0xff,0xd7,0x3f,0x00,0xff,0xd5,0x05,0x00,0xff,0xd7,0x45,0x00,0xff,0xd8,0x50,0x22,0xff,0xd8,0x4e,0x1b,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd9,0x4e,0x1d,0xff,0xd7,0x4e,0x1d,0xfa,0xdb,0x4f,0x1e,0x2a,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf6,0xff,0xff,0xff,0x2a,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x17,0xff,0xff,0xff,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x35,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x09,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9a,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xb2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x92,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0xff,0xff,0xff,0xd1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xd3,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0e,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xb2,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0e,0xff,0xff,0xff,0xf1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbe,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x35,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xb0,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x50,0x21,0xff,0xd7,0x47,0x02,0xff,0xdb,0x64,0x43,0xff,0xef,0xc4,0xbc,0xff,0xe4,0x95,0x86,0xff,0xd7,0x40,0x00,0xff,0xd8,0x4d,0x1d,0xff,0xd7,0x45,0x00,0xff,0xd8,0x4e,0x23,0xff,0xd5,0x2e,0x00,0xff,0xd5,0x27,0x00,0xff,0xd7,0x4a,0x19,0xff,0xd7,0x48,0x06,0xff,0xd7,0x4a,0x12,0xff,0xd7,0x42,0x00,0xff,0xe2,0x8a,0x77,0xff,0xef,0xc7,0xc0,0xff,0xde,0x74,0x5b,0xff,0xd7,0x42,0x00,0xff,0xd8,0x50,0x23,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd9,0x4e,0x1d,0xff,0xd7,0x4e,0x1d,0xfa,0xdb,0x4f,0x1e,0x2a,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf6,0xff,0xff,0xff,0x2a,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0xff,0xff,0xff,0x35,0xff,0xff,0xff,0x54,0xff,0xff,0xff,0x43,0xff,0xff,0xff,0x14,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0xff,0xff,0xff,0x04,0xff,0xff,0xff,0x08,0xff,0xff,0xff,0x85,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0xff,0xff,0xff,0x42,0xff,0xff,0xff,0x04,0xff,0xff,0xff,0x08,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0a,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9c,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x99,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xaf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x7e,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3d,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x4f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x5a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0e,0xff,0xff,0xff,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xec,0xff,0xff,0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3c,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x91,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xeb,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xaf,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd9,0x55,0x2e,0xff,0xd5,0x20,0x00,0xff,0xed,0xbd,0xb3,0xff,0xff,0xff,0xff,0xff,0xfc,0xf3,0xf1,0xff,0xd9,0x59,0x34,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x47,0x03,0xff,0xdb,0x5c,0x30,0xff,0xea,0xb6,0xad,0xff,0xec,0xbd,0xb6,0xff,0xdd,0x6d,0x4e,0xff,0xd7,0x43,0x00,0xff,0xd8,0x54,0x2e,0xff,0xd8,0x42,0x00,0xff,0xf7,0xde,0xd7,0xff,0xff,0xff,0xff,0xff,0xf3,0xd1,0xc8,0xff,0xd6,0x32,0x00,0xff,0xd8,0x53,0x2b,0xff,0xd8,0x4e,0x1e,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd9,0x4e,0x1d,0xff,0xd7,0x4e,0x1d,0xfa,0xdb,0x4f,0x1e,0x2a,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf6,0xff,0xff,0xff,0x2a,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x05,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x3d,0xff,0xff,0xff,0xcf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed,0xff,0xff,0xff,0x7e,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x36,0xff,0xff,0xff,0xf2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xf2,0xff,0xff,0xff,0xfc,0xff,0xff,0xff,0x5f,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0d,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9c,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x83,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xb4,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x28,0xff,0xff,0xff,0xf6,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x98,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0e,0xff,0xff,0xff,0xee,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97,0xff,0xff,0xff,0xd1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9d,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x17,0xff,0xff,0xff,0xe8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa3,0xff,0xff,0xff,0xc3,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xae,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4f,0x1f,0xff,0xd8,0x4f,0x23,0xff,0xd8,0x47,0x00,0xff,0xf7,0xe0,0xd9,0xff,0xff,0xff,0xff,0xff,0xf6,0xdd,0xd7,0xff,0xd8,0x4a,0x00,0xff,0xd7,0x4a,0x17,0xff,0xdc,0x65,0x3f,0xff,0xf9,0xe7,0xe2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0xf2,0xee,0xff,0xde,0x75,0x5b,0xff,0xd7,0x49,0x14,0xff,0xd6,0x31,0x00,0xff,0xf1,0xcd,0xc6,0xff,0xff,0xff,0xff,0xff,0xfc,0xf3,0xf1,0xff,0xda,0x60,0x40,0xff,0xd7,0x48,0x04,0xff,0xd8,0x50,0x21,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd9,0x4e,0x1d,0xff,0xd7,0x4e,0x1d,0xfa,0xdb,0x4f,0x1e,0x2a,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf6,0xff,0xff,0xff,0x2a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x44,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe9,0xff,0xff,0xff,0xb8,0xff,0xff,0xff,0xd8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x94,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x3b,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x65,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0d,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8e,0xff,0xff,0xff,0x6a,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbd,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xb8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3,0xff,0xff,0xff,0x0e,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x1b,0xff,0xff,0xff,0xec,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8e,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0e,0xff,0xff,0xff,0xec,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0x82,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1,0xff,0xff,0xff,0x1d,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x05,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x6e,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb,0xff,0xff,0xff,0x3e,0xff,0xff,0xff,0xc7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xae,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4f,0x21,0xff,0xd8,0x4a,0x12,0xff,0xd9,0x58,0x30,0xff,0xfa,0xec,0xe8,0xff,0xff,0xff,0xff,0xff,0xef,0xc4,0xbd,0xff,0xd6,0x29,0x00,0xff,0xd5,0x2f,0x00,0xff,0xea,0xb4,0xa9,0xff,0xff,0xff,0xff,0xff,0xfe,0xfc,0xfc,0xff,0xfe,0xfb,0xfb,0xff,0xff,0xff,0xff,0xff,0xee,0xc2,0xbb,0xff,0xd6,0x29,0x00,0xff,0xd5,0x2a,0x00,0xff,0xea,0xb5,0xac,0xff,0xff,0xff,0xff,0xff,0xfd,0xfa,0xf9,0xff,0xde,0x72,0x56,0xff,0xd7,0x43,0x00,0xff,0xd8,0x50,0x23,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd9,0x4e,0x1d,0xff,0xd7,0x4e,0x1d,0xfa,0xdb,0x4f,0x1e,0x2a,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0xff,0xff,0xff,0x04,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf6,0xff,0xff,0xff,0x2b,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0c,0xff,0xff,0xff,0xdc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xb3,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x2f,0xff,0xff,0xff,0x04,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0x6f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0x64,0xff,0xff,0xff,0x33,0xff,0xff,0xff,0x1a,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0a,0xff,0xff,0xff,0xe2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdb,0xff,0xff,0xff,0xf6,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbe,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x5e,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x54,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x63,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3c,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0e,0xff,0xff,0xff,0xec,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x75,0xff,0xff,0xff,0x19,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7e,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xc7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbd,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xd2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xae,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4f,0x21,0xff,0xd7,0x4a,0x0f,0xff,0xda,0x5a,0x35,0xff,0xfa,0xed,0xea,0xff,0xff,0xff,0xff,0xff,0xef,0xc7,0xbf,0xff,0xd6,0x30,0x00,0xff,0xd5,0x2e,0x00,0xff,0xea,0xb3,0xa8,0xff,0xff,0xff,0xff,0xff,0xfe,0xfc,0xfc,0xff,0xfe,0xfb,0xfb,0xff,0xff,0xff,0xff,0xff,0xed,0xc0,0xb7,0xff,0xd6,0x2d,0x00,0xff,0xd5,0x2d,0x00,0xff,0xeb,0xb6,0xad,0xff,0xff,0xff,0xff,0xff,0xfd,0xfa,0xf9,0xff,0xde,0x72,0x56,0xff,0xd7,0x43,0x00,0xff,0xd8,0x50,0x23,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd9,0x4e,0x1d,0xff,0xd7,0x4e,0x1d,0xfa,0xdb,0x4f,0x1e,0x2a,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf6,0xff,0xff,0xff,0x2e,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x54,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0xff,0xff,0xff,0x36,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0c,0xff,0xff,0xff,0x01,0xff,0xff,0xff,0x0e,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7b,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x09,0xff,0xff,0xff,0xe3,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8d,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x16,0xff,0xff,0xff,0xe4,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xaa,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xba,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xc6,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0e,0xff,0xff,0xff,0xec,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xbc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xd5,0xff,0xff,0xff,0x0b,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x4b,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x54,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xd5,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xae,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4f,0x1f,0xff,0xd8,0x4f,0x24,0xff,0xd8,0x45,0x00,0xff,0xf6,0xdd,0xd7,0xff,0xff,0xff,0xff,0xff,0xf6,0xdc,0xd5,0xff,0xd8,0x41,0x00,0xff,0xd8,0x4f,0x25,0xff,0xdb,0x5d,0x32,0xff,0xf9,0xe7,0xe2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0xf1,0xed,0xff,0xde,0x71,0x55,0xff,0xd7,0x4d,0x20,0xff,0xd6,0x29,0x00,0xff,0xf1,0xcb,0xc4,0xff,0xff,0xff,0xff,0xff,0xfb,0xf1,0xee,0xff,0xda,0x5d,0x3b,0xff,0xd7,0x49,0x09,0xff,0xd8,0x4f,0x21,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd9,0x4e,0x1d,0xff,0xd7,0x4e,0x1d,0xfa,0xdb,0x4f,0x1e,0x2a,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x1a,0xff,0xff,0xff,0x62,0xff,0xff,0xff,0x86,0xff,0xff,0xff,0x0a,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x05,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x71,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf6,0xff,0xff,0xff,0x2f,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf9,0xff,0xff,0xff,0xec,0xff,0xff,0xff,0xed,0xff,0xff,0xff,0xeb,0xff,0xff,0xff,0xec,0xff,0xff,0xff,0xec,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa2,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x48,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0x3a,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0a,0xff,0xff,0xff,0xe3,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5,0xff,0xff,0xff,0x32,0xff,0xff,0xff,0xcc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x50,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x9a,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0x11,0xff,0xff,0xff,0x24,0xff,0xff,0xff,0xf9,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x72,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0e,0xff,0xff,0xff,0xec,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x82,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x57,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x5d,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xae,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xda,0xff,0xff,0xff,0x09,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0xd2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xae,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd9,0x55,0x2f,0xff,0xd5,0x1e,0x00,0xff,0xef,0xc3,0xba,0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0xfb,0xff,0xe0,0x81,0x6a,0xff,0xd6,0x39,0x00,0xff,0xd8,0x4d,0x1c,0xff,0xdc,0x63,0x3b,0xff,0xeb,0xb7,0xae,0xff,0xec,0xbe,0xb7,0xff,0xde,0x72,0x55,0xff,0xd7,0x46,0x00,0xff,0xd7,0x46,0x01,0xff,0xdc,0x68,0x46,0xff,0xfc,0xf4,0xf1,0xff,0xff,0xff,0xff,0xff,0xf4,0xd5,0xce,0xff,0xd7,0x34,0x00,0xff,0xd8,0x52,0x2b,0xff,0xd8,0x4e,0x1e,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd9,0x4e,0x1d,0xff,0xd7,0x4e,0x1d,0xfa,0xdb,0x4f,0x1e,0x2a,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0xff,0xff,0xff,0x05,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x7e,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x05,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x6f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf6,0xff,0xff,0xff,0x30,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x82,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf8,0xff,0xff,0xff,0xdd,0xff,0xff,0xff,0xdb,0xff,0xff,0xff,0xda,0xff,0xff,0xff,0xda,0xff,0xff,0xff,0xdc,0xff,0xff,0xff,0xce,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x87,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x47,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0x39,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0a,0xff,0xff,0xff,0xe2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1,0xff,0xff,0xff,0x3e,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x34,0xff,0xff,0xff,0xf9,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xea,0xff,0xff,0xff,0x1c,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x44,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x53,0xff,0xff,0xff,0x66,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xee,0xff,0xff,0xff,0x1d,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0e,0xff,0xff,0xff,0xec,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0c,0xff,0xff,0xff,0xd5,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xb1,0xff,0xff,0xff,0x23,0xff,0xff,0xff,0xf6,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x79,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x09,0xff,0xff,0xff,0xd2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xae,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x51,0x25,0xff,0xd6,0x40,0x00,0xff,0xdf,0x7a,0x62,0xff,0xfe,0xfa,0xf8,0xff,0xff,0xff,0xff,0xff,0xf7,0xe2,0xdd,0xff,0xd9,0x4a,0x00,0xff,0xd6,0x3a,0x00,0xff,0xd8,0x4f,0x25,0xff,0xd5,0x2c,0x00,0xff,0xd5,0x27,0x00,0xff,0xd7,0x4c,0x1d,0xff,0xd7,0x42,0x00,0xff,0xd7,0x34,0x00,0xff,0xf4,0xd5,0xcd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5,0x9c,0x8d,0xff,0xd5,0x2e,0x00,0xff,0xd8,0x53,0x2a,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd9,0x4e,0x1d,0xff,0xd7,0x4e,0x1d,0xfa,0xdb,0x4f,0x1e,0x2a,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0xff,0xff,0xff,0x05,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x79,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xee,0xff,0xff,0xff,0x18,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x08,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x7b,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5,0xff,0xff,0xff,0x2a,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x6a,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf4,0xff,0xff,0xff,0x1e,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0a,0xff,0xff,0xff,0x08,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x1f,0xff,0xff,0xff,0x0e,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x46,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0x35,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0a,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9a,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x09,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x6e,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0xd4,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xc0,0xff,0xff,0xff,0xc9,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xaa,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0e,0xff,0xff,0xff,0xec,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x7a,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xc2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0x21,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x07,0xff,0xff,0xff,0xd2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xae,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x53,0x2b,0xff,0xd6,0x2c,0x00,0xff,0xee,0xc0,0xb6,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf8,0xe3,0xde,0xff,0xe0,0x81,0x6a,0xff,0xd7,0x3b,0x00,0xff,0xd6,0x2a,0x00,0xff,0xd6,0x2a,0x00,0xff,0xd7,0x35,0x00,0xff,0xde,0x75,0x59,0xff,0xf4,0xd8,0xd1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf4,0xd6,0xcf,0xff,0xd7,0x38,0x00,0xff,0xd8,0x52,0x28,0xff,0xd8,0x4e,0x1e,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd9,0x4e,0x1d,0xff,0xd7,0x4e,0x1d,0xfa,0xdb,0x4f,0x1e,0x2a,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x4d,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x1a,0xff,0xff,0xff,0xd7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xd7,0xff,0xff,0xff,0x06,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x29,0xff,0xff,0xff,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8d,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x11,0xff,0xff,0xff,0xd8,0xff,0xff,0xff,0xe4,0xff,0xff,0xff,0x49,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x49,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x49,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x09,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9a,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xaf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x50,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0e,0xff,0xff,0xff,0xec,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7e,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x1b,0xff,0xff,0xff,0xf4,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa1,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0xff,0xff,0xff,0x05,0xff,0xff,0xff,0xd1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xad,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4f,0x20,0xff,0xd8,0x4e,0x1f,0xff,0xd8,0x46,0x00,0xff,0xf4,0xd6,0xcf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xfc,0xfb,0xff,0xf5,0xd8,0xd1,0xff,0xee,0xc4,0xbd,0xff,0xed,0xc3,0xbc,0xff,0xf3,0xd3,0xcb,0xff,0xfd,0xf8,0xf6,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf8,0xe6,0xe2,0xff,0xdb,0x5b,0x2d,0xff,0xd7,0x48,0x08,0xff,0xd8,0x50,0x23,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd9,0x4e,0x1d,0xff,0xd7,0x4e,0x1d,0xfa,0xdb,0x4f,0x1e,0x2a,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x05,0xff,0xff,0xff,0xd0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xca,0xff,0xff,0xff,0xa6,0xff,0xff,0xff,0xe4,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x68,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x06,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x89,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xac,0xff,0xff,0xff,0x6e,0xff,0xff,0xff,0x77,0xff,0xff,0xff,0xd1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfa,0xff,0xff,0xff,0x28,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x2e,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xd9,0xff,0xff,0xff,0xab,0xff,0xff,0xff,0x44,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0c,0xff,0xff,0xff,0xdc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x99,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x14,0xff,0xff,0xff,0xe2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0x41,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x29,0xff,0xff,0xff,0xfc,0xff,0xff,0xff,0xfb,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xde,0xff,0xff,0xff,0x0c,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0e,0xff,0xff,0xff,0xea,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7d,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x9e,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0xff,0xff,0xff,0x05,0xff,0xff,0xff,0xcf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xac,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1c,0xff,0xd8,0x51,0x24,0xff,0xd7,0x48,0x0a,0xff,0xd8,0x4b,0x00,0xff,0xef,0xc6,0xbe,0xff,0xff,0xfd,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xf3,0xd1,0xca,0xff,0xda,0x59,0x2b,0xff,0xd7,0x44,0x00,0xff,0xd8,0x52,0x27,0xff,0xd8,0x4e,0x1b,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd9,0x4e,0x1d,0xff,0xd7,0x4e,0x1d,0xfa,0xdb,0x4f,0x1e,0x2a,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x26,0xff,0xff,0xff,0xd8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x87,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x96,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xea,0xff,0xff,0xff,0x48,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x94,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x6e,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0e,0xff,0xff,0xff,0xea,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa2,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x49,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xee,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xbd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x87,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0f,0xff,0xff,0xff,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x85,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x08,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x38,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xc5,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x05,0xff,0xff,0xff,0xdc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xb5,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4d,0x1b,0xff,0xd8,0x51,0x24,0xff,0xd8,0x4d,0x1c,0xff,0xd6,0x27,0x00,0xff,0xe1,0x84,0x6f,0xff,0xef,0xc4,0xbc,0xff,0xf7,0xdf,0xd9,0xff,0xfc,0xf5,0xf4,0xff,0xfc,0xf6,0xf5,0xff,0xf8,0xe5,0xe0,0xff,0xf0,0xcb,0xc4,0xff,0xe3,0x91,0x7f,0xff,0xd6,0x30,0x00,0xff,0xd7,0x49,0x0f,0xff,0xd8,0x52,0x27,0xff,0xd8,0x4d,0x1b,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd9,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xf9,0xdb,0x4f,0x1e,0x2a,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0a,0xff,0xff,0xff,0x6d,0xff,0xff,0xff,0xa5,0xff,0xff,0xff,0xaf,0xff,0xff,0xff,0x96,0xff,0xff,0xff,0x45,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x3f,0xff,0xff,0xff,0x90,0xff,0xff,0xff,0xad,0xff,0xff,0xff,0xa6,0xff,0xff,0xff,0x74,0xff,0xff,0xff,0x16,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x4e,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0x7b,0xff,0xff,0xff,0x26,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x06,0xff,0xff,0xff,0x58,0xff,0xff,0xff,0x6b,0xff,0xff,0xff,0x3c,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x4b,0xff,0xff,0xff,0x64,0xff,0xff,0xff,0x6c,0xff,0xff,0xff,0x2f,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x2e,0xff,0xff,0xff,0x6b,0xff,0xff,0xff,0x64,0xff,0xff,0xff,0x1e,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x05,0xff,0xff,0xff,0x5c,0xff,0xff,0xff,0x6c,0xff,0xff,0xff,0x31,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x55,0xff,0xff,0xff,0x6d,0xff,0xff,0xff,0x2c,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0xff,0xff,0xff,0x51,0xff,0xff,0xff,0x6b,0xff,0xff,0xff,0x42,
|
||||||
|
0xd8,0x4e,0x1d,0xfb,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1c,0xff,0xd8,0x4f,0x20,0xff,0xd8,0x54,0x2c,0xff,0xd6,0x3c,0x00,0xff,0xd5,0x1d,0x00,0xff,0xd8,0x48,0x00,0xff,0xda,0x62,0x45,0xff,0xda,0x63,0x47,0xff,0xd9,0x50,0x19,0xff,0xd6,0x22,0x00,0xff,0xd6,0x35,0x00,0xff,0xd8,0x53,0x2a,0xff,0xd8,0x50,0x22,0xff,0xd8,0x4e,0x1c,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd9,0x4e,0x1d,0xff,0xd8,0x4f,0x1d,0xfa,0xdb,0x4f,0x1e,0x2a,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1d,0xdd,0xdd,0x50,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x52,0x26,0xff,0xd9,0x55,0x2f,0xff,0xd8,0x4f,0x22,0xff,0xd7,0x47,0x00,0xff,0xd7,0x47,0x00,0xff,0xd8,0x4d,0x1b,0xff,0xd9,0x54,0x2f,0xff,0xd8,0x53,0x28,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xdb,0x4f,0x1d,0xff,0xd8,0x4e,0x1d,0xec,0xe1,0x4b,0x1e,0x11,0x00,0x00,0x00,0x00,0xff,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0xff,0xff,0xff,0x04,0xff,0xff,0xff,0x02,0xff,0xff,0xff,0x01,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x04,0xff,0xff,0xff,0x01,0xff,0xff,0xff,0x02,0xff,0xff,0xff,0x04,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x05,0xff,0xff,0xff,0x05,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x04,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x04,0xff,0xff,0xff,0x04,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0xff,0xff,0xff,0x04,0xff,0xff,0xff,0x04,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0xff,0xff,0xff,0x04,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x04,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x04,0xff,0xff,0xff,0x03,
|
||||||
|
0xd9,0x4e,0x1e,0x99,0xe5,0x53,0x1f,0xff,0xd8,0x4e,0x1c,0xfb,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4f,0x1f,0xff,0xd8,0x50,0x22,0xff,0xd8,0x50,0x22,0xff,0xd8,0x4f,0x20,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfc,0xe3,0x52,0x1e,0xff,0xd8,0x4e,0x1d,0xb7,0x00,0x00,0x00,0x00,0xff,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1d,0x34,0xda,0x4f,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd8,0x4e,0x1d,0xfe,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x4e,0x1c,0xfb,0xe3,0x52,0x1f,0xff,0xd8,0x4f,0x1e,0x54,0x00,0x00,0x00,0x00,0xff,0x55,0x00,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0xd8,0x4f,0x1e,0x9b,0xe9,0x54,0x1f,0xff,0xd8,0x4e,0x1d,0xf9,0xd8,0x4e,0x1d,0xfe,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xf9,0xe8,0x54,0x1f,0xff,0xd7,0x4e,0x1d,0xba,0x00,0x00,0x00,0x00,0xff,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0xbf,0x40,0x40,0x04,0xd7,0x4e,0x1e,0xb3,0xea,0x55,0x1f,0xff,0xd8,0x4e,0x1d,0xfe,0xd7,0x4e,0x1c,0xfb,0xd8,0x4e,0x1d,0xfe,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd8,0x4e,0x1c,0xfb,0xd9,0x4e,0x1d,0xfc,0xe7,0x53,0x1f,0xff,0xd8,0x4e,0x1c,0xd8,0xd6,0x52,0x1f,0x19,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0xff,0x55,0x55,0x03,0xd8,0x4f,0x1d,0x95,0xdb,0x4f,0x1d,0xff,0xe6,0x53,0x1f,0xff,0xdd,0x50,0x1e,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xdc,0x4f,0x1d,0xff,0xe5,0x53,0x1f,0xff,0xe0,0x51,0x1e,0xff,0xd9,0x4f,0x1d,0xae,0xd7,0x51,0x1b,0x13,0x00,0x00,0x00,0x00,0xaa,0x55,0x00,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xd6,0x4d,0x1b,0x38,0xd9,0x4e,0x1c,0x9a,0xd8,0x4e,0x1e,0xd8,0xd8,0x4e,0x1d,0xfb,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd9,0x4e,0x1d,0xfc,0xd7,0x4e,0x1d,0xe1,0xd7,0x4f,0x1d,0xa1,0xd6,0x4e,0x1e,0x45,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xaa,0x55,0x00,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_image_dsc_t img_jetkvm = {
|
||||||
|
.header.magic = LV_IMAGE_HEADER_MAGIC,
|
||||||
|
.header.cf = LV_COLOR_FORMAT_ARGB8888,
|
||||||
|
.header.flags = 0,
|
||||||
|
.header.w = 116,
|
||||||
|
.header.h = 32,
|
||||||
|
.header.stride = 464,
|
||||||
|
.data_size = sizeof(img_jetkvm_map),
|
||||||
|
.data = img_jetkvm_map,
|
||||||
|
};
|
||||||
|
|
||||||
|
|
@ -0,0 +1,75 @@
|
||||||
|
#ifdef __has_include
|
||||||
|
#if __has_include("lvgl.h")
|
||||||
|
#ifndef LV_LVGL_H_INCLUDE_SIMPLE
|
||||||
|
#define LV_LVGL_H_INCLUDE_SIMPLE
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(LV_LVGL_H_INCLUDE_SIMPLE)
|
||||||
|
#include "lvgl.h"
|
||||||
|
#elif defined(LV_BUILD_TEST)
|
||||||
|
#include "../lvgl.h"
|
||||||
|
#else
|
||||||
|
#include "lvgl/lvgl.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_LOGO
|
||||||
|
#define LV_ATTRIBUTE_IMG_LOGO
|
||||||
|
#endif
|
||||||
|
|
||||||
|
static const
|
||||||
|
LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_LOGO
|
||||||
|
uint8_t img_logo_map[] = {
|
||||||
|
|
||||||
|
0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xdc,0x50,0x1e,0x33,0xd8,0x4d,0x1d,0x98,0xd8,0x4e,0x1c,0xd9,0xd9,0x4e,0x1c,0xfc,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1c,0xfb,0xd8,0x4e,0x1d,0xdf,0xd8,0x4e,0x1e,0xa3,0xda,0x4e,0x1e,0x45,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0xff,0x55,0x00,0x03,0xd8,0x4f,0x1d,0x95,0xda,0x4f,0x1d,0xff,0xe5,0x53,0x1f,0xff,0xdd,0x50,0x1e,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xdc,0x4f,0x1d,0xff,0xe5,0x53,0x1f,0xff,0xde,0x50,0x1e,0xff,0xd8,0x4e,0x1e,0xa4,0xd9,0x4d,0x1a,0x14,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0xff,0x55,0x00,0x03,0xd8,0x4f,0x1d,0xb2,0xe9,0x54,0x1f,0xff,0xd8,0x4e,0x1d,0xfe,0xd8,0x4e,0x1c,0xfb,0xd8,0x4e,0x1d,0xfe,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd8,0x4e,0x1c,0xfb,0xd8,0x4e,0x1d,0xfd,0xe7,0x53,0x1f,0xff,0xd8,0x4f,0x1d,0xd9,0xde,0x4e,0x21,0x17,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0xd9,0x4e,0x1d,0x94,0xea,0x55,0x1f,0xff,0xd8,0x4e,0x1d,0xf9,0xd8,0x4e,0x1d,0xfe,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xf9,0xe7,0x53,0x1f,0xff,0xd8,0x4e,0x1c,0xb6,0x00,0x00,0x00,0x00,0xff,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xda,0x4f,0x1c,0x37,0xdb,0x4f,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd8,0x4e,0x1d,0xfe,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x4e,0x1c,0xfb,0xe5,0x52,0x1f,0xff,0xda,0x4d,0x1d,0x59,0x00,0x00,0x00,0x00,0xbf,0x40,0x00,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1d,0x9d,0xe6,0x53,0x1f,0xff,0xd7,0x4e,0x1c,0xfb,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4f,0x1f,0xff,0xd8,0x50,0x21,0xff,0xd8,0x50,0x22,0xff,0xd8,0x4f,0x20,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1c,0xfb,0xe3,0x52,0x1e,0xff,0xd9,0x4f,0x1e,0xb5,0x00,0x00,0x00,0x00,0xff,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd9,0x4f,0x1d,0xdc,0xdc,0x50,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1c,0xff,0xd8,0x51,0x24,0xff,0xd9,0x55,0x2f,0xff,0xd8,0x4e,0x21,0xff,0xd7,0x48,0x00,0xff,0xd7,0x47,0x00,0xff,0xd8,0x4d,0x1d,0xff,0xd8,0x54,0x2e,0xff,0xd8,0x52,0x26,0xff,0xd8,0x4e,0x1c,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xda,0x4f,0x1d,0xff,0xd9,0x4f,0x1d,0xf0,0xd9,0x4d,0x1a,0x14,0x00,0x00,0x00,0x00,0xff,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1d,0xfc,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1c,0xff,0xd8,0x4f,0x20,0xff,0xd7,0x41,0x00,0xff,0xd5,0x20,0x00,0xff,0xd8,0x4a,0x00,0xff,0xda,0x60,0x42,0xff,0xda,0x62,0x46,0xff,0xd9,0x4f,0x13,0xff,0xd6,0x23,0x00,0xff,0xd6,0x3c,0x00,0xff,0xd8,0x50,0x22,0xff,0xd8,0x4e,0x1c,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd9,0x4f,0x1d,0xff,0xd8,0x4e,0x1d,0xf9,0xd9,0x4d,0x20,0x28,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x50,0x22,0xff,0xd7,0x46,0x00,0xff,0xde,0x77,0x5d,0xff,0xef,0xc4,0xbb,0xff,0xf7,0xe1,0xdb,0xff,0xfc,0xf4,0xf2,0xff,0xfc,0xf6,0xf4,0xff,0xf8,0xe4,0xdf,0xff,0xf1,0xcb,0xc3,0xff,0xe0,0x82,0x6c,0xff,0xd7,0x42,0x00,0xff,0xd8,0x50,0x23,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd9,0x4e,0x1d,0xff,0xd7,0x4e,0x1d,0xfa,0xd5,0x4d,0x1e,0x2b,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x51,0xff,0xff,0xff,0xc6,0xff,0xff,0xff,0xb2,0xff,0xff,0xff,0x1f,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x07,0xff,0xff,0xff,0xa1,0xff,0xff,0xff,0xc9,0xff,0xff,0xff,0x70,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x24,0xff,0xff,0xff,0xb1,0xff,0xff,0xff,0xba,0xff,0xff,0xff,0xbc,0xff,0xff,0xff,0x39,0xff,0xff,0xff,0x99,0xff,0xff,0xff,0xc6,0xff,0xff,0xff,0x93,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x05,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xc5,0xff,0xff,0xff,0x93,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0a,0xff,0xff,0xff,0xaf,0xff,0xff,0xff,0xb8,0xff,0xff,0xff,0xc4,0xff,0xff,0xff,0x67,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x08,0xff,0xff,0xff,0xa5,0xff,0xff,0xff,0xba,0xff,0xff,0xff,0xc1,0xff,0xff,0xff,0x7f,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x50,0x22,0xff,0xd7,0x47,0x00,0xff,0xdb,0x64,0x45,0xff,0xfd,0xf6,0xf4,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xfa,0xf8,0xff,0xde,0x73,0x57,0xff,0xd7,0x43,0x00,0xff,0xd8,0x51,0x23,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd9,0x4e,0x1d,0xff,0xd7,0x4e,0x1d,0xfa,0xdb,0x4f,0x1e,0x2a,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x76,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x2c,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x07,0xff,0xff,0xff,0x37,0xff,0xff,0xff,0x39,0xff,0xff,0xff,0x0c,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0a,0xff,0xff,0xff,0xea,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa2,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x12,0xff,0xff,0xff,0xd7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x88,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x30,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x3c,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x86,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x12,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3,0xff,0xff,0xff,0x09,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x53,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xb8,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1c,0xff,0xd8,0x4f,0x21,0xff,0xd9,0x57,0x32,0xff,0xd8,0x50,0x23,0xff,0xd9,0x56,0x2a,0xff,0xf9,0xe8,0xe4,0xff,0xfe,0xfb,0xf9,0xff,0xf5,0xd7,0xd0,0xff,0xed,0xc2,0xbc,0xff,0xee,0xc4,0xbd,0xff,0xf4,0xd3,0xcc,0xff,0xfd,0xf6,0xf5,0xff,0xfb,0xf0,0xed,0xff,0xdd,0x6a,0x4a,0xff,0xd7,0x4a,0x12,0xff,0xd9,0x58,0x34,0xff,0xd8,0x50,0x23,0xff,0xd8,0x4e,0x1c,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd9,0x4e,0x1d,0xff,0xd7,0x4e,0x1d,0xfa,0xdb,0x4f,0x1e,0x2a,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x6f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3,0xff,0xff,0xff,0x2a,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0xff,0xff,0xff,0x02,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x1d,0xff,0xff,0xff,0xf5,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x38,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x09,0xff,0xff,0xff,0xdc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x99,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x05,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0xff,0xff,0xff,0xbd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7e,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x42,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x86,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x91,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3,0xff,0xff,0xff,0x24,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x10,0xff,0xff,0xff,0xee,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x5c,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xb5,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xad,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1c,0xff,0xd8,0x4f,0x20,0xff,0xd7,0x49,0x0d,0xff,0xd5,0x15,0x00,0xff,0xd6,0x3a,0x00,0xff,0xd7,0x48,0x03,0xff,0xdb,0x5b,0x30,0xff,0xde,0x74,0x59,0xff,0xd7,0x3c,0x00,0xff,0xd6,0x26,0x00,0xff,0xd6,0x2a,0x00,0xff,0xd7,0x38,0x00,0xff,0xdd,0x6c,0x4e,0xff,0xdc,0x65,0x42,0xff,0xd7,0x46,0x02,0xff,0xd7,0x3f,0x00,0xff,0xd5,0x05,0x00,0xff,0xd7,0x45,0x00,0xff,0xd8,0x50,0x22,0xff,0xd8,0x4e,0x1b,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd9,0x4e,0x1d,0xff,0xd7,0x4e,0x1d,0xfa,0xdb,0x4f,0x1e,0x2a,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf6,0xff,0xff,0xff,0x2a,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x17,0xff,0xff,0xff,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x35,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x09,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9a,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xb2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x92,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0xff,0xff,0xff,0xd1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xd3,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0e,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xb2,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0e,0xff,0xff,0xff,0xf1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbe,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x35,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xb0,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x50,0x21,0xff,0xd7,0x47,0x02,0xff,0xdb,0x64,0x43,0xff,0xef,0xc4,0xbc,0xff,0xe4,0x95,0x86,0xff,0xd7,0x40,0x00,0xff,0xd8,0x4d,0x1d,0xff,0xd7,0x45,0x00,0xff,0xd8,0x4e,0x23,0xff,0xd5,0x2e,0x00,0xff,0xd5,0x27,0x00,0xff,0xd7,0x4a,0x19,0xff,0xd7,0x48,0x06,0xff,0xd7,0x4a,0x12,0xff,0xd7,0x42,0x00,0xff,0xe2,0x8a,0x77,0xff,0xef,0xc7,0xc0,0xff,0xde,0x74,0x5b,0xff,0xd7,0x42,0x00,0xff,0xd8,0x50,0x23,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd9,0x4e,0x1d,0xff,0xd7,0x4e,0x1d,0xfa,0xdb,0x4f,0x1e,0x2a,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf6,0xff,0xff,0xff,0x2a,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0xff,0xff,0xff,0x35,0xff,0xff,0xff,0x54,0xff,0xff,0xff,0x43,0xff,0xff,0xff,0x14,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0xff,0xff,0xff,0x04,0xff,0xff,0xff,0x08,0xff,0xff,0xff,0x85,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0xff,0xff,0xff,0x42,0xff,0xff,0xff,0x04,0xff,0xff,0xff,0x08,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0a,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9c,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x99,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xaf,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x7e,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3d,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x4f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x5a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0e,0xff,0xff,0xff,0xf0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xec,0xff,0xff,0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3c,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x91,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xeb,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xaf,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd9,0x55,0x2e,0xff,0xd5,0x20,0x00,0xff,0xed,0xbd,0xb3,0xff,0xff,0xff,0xff,0xff,0xfc,0xf3,0xf1,0xff,0xd9,0x59,0x34,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x47,0x03,0xff,0xdb,0x5c,0x30,0xff,0xea,0xb6,0xad,0xff,0xec,0xbd,0xb6,0xff,0xdd,0x6d,0x4e,0xff,0xd7,0x43,0x00,0xff,0xd8,0x54,0x2e,0xff,0xd8,0x42,0x00,0xff,0xf7,0xde,0xd7,0xff,0xff,0xff,0xff,0xff,0xf3,0xd1,0xc8,0xff,0xd6,0x32,0x00,0xff,0xd8,0x53,0x2b,0xff,0xd8,0x4e,0x1e,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd9,0x4e,0x1d,0xff,0xd7,0x4e,0x1d,0xfa,0xdb,0x4f,0x1e,0x2a,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf6,0xff,0xff,0xff,0x2a,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x05,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x3d,0xff,0xff,0xff,0xcf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed,0xff,0xff,0xff,0x7e,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x36,0xff,0xff,0xff,0xf2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xf2,0xff,0xff,0xff,0xfc,0xff,0xff,0xff,0x5f,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0d,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9c,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x83,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xb4,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x28,0xff,0xff,0xff,0xf6,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x98,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3,0xff,0xff,0xff,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0e,0xff,0xff,0xff,0xee,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97,0xff,0xff,0xff,0xd1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9d,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x17,0xff,0xff,0xff,0xe8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa3,0xff,0xff,0xff,0xc3,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xae,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4f,0x1f,0xff,0xd8,0x4f,0x23,0xff,0xd8,0x47,0x00,0xff,0xf7,0xe0,0xd9,0xff,0xff,0xff,0xff,0xff,0xf6,0xdd,0xd7,0xff,0xd8,0x4a,0x00,0xff,0xd7,0x4a,0x17,0xff,0xdc,0x65,0x3f,0xff,0xf9,0xe7,0xe2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0xf2,0xee,0xff,0xde,0x75,0x5b,0xff,0xd7,0x49,0x14,0xff,0xd6,0x31,0x00,0xff,0xf1,0xcd,0xc6,0xff,0xff,0xff,0xff,0xff,0xfc,0xf3,0xf1,0xff,0xda,0x60,0x40,0xff,0xd7,0x48,0x04,0xff,0xd8,0x50,0x21,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd9,0x4e,0x1d,0xff,0xd7,0x4e,0x1d,0xfa,0xdb,0x4f,0x1e,0x2a,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf6,0xff,0xff,0xff,0x2a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x44,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe9,0xff,0xff,0xff,0xb8,0xff,0xff,0xff,0xd8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x94,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x3b,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x65,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0d,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8e,0xff,0xff,0xff,0x6a,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbd,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xb8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3,0xff,0xff,0xff,0x0e,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x1b,0xff,0xff,0xff,0xec,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8e,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0e,0xff,0xff,0xff,0xec,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0x82,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1,0xff,0xff,0xff,0x1d,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x05,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x6e,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb,0xff,0xff,0xff,0x3e,0xff,0xff,0xff,0xc7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xae,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4f,0x21,0xff,0xd8,0x4a,0x12,0xff,0xd9,0x58,0x30,0xff,0xfa,0xec,0xe8,0xff,0xff,0xff,0xff,0xff,0xef,0xc4,0xbd,0xff,0xd6,0x29,0x00,0xff,0xd5,0x2f,0x00,0xff,0xea,0xb4,0xa9,0xff,0xff,0xff,0xff,0xff,0xfe,0xfc,0xfc,0xff,0xfe,0xfb,0xfb,0xff,0xff,0xff,0xff,0xff,0xee,0xc2,0xbb,0xff,0xd6,0x29,0x00,0xff,0xd5,0x2a,0x00,0xff,0xea,0xb5,0xac,0xff,0xff,0xff,0xff,0xff,0xfd,0xfa,0xf9,0xff,0xde,0x72,0x56,0xff,0xd7,0x43,0x00,0xff,0xd8,0x50,0x23,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd9,0x4e,0x1d,0xff,0xd7,0x4e,0x1d,0xfa,0xdb,0x4f,0x1e,0x2a,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0xff,0xff,0xff,0x04,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf6,0xff,0xff,0xff,0x2b,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0c,0xff,0xff,0xff,0xdc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xb3,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x2f,0xff,0xff,0xff,0x04,0xff,0xff,0xff,0x30,0xff,0xff,0xff,0x6f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0x64,0xff,0xff,0xff,0x33,0xff,0xff,0xff,0x1a,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0a,0xff,0xff,0xff,0xe2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdb,0xff,0xff,0xff,0xf6,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbe,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x5e,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x54,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x63,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3c,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0e,0xff,0xff,0xff,0xec,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x75,0xff,0xff,0xff,0x19,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7e,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xc7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbd,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xd2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xae,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4f,0x21,0xff,0xd7,0x4a,0x0f,0xff,0xda,0x5a,0x35,0xff,0xfa,0xed,0xea,0xff,0xff,0xff,0xff,0xff,0xef,0xc7,0xbf,0xff,0xd6,0x30,0x00,0xff,0xd5,0x2e,0x00,0xff,0xea,0xb3,0xa8,0xff,0xff,0xff,0xff,0xff,0xfe,0xfc,0xfc,0xff,0xfe,0xfb,0xfb,0xff,0xff,0xff,0xff,0xff,0xed,0xc0,0xb7,0xff,0xd6,0x2d,0x00,0xff,0xd5,0x2d,0x00,0xff,0xeb,0xb6,0xad,0xff,0xff,0xff,0xff,0xff,0xfd,0xfa,0xf9,0xff,0xde,0x72,0x56,0xff,0xd7,0x43,0x00,0xff,0xd8,0x50,0x23,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd9,0x4e,0x1d,0xff,0xd7,0x4e,0x1d,0xfa,0xdb,0x4f,0x1e,0x2a,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x70,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf6,0xff,0xff,0xff,0x2e,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x54,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0xff,0xff,0xff,0x36,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0c,0xff,0xff,0xff,0x01,0xff,0xff,0xff,0x0e,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7b,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x09,0xff,0xff,0xff,0xe3,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8d,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x16,0xff,0xff,0xff,0xe4,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xaa,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xba,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xc6,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0e,0xff,0xff,0xff,0xec,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x80,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xbc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xd5,0xff,0xff,0xff,0x0b,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x4b,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x54,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xd5,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xae,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4f,0x1f,0xff,0xd8,0x4f,0x24,0xff,0xd8,0x45,0x00,0xff,0xf6,0xdd,0xd7,0xff,0xff,0xff,0xff,0xff,0xf6,0xdc,0xd5,0xff,0xd8,0x41,0x00,0xff,0xd8,0x4f,0x25,0xff,0xdb,0x5d,0x32,0xff,0xf9,0xe7,0xe2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0xf1,0xed,0xff,0xde,0x71,0x55,0xff,0xd7,0x4d,0x20,0xff,0xd6,0x29,0x00,0xff,0xf1,0xcb,0xc4,0xff,0xff,0xff,0xff,0xff,0xfb,0xf1,0xee,0xff,0xda,0x5d,0x3b,0xff,0xd7,0x49,0x09,0xff,0xd8,0x4f,0x21,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd9,0x4e,0x1d,0xff,0xd7,0x4e,0x1d,0xfa,0xdb,0x4f,0x1e,0x2a,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x1a,0xff,0xff,0xff,0x62,0xff,0xff,0xff,0x86,0xff,0xff,0xff,0x0a,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x05,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x71,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf6,0xff,0xff,0xff,0x2f,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf9,0xff,0xff,0xff,0xec,0xff,0xff,0xff,0xed,0xff,0xff,0xff,0xeb,0xff,0xff,0xff,0xec,0xff,0xff,0xff,0xec,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa2,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x48,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0x3a,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0a,0xff,0xff,0xff,0xe3,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5,0xff,0xff,0xff,0x32,0xff,0xff,0xff,0xcc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x50,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x9a,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0x11,0xff,0xff,0xff,0x24,0xff,0xff,0xff,0xf9,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x72,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0e,0xff,0xff,0xff,0xec,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x82,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x57,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x5d,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xae,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xda,0xff,0xff,0xff,0x09,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0xd2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xae,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd9,0x55,0x2f,0xff,0xd5,0x1e,0x00,0xff,0xef,0xc3,0xba,0xff,0xff,0xff,0xff,0xff,0xff,0xfc,0xfb,0xff,0xe0,0x81,0x6a,0xff,0xd6,0x39,0x00,0xff,0xd8,0x4d,0x1c,0xff,0xdc,0x63,0x3b,0xff,0xeb,0xb7,0xae,0xff,0xec,0xbe,0xb7,0xff,0xde,0x72,0x55,0xff,0xd7,0x46,0x00,0xff,0xd7,0x46,0x01,0xff,0xdc,0x68,0x46,0xff,0xfc,0xf4,0xf1,0xff,0xff,0xff,0xff,0xff,0xf4,0xd5,0xce,0xff,0xd7,0x34,0x00,0xff,0xd8,0x52,0x2b,0xff,0xd8,0x4e,0x1e,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd9,0x4e,0x1d,0xff,0xd7,0x4e,0x1d,0xfa,0xdb,0x4f,0x1e,0x2a,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0xff,0xff,0xff,0x05,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x7e,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0x0f,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x05,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x6f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf6,0xff,0xff,0xff,0x30,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x82,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf8,0xff,0xff,0xff,0xdd,0xff,0xff,0xff,0xdb,0xff,0xff,0xff,0xda,0xff,0xff,0xff,0xda,0xff,0xff,0xff,0xdc,0xff,0xff,0xff,0xce,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0x87,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x47,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0x39,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0a,0xff,0xff,0xff,0xe2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1,0xff,0xff,0xff,0x3e,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x34,0xff,0xff,0xff,0xf9,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xea,0xff,0xff,0xff,0x1c,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x44,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x53,0xff,0xff,0xff,0x66,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xee,0xff,0xff,0xff,0x1d,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0e,0xff,0xff,0xff,0xec,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0c,0xff,0xff,0xff,0xd5,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xb1,0xff,0xff,0xff,0x23,0xff,0xff,0xff,0xf6,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x79,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x09,0xff,0xff,0xff,0xd2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xae,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x51,0x25,0xff,0xd6,0x40,0x00,0xff,0xdf,0x7a,0x62,0xff,0xfe,0xfa,0xf8,0xff,0xff,0xff,0xff,0xff,0xf7,0xe2,0xdd,0xff,0xd9,0x4a,0x00,0xff,0xd6,0x3a,0x00,0xff,0xd8,0x4f,0x25,0xff,0xd5,0x2c,0x00,0xff,0xd5,0x27,0x00,0xff,0xd7,0x4c,0x1d,0xff,0xd7,0x42,0x00,0xff,0xd7,0x34,0x00,0xff,0xf4,0xd5,0xcd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5,0x9c,0x8d,0xff,0xd5,0x2e,0x00,0xff,0xd8,0x53,0x2a,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd9,0x4e,0x1d,0xff,0xd7,0x4e,0x1d,0xfa,0xdb,0x4f,0x1e,0x2a,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0xff,0xff,0xff,0x05,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x79,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xee,0xff,0xff,0xff,0x18,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x08,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x7b,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5,0xff,0xff,0xff,0x2a,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x6a,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf4,0xff,0xff,0xff,0x1e,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0a,0xff,0xff,0xff,0x08,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x1f,0xff,0xff,0xff,0x0e,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x46,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0x35,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0a,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9a,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x09,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x6e,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xbc,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0xd4,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xc0,0xff,0xff,0xff,0xc9,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xaa,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0e,0xff,0xff,0xff,0xec,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x7a,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xc2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0x21,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x07,0xff,0xff,0xff,0xd2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xae,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x53,0x2b,0xff,0xd6,0x2c,0x00,0xff,0xee,0xc0,0xb6,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf8,0xe3,0xde,0xff,0xe0,0x81,0x6a,0xff,0xd7,0x3b,0x00,0xff,0xd6,0x2a,0x00,0xff,0xd6,0x2a,0x00,0xff,0xd7,0x35,0x00,0xff,0xde,0x75,0x59,0xff,0xf4,0xd8,0xd1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf4,0xd6,0xcf,0xff,0xd7,0x38,0x00,0xff,0xd8,0x52,0x28,0xff,0xd8,0x4e,0x1e,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd9,0x4e,0x1d,0xff,0xd7,0x4e,0x1d,0xfa,0xdb,0x4f,0x1e,0x2a,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x4d,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x1a,0xff,0xff,0xff,0xd7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xd7,0xff,0xff,0xff,0x06,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x29,0xff,0xff,0xff,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8d,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x11,0xff,0xff,0xff,0xd8,0xff,0xff,0xff,0xe4,0xff,0xff,0xff,0x49,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x49,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x49,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x09,0xff,0xff,0xff,0xdf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9a,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xaf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x50,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0e,0xff,0xff,0xff,0xec,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7e,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x1b,0xff,0xff,0xff,0xf4,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa1,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0xff,0xff,0xff,0x05,0xff,0xff,0xff,0xd1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xad,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4f,0x20,0xff,0xd8,0x4e,0x1f,0xff,0xd8,0x46,0x00,0xff,0xf4,0xd6,0xcf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xfc,0xfb,0xff,0xf5,0xd8,0xd1,0xff,0xee,0xc4,0xbd,0xff,0xed,0xc3,0xbc,0xff,0xf3,0xd3,0xcb,0xff,0xfd,0xf8,0xf6,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf8,0xe6,0xe2,0xff,0xdb,0x5b,0x2d,0xff,0xd7,0x48,0x08,0xff,0xd8,0x50,0x23,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd9,0x4e,0x1d,0xff,0xd7,0x4e,0x1d,0xfa,0xdb,0x4f,0x1e,0x2a,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x05,0xff,0xff,0xff,0xd0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xca,0xff,0xff,0xff,0xa6,0xff,0xff,0xff,0xe4,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x68,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x06,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x89,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xac,0xff,0xff,0xff,0x6e,0xff,0xff,0xff,0x77,0xff,0xff,0xff,0xd1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfa,0xff,0xff,0xff,0x28,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x2e,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xd9,0xff,0xff,0xff,0xab,0xff,0xff,0xff,0x44,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0c,0xff,0xff,0xff,0xdc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x99,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x14,0xff,0xff,0xff,0xe2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0x41,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x29,0xff,0xff,0xff,0xfc,0xff,0xff,0xff,0xfb,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xde,0xff,0xff,0xff,0x0c,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0e,0xff,0xff,0xff,0xea,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7d,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x9e,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3f,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0xff,0xff,0xff,0x05,0xff,0xff,0xff,0xcf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xac,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1c,0xff,0xd8,0x51,0x24,0xff,0xd7,0x48,0x0a,0xff,0xd8,0x4b,0x00,0xff,0xef,0xc6,0xbe,0xff,0xff,0xfd,0xfc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xf3,0xd1,0xca,0xff,0xda,0x59,0x2b,0xff,0xd7,0x44,0x00,0xff,0xd8,0x52,0x27,0xff,0xd8,0x4e,0x1b,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd9,0x4e,0x1d,0xff,0xd7,0x4e,0x1d,0xfa,0xdb,0x4f,0x1e,0x2a,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x26,0xff,0xff,0xff,0xd8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x87,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x96,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xea,0xff,0xff,0xff,0x48,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x94,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x6e,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0e,0xff,0xff,0xff,0xea,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xa2,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x49,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xee,0xff,0xff,0xff,0x20,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xbd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x87,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0f,0xff,0xff,0xff,0xf8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x85,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x08,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x38,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xc5,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x05,0xff,0xff,0xff,0xdc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xb5,
|
||||||
|
0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4d,0x1b,0xff,0xd8,0x51,0x24,0xff,0xd8,0x4d,0x1c,0xff,0xd6,0x27,0x00,0xff,0xe1,0x84,0x6f,0xff,0xef,0xc4,0xbc,0xff,0xf7,0xdf,0xd9,0xff,0xfc,0xf5,0xf4,0xff,0xfc,0xf6,0xf5,0xff,0xf8,0xe5,0xe0,0xff,0xf0,0xcb,0xc4,0xff,0xe3,0x91,0x7f,0xff,0xd6,0x30,0x00,0xff,0xd7,0x49,0x0f,0xff,0xd8,0x52,0x27,0xff,0xd8,0x4d,0x1b,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd9,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xf9,0xdb,0x4f,0x1e,0x2a,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0a,0xff,0xff,0xff,0x6d,0xff,0xff,0xff,0xa5,0xff,0xff,0xff,0xaf,0xff,0xff,0xff,0x96,0xff,0xff,0xff,0x45,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x3f,0xff,0xff,0xff,0x90,0xff,0xff,0xff,0xad,0xff,0xff,0xff,0xa6,0xff,0xff,0xff,0x74,0xff,0xff,0xff,0x16,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x4e,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0x7b,0xff,0xff,0xff,0x26,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x06,0xff,0xff,0xff,0x58,0xff,0xff,0xff,0x6b,0xff,0xff,0xff,0x3c,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x4b,0xff,0xff,0xff,0x64,0xff,0xff,0xff,0x6c,0xff,0xff,0xff,0x2f,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x2e,0xff,0xff,0xff,0x6b,0xff,0xff,0xff,0x64,0xff,0xff,0xff,0x1e,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x05,0xff,0xff,0xff,0x5c,0xff,0xff,0xff,0x6c,0xff,0xff,0xff,0x31,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x55,0xff,0xff,0xff,0x6d,0xff,0xff,0xff,0x2c,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0xff,0xff,0xff,0x51,0xff,0xff,0xff,0x6b,0xff,0xff,0xff,0x42,
|
||||||
|
0xd8,0x4e,0x1d,0xfb,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1c,0xff,0xd8,0x4f,0x20,0xff,0xd8,0x54,0x2c,0xff,0xd6,0x3c,0x00,0xff,0xd5,0x1d,0x00,0xff,0xd8,0x48,0x00,0xff,0xda,0x62,0x45,0xff,0xda,0x63,0x47,0xff,0xd9,0x50,0x19,0xff,0xd6,0x22,0x00,0xff,0xd6,0x35,0x00,0xff,0xd8,0x53,0x2a,0xff,0xd8,0x50,0x22,0xff,0xd8,0x4e,0x1c,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd9,0x4e,0x1d,0xff,0xd8,0x4f,0x1d,0xfa,0xdb,0x4f,0x1e,0x2a,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1d,0xdd,0xdd,0x50,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x52,0x26,0xff,0xd9,0x55,0x2f,0xff,0xd8,0x4f,0x22,0xff,0xd7,0x47,0x00,0xff,0xd7,0x47,0x00,0xff,0xd8,0x4d,0x1b,0xff,0xd9,0x54,0x2f,0xff,0xd8,0x53,0x28,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xdb,0x4f,0x1d,0xff,0xd8,0x4e,0x1d,0xec,0xe1,0x4b,0x1e,0x11,0x00,0x00,0x00,0x00,0xff,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0xff,0xff,0xff,0x04,0xff,0xff,0xff,0x02,0xff,0xff,0xff,0x01,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x04,0xff,0xff,0xff,0x01,0xff,0xff,0xff,0x02,0xff,0xff,0xff,0x04,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x05,0xff,0xff,0xff,0x05,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x04,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x04,0xff,0xff,0xff,0x04,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0xff,0xff,0xff,0x04,0xff,0xff,0xff,0x04,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0xff,0xff,0xff,0x04,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x04,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x04,0xff,0xff,0xff,0x03,
|
||||||
|
0xd9,0x4e,0x1e,0x99,0xe5,0x53,0x1f,0xff,0xd8,0x4e,0x1c,0xfb,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4f,0x1f,0xff,0xd8,0x50,0x22,0xff,0xd8,0x50,0x22,0xff,0xd8,0x4f,0x20,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfc,0xe3,0x52,0x1e,0xff,0xd8,0x4e,0x1d,0xb7,0x00,0x00,0x00,0x00,0xff,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xd8,0x4e,0x1d,0x34,0xda,0x4f,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd8,0x4e,0x1d,0xfe,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd7,0x4e,0x1c,0xfb,0xe3,0x52,0x1f,0xff,0xd8,0x4f,0x1e,0x54,0x00,0x00,0x00,0x00,0xff,0x55,0x00,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0xd8,0x4f,0x1e,0x9b,0xe9,0x54,0x1f,0xff,0xd8,0x4e,0x1d,0xf9,0xd8,0x4e,0x1d,0xfe,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xf9,0xe8,0x54,0x1f,0xff,0xd7,0x4e,0x1d,0xba,0x00,0x00,0x00,0x00,0xff,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0xbf,0x40,0x40,0x04,0xd7,0x4e,0x1e,0xb3,0xea,0x55,0x1f,0xff,0xd8,0x4e,0x1d,0xfe,0xd7,0x4e,0x1c,0xfb,0xd8,0x4e,0x1d,0xfe,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xfe,0xd8,0x4e,0x1c,0xfb,0xd9,0x4e,0x1d,0xfc,0xe7,0x53,0x1f,0xff,0xd8,0x4e,0x1c,0xd8,0xd6,0x52,0x1f,0x19,0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0xff,0x55,0x55,0x03,0xd8,0x4f,0x1d,0x95,0xdb,0x4f,0x1d,0xff,0xe6,0x53,0x1f,0xff,0xdd,0x50,0x1e,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xdc,0x4f,0x1d,0xff,0xe5,0x53,0x1f,0xff,0xe0,0x51,0x1e,0xff,0xd9,0x4f,0x1d,0xae,0xd7,0x51,0x1b,0x13,0x00,0x00,0x00,0x00,0xaa,0x55,0x00,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0xff,0x80,0x00,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xd6,0x4d,0x1b,0x38,0xd9,0x4e,0x1c,0x9a,0xd8,0x4e,0x1e,0xd8,0xd8,0x4e,0x1d,0xfb,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd8,0x4e,0x1d,0xff,0xd9,0x4e,0x1d,0xfc,0xd7,0x4e,0x1d,0xe1,0xd7,0x4f,0x1d,0xa1,0xd6,0x4e,0x1e,0x45,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xaa,0x55,0x00,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_image_dsc_t img_logo = {
|
||||||
|
.header.magic = LV_IMAGE_HEADER_MAGIC,
|
||||||
|
.header.cf = LV_COLOR_FORMAT_ARGB8888,
|
||||||
|
.header.flags = 0,
|
||||||
|
.header.w = 116,
|
||||||
|
.header.h = 32,
|
||||||
|
.header.stride = 464,
|
||||||
|
.data_size = sizeof(img_logo_map),
|
||||||
|
.data = img_logo_map,
|
||||||
|
};
|
||||||
|
|
||||||
|
|
@ -0,0 +1,63 @@
|
||||||
|
#ifdef __has_include
|
||||||
|
#if __has_include("lvgl.h")
|
||||||
|
#ifndef LV_LVGL_H_INCLUDE_SIMPLE
|
||||||
|
#define LV_LVGL_H_INCLUDE_SIMPLE
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(LV_LVGL_H_INCLUDE_SIMPLE)
|
||||||
|
#include "lvgl.h"
|
||||||
|
#elif defined(LV_BUILD_TEST)
|
||||||
|
#include "../lvgl.h"
|
||||||
|
#else
|
||||||
|
#include "lvgl/lvgl.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_USB
|
||||||
|
#define LV_ATTRIBUTE_IMG_USB
|
||||||
|
#endif
|
||||||
|
|
||||||
|
static const
|
||||||
|
LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_USB
|
||||||
|
uint8_t img_usb_map[] = {
|
||||||
|
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0xff,0xff,0xff,0x3e,0xff,0xff,0xff,0x77,0xff,0xff,0xff,0x1e,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0xff,0xff,0xff,0x73,0xff,0xff,0xff,0xd9,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x78,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0d,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0xe6,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0x40,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x18,0xff,0xff,0xff,0xb6,0xff,0xff,0xff,0xf6,0xff,0xff,0xff,0x7d,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x05,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x19,0xff,0xff,0xff,0xd7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xd9,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x06,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x6f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x30,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x18,0xff,0xff,0xff,0xd1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xd6,0xff,0xff,0xff,0xe8,0xff,0xff,0xff,0x74,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xbc,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5,0xff,0xff,0xff,0x12,0xff,0xff,0xff,0x11,0xff,0xff,0xff,0xd2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xd3,0xff,0xff,0xff,0x1a,0xff,0xff,0xff,0x06,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0xff,0xff,0xff,0xb1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdd,0xff,0xff,0xff,0xa4,0xff,0xff,0xff,0x38,0xff,0xff,0xff,0x0d,0xff,0xff,0xff,0xd2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xd2,0xff,0xff,0xff,0x11,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0xff,0xff,0xff,0xb1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xda,0xff,0xff,0xff,0x27,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0d,0xff,0xff,0xff,0xd2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xd2,0xff,0xff,0xff,0x12,0xff,0xff,0xff,0x11,0xff,0xff,0xff,0xbb,0xff,0xff,0xff,0x81,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,
|
||||||
|
0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x9f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdb,0xff,0xff,0xff,0x27,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x1b,0xff,0xff,0xff,0xd5,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xd3,0xff,0xff,0xff,0x19,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xc7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7b,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,
|
||||||
|
0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x79,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x1d,0xff,0xff,0xff,0xd2,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xc0,0xff,0xff,0xff,0x11,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x37,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7c,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,
|
||||||
|
0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x4d,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xca,0xff,0xff,0xff,0x1f,0xff,0xff,0xff,0xd1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x9e,0xff,0xff,0xff,0x17,0xff,0xff,0xff,0x31,0xff,0xff,0xff,0xe3,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1,0xff,0xff,0xff,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,
|
||||||
|
0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0b,0xff,0xff,0xff,0xda,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xb1,0xff,0xff,0xff,0x09,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x7e,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xd2,0xff,0xff,0xff,0x1e,0xff,0xff,0xff,0x3a,0xff,0xff,0xff,0x9d,0xff,0xff,0xff,0xee,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xb0,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x0d,0xff,0xff,0xff,0x3c,0xff,0xff,0xff,0xc7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xd2,0xff,0xff,0xff,0x17,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x1b,0xff,0xff,0xff,0x4e,0xff,0xff,0xff,0x07,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x23,0xff,0xff,0xff,0xd8,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xd1,0xff,0xff,0xff,0x17,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x04,0xff,0xff,0xff,0x02,0xff,0xff,0xff,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf4,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x3c,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x05,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0xff,0xff,0xff,0x03,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x45,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xd8,0xff,0xff,0xff,0x0b,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x4b,0xff,0xff,0xff,0x84,0xff,0xff,0xff,0x24,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_image_dsc_t img_usb = {
|
||||||
|
.header.magic = LV_IMAGE_HEADER_MAGIC,
|
||||||
|
.header.cf = LV_COLOR_FORMAT_ARGB8888,
|
||||||
|
.header.flags = 0,
|
||||||
|
.header.w = 20,
|
||||||
|
.header.h = 20,
|
||||||
|
.header.stride = 80,
|
||||||
|
.data_size = sizeof(img_usb_map),
|
||||||
|
.data = img_usb_map,
|
||||||
|
};
|
||||||
|
|
||||||
|
|
@ -0,0 +1,67 @@
|
||||||
|
#ifdef __has_include
|
||||||
|
#if __has_include("lvgl.h")
|
||||||
|
#ifndef LV_LVGL_H_INCLUDE_SIMPLE
|
||||||
|
#define LV_LVGL_H_INCLUDE_SIMPLE
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(LV_LVGL_H_INCLUDE_SIMPLE)
|
||||||
|
#include "lvgl.h"
|
||||||
|
#elif defined(LV_BUILD_TEST)
|
||||||
|
#include "../lvgl.h"
|
||||||
|
#else
|
||||||
|
#include "lvgl/lvgl.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#define LV_ATTRIBUTE_MEM_ALIGN
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef LV_ATTRIBUTE_IMG_X_ICON
|
||||||
|
#define LV_ATTRIBUTE_IMG_X_ICON
|
||||||
|
#endif
|
||||||
|
|
||||||
|
static const
|
||||||
|
LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_X_ICON
|
||||||
|
uint8_t img_x_icon_map[] = {
|
||||||
|
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x44,0x44,0xef,0x8f,0x45,0x45,0xef,0xdf,0x45,0x45,0xef,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x45,0x45,0xef,0x9f,0x45,0x45,0xef,0xdf,0x50,0x50,0xef,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x44,0x44,0xef,0x80,0x44,0x44,0xef,0xff,0x44,0x44,0xef,0xef,0x45,0x45,0xef,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x45,0x45,0xef,0x9f,0x44,0x44,0xef,0xff,0x44,0x44,0xef,0xef,0x48,0x48,0xef,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x45,0x45,0xed,0xa0,0x44,0x44,0xef,0xff,0x44,0x44,0xef,0xef,0x45,0x45,0xef,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x45,0x45,0xef,0x9f,0x44,0x44,0xef,0xff,0x44,0x44,0xef,0xef,0x45,0x45,0xef,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x45,0x45,0xed,0xa0,0x44,0x44,0xef,0xff,0x44,0x44,0xef,0xef,0x45,0x45,0xef,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x45,0x45,0xef,0x9f,0x44,0x44,0xef,0xff,0x44,0x44,0xef,0xef,0x45,0x45,0xef,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x45,0x45,0xed,0xa0,0x44,0x44,0xef,0xff,0x44,0x44,0xef,0xef,0x45,0x45,0xef,0x30,0x00,0x00,0x00,0x00,0x45,0x45,0xef,0x9f,0x44,0x44,0xef,0xff,0x44,0x44,0xef,0xef,0x45,0x45,0xef,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x45,0x45,0xed,0xa0,0x44,0x44,0xef,0xff,0x44,0x44,0xef,0xef,0x44,0x44,0xef,0xaf,0x44,0x44,0xef,0xff,0x44,0x44,0xef,0xef,0x45,0x45,0xef,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x45,0x45,0xed,0xa0,0x44,0x44,0xef,0xff,0x44,0x44,0xef,0xff,0x44,0x44,0xef,0xef,0x45,0x45,0xef,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x45,0x45,0xef,0x9f,0x44,0x44,0xef,0xff,0x44,0x44,0xef,0xff,0x44,0x44,0xef,0xef,0x45,0x45,0xef,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x45,0x45,0xef,0x9f,0x44,0x44,0xef,0xff,0x44,0x44,0xef,0xef,0x44,0x44,0xef,0xaf,0x44,0x44,0xef,0xff,0x44,0x44,0xef,0xef,0x45,0x45,0xef,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x45,0x45,0xef,0x9f,0x44,0x44,0xef,0xff,0x44,0x44,0xef,0xef,0x45,0x45,0xef,0x30,0x00,0x00,0x00,0x00,0x45,0x45,0xed,0xa0,0x44,0x44,0xef,0xff,0x44,0x44,0xef,0xef,0x45,0x45,0xef,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x45,0x45,0xef,0x9f,0x44,0x44,0xef,0xff,0x44,0x44,0xef,0xef,0x45,0x45,0xef,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x45,0x45,0xed,0xa0,0x44,0x44,0xef,0xff,0x44,0x44,0xef,0xef,0x45,0x45,0xef,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x45,0x45,0xef,0x9f,0x44,0x44,0xef,0xff,0x44,0x44,0xef,0xef,0x45,0x45,0xef,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x45,0x45,0xed,0xa0,0x44,0x44,0xef,0xff,0x44,0x44,0xef,0xef,0x45,0x45,0xef,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x44,0x44,0xef,0x8f,0x44,0x44,0xef,0xff,0x44,0x44,0xef,0xef,0x45,0x45,0xef,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x45,0x45,0xed,0xa0,0x44,0x44,0xef,0xff,0x44,0x44,0xef,0xef,0x50,0x50,0xef,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x44,0x44,0xef,0x70,0x44,0x44,0xef,0xef,0x45,0x45,0xef,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x43,0x43,0xef,0x90,0x44,0x44,0xef,0xef,0x48,0x48,0xef,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
const lv_image_dsc_t img_x_icon = {
|
||||||
|
.header.magic = LV_IMAGE_HEADER_MAGIC,
|
||||||
|
.header.cf = LV_COLOR_FORMAT_ARGB8888,
|
||||||
|
.header.flags = 0,
|
||||||
|
.header.w = 25,
|
||||||
|
.header.h = 24,
|
||||||
|
.header.stride = 100,
|
||||||
|
.data_size = sizeof(img_x_icon_map),
|
||||||
|
.data = img_x_icon_map,
|
||||||
|
};
|
||||||
|
|
||||||
File diff suppressed because it is too large
Load Diff
|
|
@ -0,0 +1,179 @@
|
||||||
|
#ifndef EEZ_LVGL_UI_SCREENS_H
|
||||||
|
#define EEZ_LVGL_UI_SCREENS_H
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
typedef struct _objects_t {
|
||||||
|
lv_obj_t *boot_screen;
|
||||||
|
lv_obj_t *no_network_screen;
|
||||||
|
lv_obj_t *home_screen;
|
||||||
|
lv_obj_t *menu_screen;
|
||||||
|
lv_obj_t *menu_advanced_screen;
|
||||||
|
lv_obj_t *menu_network_screen;
|
||||||
|
lv_obj_t *about_screen;
|
||||||
|
lv_obj_t *status_screen;
|
||||||
|
lv_obj_t *reset_config_screen;
|
||||||
|
lv_obj_t *reboot_screen;
|
||||||
|
lv_obj_t *rebooting_screen;
|
||||||
|
lv_obj_t *switch_dhcp_client_screen;
|
||||||
|
lv_obj_t *boot_logo;
|
||||||
|
lv_obj_t *boot_screen_version;
|
||||||
|
lv_obj_t *no_network_header_container;
|
||||||
|
lv_obj_t *no_network_header_logo;
|
||||||
|
lv_obj_t *no_network_content_container;
|
||||||
|
lv_obj_t *no_network_title;
|
||||||
|
lv_obj_t *home_info_ipv6_addr_1;
|
||||||
|
lv_obj_t *home_header_container;
|
||||||
|
lv_obj_t *home_header_logo;
|
||||||
|
lv_obj_t *cloud_status_icon;
|
||||||
|
lv_obj_t *cloud_status_label;
|
||||||
|
lv_obj_t *home_info_container;
|
||||||
|
lv_obj_t *home_info_ipv4_addr;
|
||||||
|
lv_obj_t *home_info_ipv6_addr;
|
||||||
|
lv_obj_t *home_info_mac_addr;
|
||||||
|
lv_obj_t *divider;
|
||||||
|
lv_obj_t *home_status_container;
|
||||||
|
lv_obj_t *usb_status;
|
||||||
|
lv_obj_t *usb_indicator;
|
||||||
|
lv_obj_t *usb_status_label;
|
||||||
|
lv_obj_t *hdmi_status;
|
||||||
|
lv_obj_t *hdmi_indicator;
|
||||||
|
lv_obj_t *hdmi_status_label;
|
||||||
|
lv_obj_t *menu_header_container;
|
||||||
|
lv_obj_t *menu_items_container;
|
||||||
|
lv_obj_t *menu_btn_status;
|
||||||
|
lv_obj_t *menu_btn_network;
|
||||||
|
lv_obj_t *menu_btn_access;
|
||||||
|
lv_obj_t *menu_btn_advanced;
|
||||||
|
lv_obj_t *menu_btn_about;
|
||||||
|
lv_obj_t *menu_header_container_1;
|
||||||
|
lv_obj_t *menu_items_container_1;
|
||||||
|
lv_obj_t *menu_btn_advanced_developer_mode;
|
||||||
|
lv_obj_t *menu_btn_advanced_usb_emulation;
|
||||||
|
lv_obj_t *menu_btn_advanced_reboot;
|
||||||
|
lv_obj_t *menu_btn_dhcp_client;
|
||||||
|
lv_obj_t *menu_btn_advanced_reset_config;
|
||||||
|
lv_obj_t *menu_header_container_2;
|
||||||
|
lv_obj_t *menu_items_container_2;
|
||||||
|
lv_obj_t *menu_btn_network_ipv4;
|
||||||
|
lv_obj_t *menu_btn_network_ipv6;
|
||||||
|
lv_obj_t *menu_btn_network_lldp;
|
||||||
|
lv_obj_t *about_header_container;
|
||||||
|
lv_obj_t *about_items_container;
|
||||||
|
lv_obj_t *system_version_container;
|
||||||
|
lv_obj_t *system_version;
|
||||||
|
lv_obj_t *app_version_container;
|
||||||
|
lv_obj_t *app_version;
|
||||||
|
lv_obj_t *build_branch_container;
|
||||||
|
lv_obj_t *build_branch;
|
||||||
|
lv_obj_t *build_date_container;
|
||||||
|
lv_obj_t *build_date;
|
||||||
|
lv_obj_t *golang_version_container;
|
||||||
|
lv_obj_t *golang_version;
|
||||||
|
lv_obj_t *lvgl_version_container;
|
||||||
|
lv_obj_t *lvgl_version;
|
||||||
|
lv_obj_t *kernel_version_container;
|
||||||
|
lv_obj_t *kernel_version;
|
||||||
|
lv_obj_t *cpu_serial_container;
|
||||||
|
lv_obj_t *cpu_serial;
|
||||||
|
lv_obj_t *status_header_container;
|
||||||
|
lv_obj_t *status_items_container;
|
||||||
|
lv_obj_t *device_id_container;
|
||||||
|
lv_obj_t *device_id;
|
||||||
|
lv_obj_t *cloud_account_id_container;
|
||||||
|
lv_obj_t *app_version_1;
|
||||||
|
lv_obj_t *cloud_domain_container;
|
||||||
|
lv_obj_t *cloud_domain;
|
||||||
|
lv_obj_t *reset_config_header;
|
||||||
|
lv_obj_t *reset_config_container;
|
||||||
|
lv_obj_t *reset_config_label_container;
|
||||||
|
lv_obj_t *reset_config_label;
|
||||||
|
lv_obj_t *reset_config_spinner;
|
||||||
|
lv_obj_t *reset_config_button;
|
||||||
|
lv_obj_t *obj0;
|
||||||
|
lv_obj_t *reboot_header;
|
||||||
|
lv_obj_t *reboot_container;
|
||||||
|
lv_obj_t *reboot_label_container;
|
||||||
|
lv_obj_t *reboot_label;
|
||||||
|
lv_obj_t *reboot_config_button;
|
||||||
|
lv_obj_t *obj1;
|
||||||
|
lv_obj_t *reboot_in_progress_logo;
|
||||||
|
lv_obj_t *reboot_in_progress_label;
|
||||||
|
lv_obj_t *dhcp_client_header;
|
||||||
|
lv_obj_t *dhcp_client_container;
|
||||||
|
lv_obj_t *dhcp_client_label_container;
|
||||||
|
lv_obj_t *dhcpc_label;
|
||||||
|
lv_obj_t *dhcp_client_spinner;
|
||||||
|
lv_obj_t *dhcp_client_button;
|
||||||
|
lv_obj_t *obj2;
|
||||||
|
lv_obj_t *dhcp_client_change_label;
|
||||||
|
} objects_t;
|
||||||
|
|
||||||
|
extern objects_t objects;
|
||||||
|
|
||||||
|
enum ScreensEnum {
|
||||||
|
SCREEN_ID_BOOT_SCREEN = 1,
|
||||||
|
SCREEN_ID_NO_NETWORK_SCREEN = 2,
|
||||||
|
SCREEN_ID_HOME_SCREEN = 3,
|
||||||
|
SCREEN_ID_MENU_SCREEN = 4,
|
||||||
|
SCREEN_ID_MENU_ADVANCED_SCREEN = 5,
|
||||||
|
SCREEN_ID_MENU_NETWORK_SCREEN = 6,
|
||||||
|
SCREEN_ID_ABOUT_SCREEN = 7,
|
||||||
|
SCREEN_ID_STATUS_SCREEN = 8,
|
||||||
|
SCREEN_ID_RESET_CONFIG_SCREEN = 9,
|
||||||
|
SCREEN_ID_REBOOT_SCREEN = 10,
|
||||||
|
SCREEN_ID_REBOOTING_SCREEN = 11,
|
||||||
|
SCREEN_ID_SWITCH_DHCP_CLIENT_SCREEN = 12,
|
||||||
|
};
|
||||||
|
|
||||||
|
void create_screen_boot_screen();
|
||||||
|
void tick_screen_boot_screen();
|
||||||
|
|
||||||
|
void create_screen_no_network_screen();
|
||||||
|
void tick_screen_no_network_screen();
|
||||||
|
|
||||||
|
void create_screen_home_screen();
|
||||||
|
void tick_screen_home_screen();
|
||||||
|
|
||||||
|
void create_screen_menu_screen();
|
||||||
|
void tick_screen_menu_screen();
|
||||||
|
|
||||||
|
void create_screen_menu_advanced_screen();
|
||||||
|
void tick_screen_menu_advanced_screen();
|
||||||
|
|
||||||
|
void create_screen_menu_network_screen();
|
||||||
|
void tick_screen_menu_network_screen();
|
||||||
|
|
||||||
|
void create_screen_about_screen();
|
||||||
|
void tick_screen_about_screen();
|
||||||
|
|
||||||
|
void create_screen_status_screen();
|
||||||
|
void tick_screen_status_screen();
|
||||||
|
|
||||||
|
void create_screen_reset_config_screen();
|
||||||
|
void tick_screen_reset_config_screen();
|
||||||
|
|
||||||
|
void create_screen_reboot_screen();
|
||||||
|
void tick_screen_reboot_screen();
|
||||||
|
|
||||||
|
void create_screen_rebooting_screen();
|
||||||
|
void tick_screen_rebooting_screen();
|
||||||
|
|
||||||
|
void create_screen_switch_dhcp_client_screen();
|
||||||
|
void tick_screen_switch_dhcp_client_screen();
|
||||||
|
|
||||||
|
void tick_screen_by_id(enum ScreensEnum screenId);
|
||||||
|
void tick_screen(int screen_index);
|
||||||
|
|
||||||
|
void create_screens();
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif /*EEZ_LVGL_UI_SCREENS_H*/
|
||||||
|
|
@ -0,0 +1,22 @@
|
||||||
|
#ifndef EEZ_LVGL_UI_STRUCTS_H
|
||||||
|
#define EEZ_LVGL_UI_STRUCTS_H
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#if defined(EEZ_FOR_LVGL)
|
||||||
|
|
||||||
|
#include <eez/flow/flow.h>
|
||||||
|
#include <stdint.h>
|
||||||
|
#include <stdbool.h>
|
||||||
|
|
||||||
|
#include "vars.h"
|
||||||
|
|
||||||
|
using namespace eez;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif /*EEZ_LVGL_UI_STRUCTS_H*/
|
||||||
|
|
@ -0,0 +1,572 @@
|
||||||
|
#include "styles.h"
|
||||||
|
#include "images.h"
|
||||||
|
#include "fonts.h"
|
||||||
|
|
||||||
|
#include "ui.h"
|
||||||
|
#include "screens.h"
|
||||||
|
|
||||||
|
//
|
||||||
|
// Style: FlexColumnSpaceBetween
|
||||||
|
//
|
||||||
|
|
||||||
|
void init_style_flex_column_space_between_MAIN_DEFAULT(lv_style_t *style) {
|
||||||
|
lv_style_set_flex_flow(style, LV_FLEX_FLOW_COLUMN);
|
||||||
|
lv_style_set_flex_main_place(style, LV_FLEX_ALIGN_SPACE_BETWEEN);
|
||||||
|
lv_style_set_flex_cross_place(style, LV_FLEX_ALIGN_START);
|
||||||
|
lv_style_set_flex_track_place(style, LV_FLEX_ALIGN_START);
|
||||||
|
lv_style_set_text_align(style, LV_TEXT_ALIGN_CENTER);
|
||||||
|
};
|
||||||
|
|
||||||
|
lv_style_t *get_style_flex_column_space_between_MAIN_DEFAULT() {
|
||||||
|
static lv_style_t *style;
|
||||||
|
if (!style) {
|
||||||
|
style = lv_malloc(sizeof(lv_style_t));
|
||||||
|
lv_style_init(style);
|
||||||
|
init_style_flex_column_space_between_MAIN_DEFAULT(style);
|
||||||
|
}
|
||||||
|
return style;
|
||||||
|
};
|
||||||
|
|
||||||
|
void add_style_flex_column_space_between(lv_obj_t *obj) {
|
||||||
|
(void)obj;
|
||||||
|
lv_obj_add_style(obj, get_style_flex_column_space_between_MAIN_DEFAULT(), LV_PART_MAIN | LV_STATE_DEFAULT);
|
||||||
|
};
|
||||||
|
|
||||||
|
void remove_style_flex_column_space_between(lv_obj_t *obj) {
|
||||||
|
(void)obj;
|
||||||
|
lv_obj_remove_style(obj, get_style_flex_column_space_between_MAIN_DEFAULT(), LV_PART_MAIN | LV_STATE_DEFAULT);
|
||||||
|
};
|
||||||
|
|
||||||
|
//
|
||||||
|
// Style: FlexCenter
|
||||||
|
//
|
||||||
|
|
||||||
|
void init_style_flex_center_MAIN_DEFAULT(lv_style_t *style) {
|
||||||
|
lv_style_set_layout(style, LV_LAYOUT_FLEX);
|
||||||
|
lv_style_set_flex_flow(style, LV_FLEX_FLOW_COLUMN);
|
||||||
|
lv_style_set_flex_main_place(style, LV_FLEX_ALIGN_CENTER);
|
||||||
|
lv_style_set_flex_cross_place(style, LV_FLEX_ALIGN_CENTER);
|
||||||
|
lv_style_set_flex_track_place(style, LV_FLEX_ALIGN_CENTER);
|
||||||
|
};
|
||||||
|
|
||||||
|
lv_style_t *get_style_flex_center_MAIN_DEFAULT() {
|
||||||
|
static lv_style_t *style;
|
||||||
|
if (!style) {
|
||||||
|
style = lv_malloc(sizeof(lv_style_t));
|
||||||
|
lv_style_init(style);
|
||||||
|
init_style_flex_center_MAIN_DEFAULT(style);
|
||||||
|
}
|
||||||
|
return style;
|
||||||
|
};
|
||||||
|
|
||||||
|
void add_style_flex_center(lv_obj_t *obj) {
|
||||||
|
(void)obj;
|
||||||
|
lv_obj_add_style(obj, get_style_flex_center_MAIN_DEFAULT(), LV_PART_MAIN | LV_STATE_DEFAULT);
|
||||||
|
};
|
||||||
|
|
||||||
|
void remove_style_flex_center(lv_obj_t *obj) {
|
||||||
|
(void)obj;
|
||||||
|
lv_obj_remove_style(obj, get_style_flex_center_MAIN_DEFAULT(), LV_PART_MAIN | LV_STATE_DEFAULT);
|
||||||
|
};
|
||||||
|
|
||||||
|
//
|
||||||
|
// Style: FlexStart
|
||||||
|
//
|
||||||
|
|
||||||
|
void init_style_flex_start_MAIN_DEFAULT(lv_style_t *style) {
|
||||||
|
init_style_flex_center_MAIN_DEFAULT(style);
|
||||||
|
|
||||||
|
lv_style_set_layout(style, LV_LAYOUT_FLEX);
|
||||||
|
lv_style_set_flex_flow(style, LV_FLEX_FLOW_COLUMN);
|
||||||
|
lv_style_set_flex_main_place(style, LV_FLEX_ALIGN_START);
|
||||||
|
lv_style_set_flex_cross_place(style, LV_FLEX_ALIGN_START);
|
||||||
|
lv_style_set_flex_track_place(style, LV_FLEX_ALIGN_START);
|
||||||
|
};
|
||||||
|
|
||||||
|
lv_style_t *get_style_flex_start_MAIN_DEFAULT() {
|
||||||
|
static lv_style_t *style;
|
||||||
|
if (!style) {
|
||||||
|
style = lv_malloc(sizeof(lv_style_t));
|
||||||
|
lv_style_init(style);
|
||||||
|
init_style_flex_start_MAIN_DEFAULT(style);
|
||||||
|
}
|
||||||
|
return style;
|
||||||
|
};
|
||||||
|
|
||||||
|
void add_style_flex_start(lv_obj_t *obj) {
|
||||||
|
(void)obj;
|
||||||
|
lv_obj_add_style(obj, get_style_flex_start_MAIN_DEFAULT(), LV_PART_MAIN | LV_STATE_DEFAULT);
|
||||||
|
};
|
||||||
|
|
||||||
|
void remove_style_flex_start(lv_obj_t *obj) {
|
||||||
|
(void)obj;
|
||||||
|
lv_obj_remove_style(obj, get_style_flex_start_MAIN_DEFAULT(), LV_PART_MAIN | LV_STATE_DEFAULT);
|
||||||
|
};
|
||||||
|
|
||||||
|
//
|
||||||
|
// Style: FlowRowSpaceBetween
|
||||||
|
//
|
||||||
|
|
||||||
|
void init_style_flow_row_space_between_MAIN_DEFAULT(lv_style_t *style) {
|
||||||
|
init_style_flex_center_MAIN_DEFAULT(style);
|
||||||
|
|
||||||
|
lv_style_set_layout(style, LV_LAYOUT_FLEX);
|
||||||
|
lv_style_set_flex_flow(style, LV_FLEX_FLOW_ROW);
|
||||||
|
lv_style_set_flex_main_place(style, LV_FLEX_ALIGN_SPACE_BETWEEN);
|
||||||
|
lv_style_set_flex_cross_place(style, LV_FLEX_ALIGN_CENTER);
|
||||||
|
lv_style_set_flex_track_place(style, LV_FLEX_ALIGN_START);
|
||||||
|
};
|
||||||
|
|
||||||
|
lv_style_t *get_style_flow_row_space_between_MAIN_DEFAULT() {
|
||||||
|
static lv_style_t *style;
|
||||||
|
if (!style) {
|
||||||
|
style = lv_malloc(sizeof(lv_style_t));
|
||||||
|
lv_style_init(style);
|
||||||
|
init_style_flow_row_space_between_MAIN_DEFAULT(style);
|
||||||
|
}
|
||||||
|
return style;
|
||||||
|
};
|
||||||
|
|
||||||
|
void add_style_flow_row_space_between(lv_obj_t *obj) {
|
||||||
|
(void)obj;
|
||||||
|
lv_obj_add_style(obj, get_style_flow_row_space_between_MAIN_DEFAULT(), LV_PART_MAIN | LV_STATE_DEFAULT);
|
||||||
|
};
|
||||||
|
|
||||||
|
void remove_style_flow_row_space_between(lv_obj_t *obj) {
|
||||||
|
(void)obj;
|
||||||
|
lv_obj_remove_style(obj, get_style_flow_row_space_between_MAIN_DEFAULT(), LV_PART_MAIN | LV_STATE_DEFAULT);
|
||||||
|
};
|
||||||
|
|
||||||
|
//
|
||||||
|
// Style: FlowRowStartCenter
|
||||||
|
//
|
||||||
|
|
||||||
|
void init_style_flow_row_start_center_MAIN_DEFAULT(lv_style_t *style) {
|
||||||
|
init_style_flow_row_space_between_MAIN_DEFAULT(style);
|
||||||
|
|
||||||
|
lv_style_set_layout(style, LV_LAYOUT_FLEX);
|
||||||
|
lv_style_set_flex_flow(style, LV_FLEX_FLOW_ROW);
|
||||||
|
lv_style_set_flex_main_place(style, LV_FLEX_ALIGN_START);
|
||||||
|
lv_style_set_flex_cross_place(style, LV_FLEX_ALIGN_CENTER);
|
||||||
|
lv_style_set_flex_track_place(style, LV_FLEX_ALIGN_START);
|
||||||
|
};
|
||||||
|
|
||||||
|
lv_style_t *get_style_flow_row_start_center_MAIN_DEFAULT() {
|
||||||
|
static lv_style_t *style;
|
||||||
|
if (!style) {
|
||||||
|
style = lv_malloc(sizeof(lv_style_t));
|
||||||
|
lv_style_init(style);
|
||||||
|
init_style_flow_row_start_center_MAIN_DEFAULT(style);
|
||||||
|
}
|
||||||
|
return style;
|
||||||
|
};
|
||||||
|
|
||||||
|
void add_style_flow_row_start_center(lv_obj_t *obj) {
|
||||||
|
(void)obj;
|
||||||
|
lv_obj_add_style(obj, get_style_flow_row_start_center_MAIN_DEFAULT(), LV_PART_MAIN | LV_STATE_DEFAULT);
|
||||||
|
};
|
||||||
|
|
||||||
|
void remove_style_flow_row_start_center(lv_obj_t *obj) {
|
||||||
|
(void)obj;
|
||||||
|
lv_obj_remove_style(obj, get_style_flow_row_start_center_MAIN_DEFAULT(), LV_PART_MAIN | LV_STATE_DEFAULT);
|
||||||
|
};
|
||||||
|
|
||||||
|
//
|
||||||
|
// Style: FlexColumnStart
|
||||||
|
//
|
||||||
|
|
||||||
|
void init_style_flex_column_start_MAIN_DEFAULT(lv_style_t *style) {
|
||||||
|
init_style_flow_row_space_between_MAIN_DEFAULT(style);
|
||||||
|
|
||||||
|
lv_style_set_layout(style, LV_LAYOUT_FLEX);
|
||||||
|
lv_style_set_flex_flow(style, LV_FLEX_FLOW_COLUMN);
|
||||||
|
lv_style_set_flex_main_place(style, LV_FLEX_ALIGN_START);
|
||||||
|
lv_style_set_flex_cross_place(style, LV_FLEX_ALIGN_START);
|
||||||
|
lv_style_set_flex_track_place(style, LV_FLEX_ALIGN_START);
|
||||||
|
};
|
||||||
|
|
||||||
|
lv_style_t *get_style_flex_column_start_MAIN_DEFAULT() {
|
||||||
|
static lv_style_t *style;
|
||||||
|
if (!style) {
|
||||||
|
style = lv_malloc(sizeof(lv_style_t));
|
||||||
|
lv_style_init(style);
|
||||||
|
init_style_flex_column_start_MAIN_DEFAULT(style);
|
||||||
|
}
|
||||||
|
return style;
|
||||||
|
};
|
||||||
|
|
||||||
|
void add_style_flex_column_start(lv_obj_t *obj) {
|
||||||
|
(void)obj;
|
||||||
|
lv_obj_add_style(obj, get_style_flex_column_start_MAIN_DEFAULT(), LV_PART_MAIN | LV_STATE_DEFAULT);
|
||||||
|
};
|
||||||
|
|
||||||
|
void remove_style_flex_column_start(lv_obj_t *obj) {
|
||||||
|
(void)obj;
|
||||||
|
lv_obj_remove_style(obj, get_style_flex_column_start_MAIN_DEFAULT(), LV_PART_MAIN | LV_STATE_DEFAULT);
|
||||||
|
};
|
||||||
|
|
||||||
|
//
|
||||||
|
// Style: FlexScreen
|
||||||
|
//
|
||||||
|
|
||||||
|
void init_style_flex_screen_MAIN_DEFAULT(lv_style_t *style) {
|
||||||
|
lv_style_set_pad_top(style, 24);
|
||||||
|
lv_style_set_pad_bottom(style, 24);
|
||||||
|
lv_style_set_pad_left(style, 44);
|
||||||
|
lv_style_set_pad_right(style, 24);
|
||||||
|
lv_style_set_pad_row(style, 16);
|
||||||
|
lv_style_set_layout(style, LV_LAYOUT_FLEX);
|
||||||
|
lv_style_set_flex_flow(style, LV_FLEX_FLOW_COLUMN);
|
||||||
|
lv_style_set_flex_main_place(style, LV_FLEX_ALIGN_START);
|
||||||
|
lv_style_set_flex_cross_place(style, LV_FLEX_ALIGN_START);
|
||||||
|
lv_style_set_flex_track_place(style, LV_FLEX_ALIGN_START);
|
||||||
|
lv_style_set_bg_color(style, lv_color_hex(0xff000000));
|
||||||
|
};
|
||||||
|
|
||||||
|
lv_style_t *get_style_flex_screen_MAIN_DEFAULT() {
|
||||||
|
static lv_style_t *style;
|
||||||
|
if (!style) {
|
||||||
|
style = lv_malloc(sizeof(lv_style_t));
|
||||||
|
lv_style_init(style);
|
||||||
|
init_style_flex_screen_MAIN_DEFAULT(style);
|
||||||
|
}
|
||||||
|
return style;
|
||||||
|
};
|
||||||
|
|
||||||
|
void add_style_flex_screen(lv_obj_t *obj) {
|
||||||
|
(void)obj;
|
||||||
|
lv_obj_add_style(obj, get_style_flex_screen_MAIN_DEFAULT(), LV_PART_MAIN | LV_STATE_DEFAULT);
|
||||||
|
};
|
||||||
|
|
||||||
|
void remove_style_flex_screen(lv_obj_t *obj) {
|
||||||
|
(void)obj;
|
||||||
|
lv_obj_remove_style(obj, get_style_flex_screen_MAIN_DEFAULT(), LV_PART_MAIN | LV_STATE_DEFAULT);
|
||||||
|
};
|
||||||
|
|
||||||
|
//
|
||||||
|
// Style: FlexScreenMenu
|
||||||
|
//
|
||||||
|
|
||||||
|
void init_style_flex_screen_menu_MAIN_DEFAULT(lv_style_t *style) {
|
||||||
|
init_style_flex_screen_MAIN_DEFAULT(style);
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
lv_style_t *get_style_flex_screen_menu_MAIN_DEFAULT() {
|
||||||
|
static lv_style_t *style;
|
||||||
|
if (!style) {
|
||||||
|
style = lv_malloc(sizeof(lv_style_t));
|
||||||
|
lv_style_init(style);
|
||||||
|
init_style_flex_screen_menu_MAIN_DEFAULT(style);
|
||||||
|
}
|
||||||
|
return style;
|
||||||
|
};
|
||||||
|
|
||||||
|
void add_style_flex_screen_menu(lv_obj_t *obj) {
|
||||||
|
(void)obj;
|
||||||
|
lv_obj_add_style(obj, get_style_flex_screen_menu_MAIN_DEFAULT(), LV_PART_MAIN | LV_STATE_DEFAULT);
|
||||||
|
};
|
||||||
|
|
||||||
|
void remove_style_flex_screen_menu(lv_obj_t *obj) {
|
||||||
|
(void)obj;
|
||||||
|
lv_obj_remove_style(obj, get_style_flex_screen_menu_MAIN_DEFAULT(), LV_PART_MAIN | LV_STATE_DEFAULT);
|
||||||
|
};
|
||||||
|
|
||||||
|
//
|
||||||
|
// Style: LabelFont16
|
||||||
|
//
|
||||||
|
|
||||||
|
void init_style_label_font16_MAIN_DEFAULT(lv_style_t *style) {
|
||||||
|
lv_style_set_text_align(style, LV_TEXT_ALIGN_CENTER);
|
||||||
|
lv_style_set_text_font(style, &ui_font_font_book16);
|
||||||
|
lv_style_set_text_color(style, lv_color_hex(0xffffffff));
|
||||||
|
};
|
||||||
|
|
||||||
|
lv_style_t *get_style_label_font16_MAIN_DEFAULT() {
|
||||||
|
static lv_style_t *style;
|
||||||
|
if (!style) {
|
||||||
|
style = lv_malloc(sizeof(lv_style_t));
|
||||||
|
lv_style_init(style);
|
||||||
|
init_style_label_font16_MAIN_DEFAULT(style);
|
||||||
|
}
|
||||||
|
return style;
|
||||||
|
};
|
||||||
|
|
||||||
|
void add_style_label_font16(lv_obj_t *obj) {
|
||||||
|
(void)obj;
|
||||||
|
lv_obj_add_style(obj, get_style_label_font16_MAIN_DEFAULT(), LV_PART_MAIN | LV_STATE_DEFAULT);
|
||||||
|
};
|
||||||
|
|
||||||
|
void remove_style_label_font16(lv_obj_t *obj) {
|
||||||
|
(void)obj;
|
||||||
|
lv_obj_remove_style(obj, get_style_label_font16_MAIN_DEFAULT(), LV_PART_MAIN | LV_STATE_DEFAULT);
|
||||||
|
};
|
||||||
|
|
||||||
|
//
|
||||||
|
// Style: LabelFontBold30
|
||||||
|
//
|
||||||
|
|
||||||
|
void init_style_label_font_bold30_MAIN_DEFAULT(lv_style_t *style) {
|
||||||
|
init_style_label_font16_MAIN_DEFAULT(style);
|
||||||
|
|
||||||
|
lv_style_set_text_font(style, &ui_font_font_bold30);
|
||||||
|
};
|
||||||
|
|
||||||
|
lv_style_t *get_style_label_font_bold30_MAIN_DEFAULT() {
|
||||||
|
static lv_style_t *style;
|
||||||
|
if (!style) {
|
||||||
|
style = lv_malloc(sizeof(lv_style_t));
|
||||||
|
lv_style_init(style);
|
||||||
|
init_style_label_font_bold30_MAIN_DEFAULT(style);
|
||||||
|
}
|
||||||
|
return style;
|
||||||
|
};
|
||||||
|
|
||||||
|
void add_style_label_font_bold30(lv_obj_t *obj) {
|
||||||
|
(void)obj;
|
||||||
|
lv_obj_add_style(obj, get_style_label_font_bold30_MAIN_DEFAULT(), LV_PART_MAIN | LV_STATE_DEFAULT);
|
||||||
|
};
|
||||||
|
|
||||||
|
void remove_style_label_font_bold30(lv_obj_t *obj) {
|
||||||
|
(void)obj;
|
||||||
|
lv_obj_remove_style(obj, get_style_label_font_bold30_MAIN_DEFAULT(), LV_PART_MAIN | LV_STATE_DEFAULT);
|
||||||
|
};
|
||||||
|
|
||||||
|
//
|
||||||
|
// Style: HeaderLink
|
||||||
|
//
|
||||||
|
|
||||||
|
void init_style_header_link_MAIN_DEFAULT(lv_style_t *style) {
|
||||||
|
init_style_label_font16_MAIN_DEFAULT(style);
|
||||||
|
|
||||||
|
lv_style_set_text_color(style, lv_color_hex(0xff1d4ed8));
|
||||||
|
lv_style_set_text_opa(style, 255);
|
||||||
|
lv_style_set_text_font(style, &ui_font_font_book20);
|
||||||
|
lv_style_set_text_align(style, LV_TEXT_ALIGN_CENTER);
|
||||||
|
};
|
||||||
|
|
||||||
|
lv_style_t *get_style_header_link_MAIN_DEFAULT() {
|
||||||
|
static lv_style_t *style;
|
||||||
|
if (!style) {
|
||||||
|
style = lv_malloc(sizeof(lv_style_t));
|
||||||
|
lv_style_init(style);
|
||||||
|
init_style_header_link_MAIN_DEFAULT(style);
|
||||||
|
}
|
||||||
|
return style;
|
||||||
|
};
|
||||||
|
|
||||||
|
void add_style_header_link(lv_obj_t *obj) {
|
||||||
|
(void)obj;
|
||||||
|
lv_obj_add_style(obj, get_style_header_link_MAIN_DEFAULT(), LV_PART_MAIN | LV_STATE_DEFAULT);
|
||||||
|
};
|
||||||
|
|
||||||
|
void remove_style_header_link(lv_obj_t *obj) {
|
||||||
|
(void)obj;
|
||||||
|
lv_obj_remove_style(obj, get_style_header_link_MAIN_DEFAULT(), LV_PART_MAIN | LV_STATE_DEFAULT);
|
||||||
|
};
|
||||||
|
|
||||||
|
//
|
||||||
|
// Style: MenuButton
|
||||||
|
//
|
||||||
|
|
||||||
|
void init_style_menu_button_MAIN_DEFAULT(lv_style_t *style) {
|
||||||
|
lv_style_set_radius(style, 8);
|
||||||
|
lv_style_set_bg_color(style, lv_color_hex(0xff262626));
|
||||||
|
lv_style_set_bg_opa(style, 255);
|
||||||
|
lv_style_set_pad_top(style, 20);
|
||||||
|
lv_style_set_pad_bottom(style, 20);
|
||||||
|
lv_style_set_pad_left(style, 16);
|
||||||
|
lv_style_set_pad_right(style, 0);
|
||||||
|
lv_style_set_shadow_width(style, 0);
|
||||||
|
};
|
||||||
|
|
||||||
|
lv_style_t *get_style_menu_button_MAIN_DEFAULT() {
|
||||||
|
static lv_style_t *style;
|
||||||
|
if (!style) {
|
||||||
|
style = lv_malloc(sizeof(lv_style_t));
|
||||||
|
lv_style_init(style);
|
||||||
|
init_style_menu_button_MAIN_DEFAULT(style);
|
||||||
|
}
|
||||||
|
return style;
|
||||||
|
};
|
||||||
|
|
||||||
|
void add_style_menu_button(lv_obj_t *obj) {
|
||||||
|
(void)obj;
|
||||||
|
lv_obj_add_style(obj, get_style_menu_button_MAIN_DEFAULT(), LV_PART_MAIN | LV_STATE_DEFAULT);
|
||||||
|
};
|
||||||
|
|
||||||
|
void remove_style_menu_button(lv_obj_t *obj) {
|
||||||
|
(void)obj;
|
||||||
|
lv_obj_remove_style(obj, get_style_menu_button_MAIN_DEFAULT(), LV_PART_MAIN | LV_STATE_DEFAULT);
|
||||||
|
};
|
||||||
|
|
||||||
|
//
|
||||||
|
// Style: MenuButtonLabel
|
||||||
|
//
|
||||||
|
|
||||||
|
void init_style_menu_button_label_MAIN_DEFAULT(lv_style_t *style) {
|
||||||
|
lv_style_set_align(style, LV_ALIGN_LEFT_MID);
|
||||||
|
lv_style_set_text_font(style, &ui_font_font_book20);
|
||||||
|
lv_style_set_text_color(style, lv_color_hex(0xffffffff));
|
||||||
|
lv_style_set_text_opa(style, 255);
|
||||||
|
};
|
||||||
|
|
||||||
|
lv_style_t *get_style_menu_button_label_MAIN_DEFAULT() {
|
||||||
|
static lv_style_t *style;
|
||||||
|
if (!style) {
|
||||||
|
style = lv_malloc(sizeof(lv_style_t));
|
||||||
|
lv_style_init(style);
|
||||||
|
init_style_menu_button_label_MAIN_DEFAULT(style);
|
||||||
|
}
|
||||||
|
return style;
|
||||||
|
};
|
||||||
|
|
||||||
|
void add_style_menu_button_label(lv_obj_t *obj) {
|
||||||
|
(void)obj;
|
||||||
|
lv_obj_add_style(obj, get_style_menu_button_label_MAIN_DEFAULT(), LV_PART_MAIN | LV_STATE_DEFAULT);
|
||||||
|
};
|
||||||
|
|
||||||
|
void remove_style_menu_button_label(lv_obj_t *obj) {
|
||||||
|
(void)obj;
|
||||||
|
lv_obj_remove_style(obj, get_style_menu_button_label_MAIN_DEFAULT(), LV_PART_MAIN | LV_STATE_DEFAULT);
|
||||||
|
};
|
||||||
|
|
||||||
|
//
|
||||||
|
// Style: InfoHeadlineLabel
|
||||||
|
//
|
||||||
|
|
||||||
|
void init_style_info_headline_label_MAIN_DEFAULT(lv_style_t *style) {
|
||||||
|
lv_style_set_text_color(style, lv_color_hex(0xff94a3b8));
|
||||||
|
lv_style_set_text_font(style, &ui_font_font_book20);
|
||||||
|
};
|
||||||
|
|
||||||
|
lv_style_t *get_style_info_headline_label_MAIN_DEFAULT() {
|
||||||
|
static lv_style_t *style;
|
||||||
|
if (!style) {
|
||||||
|
style = lv_malloc(sizeof(lv_style_t));
|
||||||
|
lv_style_init(style);
|
||||||
|
init_style_info_headline_label_MAIN_DEFAULT(style);
|
||||||
|
}
|
||||||
|
return style;
|
||||||
|
};
|
||||||
|
|
||||||
|
void add_style_info_headline_label(lv_obj_t *obj) {
|
||||||
|
(void)obj;
|
||||||
|
lv_obj_add_style(obj, get_style_info_headline_label_MAIN_DEFAULT(), LV_PART_MAIN | LV_STATE_DEFAULT);
|
||||||
|
};
|
||||||
|
|
||||||
|
void remove_style_info_headline_label(lv_obj_t *obj) {
|
||||||
|
(void)obj;
|
||||||
|
lv_obj_remove_style(obj, get_style_info_headline_label_MAIN_DEFAULT(), LV_PART_MAIN | LV_STATE_DEFAULT);
|
||||||
|
};
|
||||||
|
|
||||||
|
//
|
||||||
|
// Style: InfoContentLabel
|
||||||
|
//
|
||||||
|
|
||||||
|
void init_style_info_content_label_MAIN_DEFAULT(lv_style_t *style) {
|
||||||
|
lv_style_set_text_font(style, &ui_font_font_book18);
|
||||||
|
lv_style_set_text_color(style, lv_color_hex(0xffffffff));
|
||||||
|
};
|
||||||
|
|
||||||
|
lv_style_t *get_style_info_content_label_MAIN_DEFAULT() {
|
||||||
|
static lv_style_t *style;
|
||||||
|
if (!style) {
|
||||||
|
style = lv_malloc(sizeof(lv_style_t));
|
||||||
|
lv_style_init(style);
|
||||||
|
init_style_info_content_label_MAIN_DEFAULT(style);
|
||||||
|
}
|
||||||
|
return style;
|
||||||
|
};
|
||||||
|
|
||||||
|
void add_style_info_content_label(lv_obj_t *obj) {
|
||||||
|
(void)obj;
|
||||||
|
lv_obj_add_style(obj, get_style_info_content_label_MAIN_DEFAULT(), LV_PART_MAIN | LV_STATE_DEFAULT);
|
||||||
|
};
|
||||||
|
|
||||||
|
void remove_style_info_content_label(lv_obj_t *obj) {
|
||||||
|
(void)obj;
|
||||||
|
lv_obj_remove_style(obj, get_style_info_content_label_MAIN_DEFAULT(), LV_PART_MAIN | LV_STATE_DEFAULT);
|
||||||
|
};
|
||||||
|
|
||||||
|
//
|
||||||
|
// Style: BackButton
|
||||||
|
//
|
||||||
|
|
||||||
|
void init_style_back_button_MAIN_DEFAULT(lv_style_t *style) {
|
||||||
|
lv_style_set_bg_color(style, lv_color_hex(0xff262626));
|
||||||
|
lv_style_set_bg_opa(style, 255);
|
||||||
|
lv_style_set_radius(style, 10000);
|
||||||
|
lv_style_set_shadow_width(style, 0);
|
||||||
|
};
|
||||||
|
|
||||||
|
lv_style_t *get_style_back_button_MAIN_DEFAULT() {
|
||||||
|
static lv_style_t *style;
|
||||||
|
if (!style) {
|
||||||
|
style = lv_malloc(sizeof(lv_style_t));
|
||||||
|
lv_style_init(style);
|
||||||
|
init_style_back_button_MAIN_DEFAULT(style);
|
||||||
|
}
|
||||||
|
return style;
|
||||||
|
};
|
||||||
|
|
||||||
|
void add_style_back_button(lv_obj_t *obj) {
|
||||||
|
(void)obj;
|
||||||
|
lv_obj_add_style(obj, get_style_back_button_MAIN_DEFAULT(), LV_PART_MAIN | LV_STATE_DEFAULT);
|
||||||
|
};
|
||||||
|
|
||||||
|
void remove_style_back_button(lv_obj_t *obj) {
|
||||||
|
(void)obj;
|
||||||
|
lv_obj_remove_style(obj, get_style_back_button_MAIN_DEFAULT(), LV_PART_MAIN | LV_STATE_DEFAULT);
|
||||||
|
};
|
||||||
|
|
||||||
|
//
|
||||||
|
//
|
||||||
|
//
|
||||||
|
|
||||||
|
void add_style(lv_obj_t *obj, int32_t styleIndex) {
|
||||||
|
typedef void (*AddStyleFunc)(lv_obj_t *obj);
|
||||||
|
static const AddStyleFunc add_style_funcs[] = {
|
||||||
|
add_style_flex_column_space_between,
|
||||||
|
add_style_flex_center,
|
||||||
|
add_style_flex_start,
|
||||||
|
add_style_flow_row_space_between,
|
||||||
|
add_style_flow_row_start_center,
|
||||||
|
add_style_flex_column_start,
|
||||||
|
add_style_flex_screen,
|
||||||
|
add_style_flex_screen_menu,
|
||||||
|
add_style_label_font16,
|
||||||
|
add_style_label_font_bold30,
|
||||||
|
add_style_header_link,
|
||||||
|
add_style_menu_button,
|
||||||
|
add_style_menu_button_label,
|
||||||
|
add_style_info_headline_label,
|
||||||
|
add_style_info_content_label,
|
||||||
|
add_style_back_button,
|
||||||
|
};
|
||||||
|
add_style_funcs[styleIndex](obj);
|
||||||
|
}
|
||||||
|
|
||||||
|
void remove_style(lv_obj_t *obj, int32_t styleIndex) {
|
||||||
|
typedef void (*RemoveStyleFunc)(lv_obj_t *obj);
|
||||||
|
static const RemoveStyleFunc remove_style_funcs[] = {
|
||||||
|
remove_style_flex_column_space_between,
|
||||||
|
remove_style_flex_center,
|
||||||
|
remove_style_flex_start,
|
||||||
|
remove_style_flow_row_space_between,
|
||||||
|
remove_style_flow_row_start_center,
|
||||||
|
remove_style_flex_column_start,
|
||||||
|
remove_style_flex_screen,
|
||||||
|
remove_style_flex_screen_menu,
|
||||||
|
remove_style_label_font16,
|
||||||
|
remove_style_label_font_bold30,
|
||||||
|
remove_style_header_link,
|
||||||
|
remove_style_menu_button,
|
||||||
|
remove_style_menu_button_label,
|
||||||
|
remove_style_info_headline_label,
|
||||||
|
remove_style_info_content_label,
|
||||||
|
remove_style_back_button,
|
||||||
|
};
|
||||||
|
remove_style_funcs[styleIndex](obj);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
@ -0,0 +1,96 @@
|
||||||
|
#ifndef EEZ_LVGL_UI_STYLES_H
|
||||||
|
#define EEZ_LVGL_UI_STYLES_H
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// Style: FlexColumnSpaceBetween
|
||||||
|
lv_style_t *get_style_flex_column_space_between_MAIN_DEFAULT();
|
||||||
|
void add_style_flex_column_space_between(lv_obj_t *obj);
|
||||||
|
void remove_style_flex_column_space_between(lv_obj_t *obj);
|
||||||
|
|
||||||
|
// Style: FlexCenter
|
||||||
|
lv_style_t *get_style_flex_center_MAIN_DEFAULT();
|
||||||
|
void add_style_flex_center(lv_obj_t *obj);
|
||||||
|
void remove_style_flex_center(lv_obj_t *obj);
|
||||||
|
|
||||||
|
// Style: FlexStart
|
||||||
|
lv_style_t *get_style_flex_start_MAIN_DEFAULT();
|
||||||
|
void add_style_flex_start(lv_obj_t *obj);
|
||||||
|
void remove_style_flex_start(lv_obj_t *obj);
|
||||||
|
|
||||||
|
// Style: FlowRowSpaceBetween
|
||||||
|
lv_style_t *get_style_flow_row_space_between_MAIN_DEFAULT();
|
||||||
|
void add_style_flow_row_space_between(lv_obj_t *obj);
|
||||||
|
void remove_style_flow_row_space_between(lv_obj_t *obj);
|
||||||
|
|
||||||
|
// Style: FlowRowStartCenter
|
||||||
|
lv_style_t *get_style_flow_row_start_center_MAIN_DEFAULT();
|
||||||
|
void add_style_flow_row_start_center(lv_obj_t *obj);
|
||||||
|
void remove_style_flow_row_start_center(lv_obj_t *obj);
|
||||||
|
|
||||||
|
// Style: FlexColumnStart
|
||||||
|
lv_style_t *get_style_flex_column_start_MAIN_DEFAULT();
|
||||||
|
void add_style_flex_column_start(lv_obj_t *obj);
|
||||||
|
void remove_style_flex_column_start(lv_obj_t *obj);
|
||||||
|
|
||||||
|
// Style: FlexScreen
|
||||||
|
lv_style_t *get_style_flex_screen_MAIN_DEFAULT();
|
||||||
|
void add_style_flex_screen(lv_obj_t *obj);
|
||||||
|
void remove_style_flex_screen(lv_obj_t *obj);
|
||||||
|
|
||||||
|
// Style: FlexScreenMenu
|
||||||
|
lv_style_t *get_style_flex_screen_menu_MAIN_DEFAULT();
|
||||||
|
void add_style_flex_screen_menu(lv_obj_t *obj);
|
||||||
|
void remove_style_flex_screen_menu(lv_obj_t *obj);
|
||||||
|
|
||||||
|
// Style: LabelFont16
|
||||||
|
lv_style_t *get_style_label_font16_MAIN_DEFAULT();
|
||||||
|
void add_style_label_font16(lv_obj_t *obj);
|
||||||
|
void remove_style_label_font16(lv_obj_t *obj);
|
||||||
|
|
||||||
|
// Style: LabelFontBold30
|
||||||
|
lv_style_t *get_style_label_font_bold30_MAIN_DEFAULT();
|
||||||
|
void add_style_label_font_bold30(lv_obj_t *obj);
|
||||||
|
void remove_style_label_font_bold30(lv_obj_t *obj);
|
||||||
|
|
||||||
|
// Style: HeaderLink
|
||||||
|
lv_style_t *get_style_header_link_MAIN_DEFAULT();
|
||||||
|
void add_style_header_link(lv_obj_t *obj);
|
||||||
|
void remove_style_header_link(lv_obj_t *obj);
|
||||||
|
|
||||||
|
// Style: MenuButton
|
||||||
|
lv_style_t *get_style_menu_button_MAIN_DEFAULT();
|
||||||
|
void add_style_menu_button(lv_obj_t *obj);
|
||||||
|
void remove_style_menu_button(lv_obj_t *obj);
|
||||||
|
|
||||||
|
// Style: MenuButtonLabel
|
||||||
|
lv_style_t *get_style_menu_button_label_MAIN_DEFAULT();
|
||||||
|
void add_style_menu_button_label(lv_obj_t *obj);
|
||||||
|
void remove_style_menu_button_label(lv_obj_t *obj);
|
||||||
|
|
||||||
|
// Style: InfoHeadlineLabel
|
||||||
|
lv_style_t *get_style_info_headline_label_MAIN_DEFAULT();
|
||||||
|
void add_style_info_headline_label(lv_obj_t *obj);
|
||||||
|
void remove_style_info_headline_label(lv_obj_t *obj);
|
||||||
|
|
||||||
|
// Style: InfoContentLabel
|
||||||
|
lv_style_t *get_style_info_content_label_MAIN_DEFAULT();
|
||||||
|
void add_style_info_content_label(lv_obj_t *obj);
|
||||||
|
void remove_style_info_content_label(lv_obj_t *obj);
|
||||||
|
|
||||||
|
// Style: BackButton
|
||||||
|
lv_style_t *get_style_back_button_MAIN_DEFAULT();
|
||||||
|
void add_style_back_button(lv_obj_t *obj);
|
||||||
|
void remove_style_back_button(lv_obj_t *obj);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif /*EEZ_LVGL_UI_STYLES_H*/
|
||||||
|
|
@ -0,0 +1,71 @@
|
||||||
|
#if defined(EEZ_FOR_LVGL)
|
||||||
|
#include <eez/core/vars.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include "ui.h"
|
||||||
|
#include "screens.h"
|
||||||
|
#include "images.h"
|
||||||
|
#include "actions.h"
|
||||||
|
#include "vars.h"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
jetkvm_rpc_handler_t *ui_rpc_handler = NULL;
|
||||||
|
|
||||||
|
void ui_set_rpc_handler(jetkvm_rpc_handler_t *handler) {
|
||||||
|
ui_rpc_handler = handler;
|
||||||
|
}
|
||||||
|
|
||||||
|
void ui_call_rpc_handler(const char *method, const char *params) {
|
||||||
|
if (ui_rpc_handler != NULL) {
|
||||||
|
(*ui_rpc_handler)(method, params);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#if defined(EEZ_FOR_LVGL)
|
||||||
|
|
||||||
|
void ui_init() {
|
||||||
|
eez_flow_init(assets, sizeof(assets), (lv_obj_t **)&objects, sizeof(objects), images, sizeof(images), actions);
|
||||||
|
}
|
||||||
|
|
||||||
|
void ui_tick() {
|
||||||
|
eez_flow_tick();
|
||||||
|
tick_screen(g_currentScreen);
|
||||||
|
}
|
||||||
|
|
||||||
|
#else
|
||||||
|
|
||||||
|
#include <string.h>
|
||||||
|
|
||||||
|
static int16_t currentScreen = -1;
|
||||||
|
|
||||||
|
static lv_obj_t *getLvglObjectFromIndex(int32_t index) {
|
||||||
|
if (index == -1) {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
return ((lv_obj_t **)&objects)[index];
|
||||||
|
}
|
||||||
|
|
||||||
|
void loadScreen(enum ScreensEnum screenId) {
|
||||||
|
currentScreen = screenId - 1;
|
||||||
|
lv_obj_t *screen = getLvglObjectFromIndex(currentScreen);
|
||||||
|
lv_scr_load(screen);
|
||||||
|
// lv_scr_load_anim(screen, LV_SCR_LOAD_ANIM_FADE_IN, 200, 0, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
void ui_init() {
|
||||||
|
create_screens();
|
||||||
|
loadScreen(SCREEN_ID_BOOT_SCREEN);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void ui_tick() {
|
||||||
|
tick_screen(currentScreen);
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
@ -0,0 +1,40 @@
|
||||||
|
#ifndef EEZ_LVGL_UI_GUI_H
|
||||||
|
#define EEZ_LVGL_UI_GUI_H
|
||||||
|
|
||||||
|
#include <lvgl.h>
|
||||||
|
|
||||||
|
typedef void (jetkvm_rpc_handler_t)(const char *method, const char *params);
|
||||||
|
|
||||||
|
void ui_set_rpc_handler(jetkvm_rpc_handler_t *handler);
|
||||||
|
void ui_call_rpc_handler(const char *method, const char *params);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#if defined(EEZ_FOR_LVGL)
|
||||||
|
#include <eez/flow/lvgl_api.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if !defined(EEZ_FOR_LVGL)
|
||||||
|
#include "screens.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
void ui_init();
|
||||||
|
void ui_tick();
|
||||||
|
|
||||||
|
#if !defined(EEZ_FOR_LVGL)
|
||||||
|
void loadScreen(enum ScreensEnum screenId);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif // EEZ_LVGL_UI_GUI_H
|
||||||
|
|
@ -0,0 +1,50 @@
|
||||||
|
#include <string.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <lvgl.h>
|
||||||
|
#include "vars.h"
|
||||||
|
|
||||||
|
char app_version[100] = { 0 };
|
||||||
|
char system_version[100] = { 0 };
|
||||||
|
char lvgl_version[32] = { 0 };
|
||||||
|
char main_screen[32] = "home_screen";
|
||||||
|
|
||||||
|
const char *get_var_app_version() {
|
||||||
|
return app_version;
|
||||||
|
}
|
||||||
|
|
||||||
|
const char *get_var_system_version() {
|
||||||
|
return system_version;
|
||||||
|
}
|
||||||
|
|
||||||
|
const char *get_var_lvgl_version() {
|
||||||
|
if (lvgl_version[0] == '\0') {
|
||||||
|
char buf[32];
|
||||||
|
sprintf(buf, "%d.%d.%d", LVGL_VERSION_MAJOR, LVGL_VERSION_MINOR, LVGL_VERSION_PATCH);
|
||||||
|
|
||||||
|
|
||||||
|
strncpy(lvgl_version, buf, sizeof(lvgl_version) / sizeof(char));
|
||||||
|
app_version[sizeof(lvgl_version) / sizeof(char) - 1] = 0;
|
||||||
|
}
|
||||||
|
return lvgl_version;
|
||||||
|
}
|
||||||
|
|
||||||
|
void set_var_app_version(const char *value) {
|
||||||
|
strncpy(app_version, value, sizeof(app_version) / sizeof(char));
|
||||||
|
app_version[sizeof(app_version) / sizeof(char) - 1] = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
void set_var_system_version(const char *value) {
|
||||||
|
strncpy(system_version, value, sizeof(system_version) / sizeof(char));
|
||||||
|
system_version[sizeof(system_version) / sizeof(char) - 1] = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
void set_var_lvgl_version(const char *value) {}
|
||||||
|
|
||||||
|
void set_var_main_screen(const char *value) {
|
||||||
|
strncpy(main_screen, value, sizeof(main_screen) / sizeof(char));
|
||||||
|
main_screen[sizeof(main_screen) / sizeof(char) - 1] = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
const char *get_var_main_screen() {
|
||||||
|
return main_screen;
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,40 @@
|
||||||
|
#ifndef EEZ_LVGL_UI_VARS_H
|
||||||
|
#define EEZ_LVGL_UI_VARS_H
|
||||||
|
|
||||||
|
#include <stdint.h>
|
||||||
|
#include <stdbool.h>
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// enum declarations
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// Flow global variables
|
||||||
|
|
||||||
|
enum FlowGlobalVariables {
|
||||||
|
FLOW_GLOBAL_VARIABLE_APP_VERSION = 0,
|
||||||
|
FLOW_GLOBAL_VARIABLE_SYSTEM_VERSION = 1,
|
||||||
|
FLOW_GLOBAL_VARIABLE_LVGL_VERSION = 2,
|
||||||
|
FLOW_GLOBAL_VARIABLE_MAIN_SCREEN = 3
|
||||||
|
};
|
||||||
|
|
||||||
|
// Native global variables
|
||||||
|
|
||||||
|
extern const char *get_var_app_version();
|
||||||
|
extern void set_var_app_version(const char *value);
|
||||||
|
extern const char *get_var_system_version();
|
||||||
|
extern void set_var_system_version(const char *value);
|
||||||
|
extern const char *get_var_lvgl_version();
|
||||||
|
extern void set_var_lvgl_version(const char *value);
|
||||||
|
extern const char *get_var_main_screen();
|
||||||
|
extern void set_var_main_screen(const char *value);
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif /*EEZ_LVGL_UI_VARS_H*/
|
||||||
|
|
@ -0,0 +1,17 @@
|
||||||
|
package native
|
||||||
|
|
||||||
|
import (
|
||||||
|
"github.com/jetkvm/kvm/internal/logging"
|
||||||
|
"github.com/rs/zerolog"
|
||||||
|
)
|
||||||
|
|
||||||
|
var nativeLogger = logging.GetSubsystemLogger("native")
|
||||||
|
var displayLogger = logging.GetSubsystemLogger("display")
|
||||||
|
|
||||||
|
type nativeLogMessage struct {
|
||||||
|
Level zerolog.Level
|
||||||
|
Message string
|
||||||
|
File string
|
||||||
|
FuncName string
|
||||||
|
Line int
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,131 @@
|
||||||
|
package native
|
||||||
|
|
||||||
|
import (
|
||||||
|
"sync"
|
||||||
|
"time"
|
||||||
|
|
||||||
|
"github.com/Masterminds/semver/v3"
|
||||||
|
"github.com/rs/zerolog"
|
||||||
|
)
|
||||||
|
|
||||||
|
type Native struct {
|
||||||
|
ready chan struct{}
|
||||||
|
l *zerolog.Logger
|
||||||
|
lD *zerolog.Logger
|
||||||
|
systemVersion *semver.Version
|
||||||
|
appVersion *semver.Version
|
||||||
|
displayRotation uint16
|
||||||
|
defaultQualityFactor float64
|
||||||
|
onVideoStateChange func(state VideoState)
|
||||||
|
onVideoFrameReceived func(frame []byte, duration time.Duration)
|
||||||
|
onIndevEvent func(event string)
|
||||||
|
onRpcEvent func(event string)
|
||||||
|
sleepModeSupported bool
|
||||||
|
videoLock sync.Mutex
|
||||||
|
screenLock sync.Mutex
|
||||||
|
extraLock sync.Mutex
|
||||||
|
}
|
||||||
|
|
||||||
|
type NativeOptions struct {
|
||||||
|
SystemVersion *semver.Version
|
||||||
|
AppVersion *semver.Version
|
||||||
|
DisplayRotation uint16
|
||||||
|
DefaultQualityFactor float64
|
||||||
|
OnVideoStateChange func(state VideoState)
|
||||||
|
OnVideoFrameReceived func(frame []byte, duration time.Duration)
|
||||||
|
OnIndevEvent func(event string)
|
||||||
|
OnRpcEvent func(event string)
|
||||||
|
}
|
||||||
|
|
||||||
|
func NewNative(opts NativeOptions) *Native {
|
||||||
|
onVideoStateChange := opts.OnVideoStateChange
|
||||||
|
if onVideoStateChange == nil {
|
||||||
|
onVideoStateChange = func(state VideoState) {
|
||||||
|
nativeLogger.Info().Interface("state", state).Msg("video state changed")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
onVideoFrameReceived := opts.OnVideoFrameReceived
|
||||||
|
if onVideoFrameReceived == nil {
|
||||||
|
onVideoFrameReceived = func(frame []byte, duration time.Duration) {
|
||||||
|
nativeLogger.Info().Interface("frame", frame).Dur("duration", duration).Msg("video frame received")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
onIndevEvent := opts.OnIndevEvent
|
||||||
|
if onIndevEvent == nil {
|
||||||
|
onIndevEvent = func(event string) {
|
||||||
|
nativeLogger.Info().Str("event", event).Msg("indev event")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
onRpcEvent := opts.OnRpcEvent
|
||||||
|
if onRpcEvent == nil {
|
||||||
|
onRpcEvent = func(event string) {
|
||||||
|
nativeLogger.Info().Str("event", event).Msg("rpc event")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
sleepModeSupported := isSleepModeSupported()
|
||||||
|
|
||||||
|
defaultQualityFactor := opts.DefaultQualityFactor
|
||||||
|
if defaultQualityFactor <= 0 || defaultQualityFactor > 1 {
|
||||||
|
defaultQualityFactor = 1.0
|
||||||
|
}
|
||||||
|
|
||||||
|
return &Native{
|
||||||
|
ready: make(chan struct{}),
|
||||||
|
l: nativeLogger,
|
||||||
|
lD: displayLogger,
|
||||||
|
systemVersion: opts.SystemVersion,
|
||||||
|
appVersion: opts.AppVersion,
|
||||||
|
displayRotation: opts.DisplayRotation,
|
||||||
|
defaultQualityFactor: defaultQualityFactor,
|
||||||
|
onVideoStateChange: onVideoStateChange,
|
||||||
|
onVideoFrameReceived: onVideoFrameReceived,
|
||||||
|
onIndevEvent: onIndevEvent,
|
||||||
|
onRpcEvent: onRpcEvent,
|
||||||
|
sleepModeSupported: sleepModeSupported,
|
||||||
|
videoLock: sync.Mutex{},
|
||||||
|
screenLock: sync.Mutex{},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (n *Native) Start() {
|
||||||
|
// set up singleton
|
||||||
|
setInstance(n)
|
||||||
|
setUpNativeHandlers()
|
||||||
|
|
||||||
|
// start the native video
|
||||||
|
go n.handleLogChan()
|
||||||
|
go n.handleVideoStateChan()
|
||||||
|
go n.handleVideoFrameChan()
|
||||||
|
go n.handleIndevEventChan()
|
||||||
|
go n.handleRpcEventChan()
|
||||||
|
|
||||||
|
n.initUI()
|
||||||
|
go n.tickUI()
|
||||||
|
|
||||||
|
if err := videoInit(n.defaultQualityFactor); err != nil {
|
||||||
|
n.l.Error().Err(err).Msg("failed to initialize video")
|
||||||
|
}
|
||||||
|
|
||||||
|
close(n.ready)
|
||||||
|
}
|
||||||
|
|
||||||
|
// DoNotUseThisIsForCrashTestingOnly
|
||||||
|
// will crash the program in cgo code
|
||||||
|
func (n *Native) DoNotUseThisIsForCrashTestingOnly() {
|
||||||
|
defer func() {
|
||||||
|
if r := recover(); r != nil {
|
||||||
|
n.l.Error().Msg("recovered from crash")
|
||||||
|
}
|
||||||
|
}()
|
||||||
|
|
||||||
|
crash()
|
||||||
|
}
|
||||||
|
|
||||||
|
// GetLVGLVersion returns the LVGL version
|
||||||
|
func GetLVGLVersion() string {
|
||||||
|
return uiGetLVGLVersion()
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,21 @@
|
||||||
|
package native
|
||||||
|
|
||||||
|
import "sync"
|
||||||
|
|
||||||
|
var (
|
||||||
|
instance *Native
|
||||||
|
instanceLock sync.RWMutex
|
||||||
|
)
|
||||||
|
|
||||||
|
func setInstance(n *Native) {
|
||||||
|
instanceLock.Lock()
|
||||||
|
defer instanceLock.Unlock()
|
||||||
|
|
||||||
|
if instance == nil {
|
||||||
|
instance = n
|
||||||
|
}
|
||||||
|
|
||||||
|
if instance != n {
|
||||||
|
panic("instance is already set")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,161 @@
|
||||||
|
package native
|
||||||
|
|
||||||
|
import (
|
||||||
|
"fmt"
|
||||||
|
"os"
|
||||||
|
"time"
|
||||||
|
)
|
||||||
|
|
||||||
|
const sleepModeFile = "/sys/devices/platform/ff470000.i2c/i2c-4/4-000f/sleep_mode"
|
||||||
|
|
||||||
|
// DefaultEDID is the default EDID for the video stream.
|
||||||
|
const DefaultEDID = "00ffffffffffff0052620188008888881c150103800000780a0dc9a05747982712484c00000001010101010101010101010101010101023a801871382d40582c4500c48e2100001e011d007251d01e206e285500c48e2100001e000000fc00543734392d6648443732300a20000000fd00147801ff1d000a202020202020017b"
|
||||||
|
|
||||||
|
var extraLockTimeout = 5 * time.Second
|
||||||
|
|
||||||
|
// VideoState is the state of the video stream.
|
||||||
|
type VideoState struct {
|
||||||
|
Ready bool `json:"ready"`
|
||||||
|
Error string `json:"error,omitempty"` //no_signal, no_lock, out_of_range
|
||||||
|
Width int `json:"width"`
|
||||||
|
Height int `json:"height"`
|
||||||
|
FramePerSecond float64 `json:"fps"`
|
||||||
|
}
|
||||||
|
|
||||||
|
func isSleepModeSupported() bool {
|
||||||
|
_, err := os.Stat(sleepModeFile)
|
||||||
|
return err == nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (n *Native) setSleepMode(enabled bool) error {
|
||||||
|
if !n.sleepModeSupported {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
bEnabled := "0"
|
||||||
|
if enabled {
|
||||||
|
bEnabled = "1"
|
||||||
|
}
|
||||||
|
return os.WriteFile(sleepModeFile, []byte(bEnabled), 0644)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (n *Native) getSleepMode() (bool, error) {
|
||||||
|
if !n.sleepModeSupported {
|
||||||
|
return false, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
data, err := os.ReadFile(sleepModeFile)
|
||||||
|
if err == nil {
|
||||||
|
return string(data) == "1", nil
|
||||||
|
}
|
||||||
|
|
||||||
|
return false, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
// VideoSetSleepMode sets the sleep mode for the video stream.
|
||||||
|
func (n *Native) VideoSetSleepMode(enabled bool) error {
|
||||||
|
n.videoLock.Lock()
|
||||||
|
defer n.videoLock.Unlock()
|
||||||
|
|
||||||
|
return n.setSleepMode(enabled)
|
||||||
|
}
|
||||||
|
|
||||||
|
// VideoGetSleepMode gets the sleep mode for the video stream.
|
||||||
|
func (n *Native) VideoGetSleepMode() (bool, error) {
|
||||||
|
n.videoLock.Lock()
|
||||||
|
defer n.videoLock.Unlock()
|
||||||
|
|
||||||
|
return n.getSleepMode()
|
||||||
|
}
|
||||||
|
|
||||||
|
// VideoSleepModeSupported checks if the sleep mode is supported.
|
||||||
|
func (n *Native) VideoSleepModeSupported() bool {
|
||||||
|
return n.sleepModeSupported
|
||||||
|
}
|
||||||
|
|
||||||
|
// useExtraLock uses the extra lock to execute a function.
|
||||||
|
// if the lock is currently held by another goroutine, returns an error.
|
||||||
|
//
|
||||||
|
// it's used to ensure that only one change is made to the video stream at a time.
|
||||||
|
// as the change usually requires to restart video streaming
|
||||||
|
// TODO: check video streaming status instead of using a hardcoded timeout
|
||||||
|
func (n *Native) useExtraLock(fn func() error) error {
|
||||||
|
if !n.extraLock.TryLock() {
|
||||||
|
return fmt.Errorf("the previous change hasn't been completed yet")
|
||||||
|
}
|
||||||
|
err := fn()
|
||||||
|
if err == nil {
|
||||||
|
time.Sleep(extraLockTimeout)
|
||||||
|
}
|
||||||
|
n.extraLock.Unlock()
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
// VideoSetQualityFactor sets the quality factor for the video stream.
|
||||||
|
func (n *Native) VideoSetQualityFactor(factor float64) error {
|
||||||
|
n.videoLock.Lock()
|
||||||
|
defer n.videoLock.Unlock()
|
||||||
|
|
||||||
|
return n.useExtraLock(func() error {
|
||||||
|
return videoSetStreamQualityFactor(factor)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// VideoGetQualityFactor gets the quality factor for the video stream.
|
||||||
|
func (n *Native) VideoGetQualityFactor() (float64, error) {
|
||||||
|
n.videoLock.Lock()
|
||||||
|
defer n.videoLock.Unlock()
|
||||||
|
|
||||||
|
return videoGetStreamQualityFactor()
|
||||||
|
}
|
||||||
|
|
||||||
|
// VideoSetEDID sets the EDID for the video stream.
|
||||||
|
func (n *Native) VideoSetEDID(edid string) error {
|
||||||
|
n.videoLock.Lock()
|
||||||
|
defer n.videoLock.Unlock()
|
||||||
|
|
||||||
|
if edid == "" {
|
||||||
|
edid = DefaultEDID
|
||||||
|
}
|
||||||
|
|
||||||
|
return n.useExtraLock(func() error {
|
||||||
|
return videoSetEDID(edid)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
// VideoGetEDID gets the EDID for the video stream.
|
||||||
|
func (n *Native) VideoGetEDID() (string, error) {
|
||||||
|
n.videoLock.Lock()
|
||||||
|
defer n.videoLock.Unlock()
|
||||||
|
|
||||||
|
return videoGetEDID()
|
||||||
|
}
|
||||||
|
|
||||||
|
// VideoLogStatus gets the log status for the video stream.
|
||||||
|
func (n *Native) VideoLogStatus() (string, error) {
|
||||||
|
n.videoLock.Lock()
|
||||||
|
defer n.videoLock.Unlock()
|
||||||
|
|
||||||
|
return videoLogStatus(), nil
|
||||||
|
}
|
||||||
|
|
||||||
|
// VideoStop stops the video stream.
|
||||||
|
func (n *Native) VideoStop() error {
|
||||||
|
n.videoLock.Lock()
|
||||||
|
defer n.videoLock.Unlock()
|
||||||
|
|
||||||
|
videoStop()
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
// VideoStart starts the video stream.
|
||||||
|
func (n *Native) VideoStart() error {
|
||||||
|
n.videoLock.Lock()
|
||||||
|
defer n.videoLock.Unlock()
|
||||||
|
|
||||||
|
// disable sleep mode before starting video
|
||||||
|
_ = n.setSleepMode(false)
|
||||||
|
|
||||||
|
videoStart()
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
@ -1,11 +0,0 @@
|
||||||
package network
|
|
||||||
|
|
||||||
type DhcpTargetState int
|
|
||||||
|
|
||||||
const (
|
|
||||||
DhcpTargetStateDoNothing DhcpTargetState = iota
|
|
||||||
DhcpTargetStateStart
|
|
||||||
DhcpTargetStateStop
|
|
||||||
DhcpTargetStateRenew
|
|
||||||
DhcpTargetStateRelease
|
|
||||||
)
|
|
||||||
|
|
@ -1,137 +0,0 @@
|
||||||
package network
|
|
||||||
|
|
||||||
import (
|
|
||||||
"fmt"
|
|
||||||
"io"
|
|
||||||
"os"
|
|
||||||
"os/exec"
|
|
||||||
"strings"
|
|
||||||
"sync"
|
|
||||||
|
|
||||||
"golang.org/x/net/idna"
|
|
||||||
)
|
|
||||||
|
|
||||||
const (
|
|
||||||
hostnamePath = "/etc/hostname"
|
|
||||||
hostsPath = "/etc/hosts"
|
|
||||||
)
|
|
||||||
|
|
||||||
var (
|
|
||||||
hostnameLock sync.Mutex = sync.Mutex{}
|
|
||||||
)
|
|
||||||
|
|
||||||
func updateEtcHosts(hostname string, fqdn string) error {
|
|
||||||
// update /etc/hosts
|
|
||||||
hostsFile, err := os.OpenFile(hostsPath, os.O_RDWR|os.O_SYNC, os.ModeExclusive)
|
|
||||||
if err != nil {
|
|
||||||
return fmt.Errorf("failed to open %s: %w", hostsPath, err)
|
|
||||||
}
|
|
||||||
defer hostsFile.Close()
|
|
||||||
|
|
||||||
// read all lines
|
|
||||||
if _, err := hostsFile.Seek(0, io.SeekStart); err != nil {
|
|
||||||
return fmt.Errorf("failed to seek %s: %w", hostsPath, err)
|
|
||||||
}
|
|
||||||
|
|
||||||
lines, err := io.ReadAll(hostsFile)
|
|
||||||
if err != nil {
|
|
||||||
return fmt.Errorf("failed to read %s: %w", hostsPath, err)
|
|
||||||
}
|
|
||||||
|
|
||||||
newLines := []string{}
|
|
||||||
hostLine := fmt.Sprintf("127.0.1.1\t%s %s", hostname, fqdn)
|
|
||||||
hostLineExists := false
|
|
||||||
|
|
||||||
for line := range strings.SplitSeq(string(lines), "\n") {
|
|
||||||
if strings.HasPrefix(line, "127.0.1.1") {
|
|
||||||
hostLineExists = true
|
|
||||||
line = hostLine
|
|
||||||
}
|
|
||||||
newLines = append(newLines, line)
|
|
||||||
}
|
|
||||||
|
|
||||||
if !hostLineExists {
|
|
||||||
newLines = append(newLines, hostLine)
|
|
||||||
}
|
|
||||||
|
|
||||||
if err := hostsFile.Truncate(0); err != nil {
|
|
||||||
return fmt.Errorf("failed to truncate %s: %w", hostsPath, err)
|
|
||||||
}
|
|
||||||
|
|
||||||
if _, err := hostsFile.Seek(0, io.SeekStart); err != nil {
|
|
||||||
return fmt.Errorf("failed to seek %s: %w", hostsPath, err)
|
|
||||||
}
|
|
||||||
|
|
||||||
if _, err := hostsFile.Write([]byte(strings.Join(newLines, "\n"))); err != nil {
|
|
||||||
return fmt.Errorf("failed to write %s: %w", hostsPath, err)
|
|
||||||
}
|
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func ToValidHostname(hostname string) string {
|
|
||||||
ascii, err := idna.Lookup.ToASCII(hostname)
|
|
||||||
if err != nil {
|
|
||||||
return ""
|
|
||||||
}
|
|
||||||
return ascii
|
|
||||||
}
|
|
||||||
|
|
||||||
func SetHostname(hostname string, fqdn string) error {
|
|
||||||
hostnameLock.Lock()
|
|
||||||
defer hostnameLock.Unlock()
|
|
||||||
|
|
||||||
hostname = ToValidHostname(strings.TrimSpace(hostname))
|
|
||||||
fqdn = ToValidHostname(strings.TrimSpace(fqdn))
|
|
||||||
|
|
||||||
if hostname == "" {
|
|
||||||
return fmt.Errorf("invalid hostname: %s", hostname)
|
|
||||||
}
|
|
||||||
|
|
||||||
if fqdn == "" {
|
|
||||||
fqdn = hostname
|
|
||||||
}
|
|
||||||
|
|
||||||
// update /etc/hostname
|
|
||||||
if err := os.WriteFile(hostnamePath, []byte(hostname), 0644); err != nil {
|
|
||||||
return fmt.Errorf("failed to write %s: %w", hostnamePath, err)
|
|
||||||
}
|
|
||||||
|
|
||||||
// update /etc/hosts
|
|
||||||
if err := updateEtcHosts(hostname, fqdn); err != nil {
|
|
||||||
return fmt.Errorf("failed to update /etc/hosts: %w", err)
|
|
||||||
}
|
|
||||||
|
|
||||||
// run hostname
|
|
||||||
if err := exec.Command("hostname", "-F", hostnamePath).Run(); err != nil {
|
|
||||||
return fmt.Errorf("failed to run hostname: %w", err)
|
|
||||||
}
|
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func (s *NetworkInterfaceState) setHostnameIfNotSame() error {
|
|
||||||
hostname := s.GetHostname()
|
|
||||||
currentHostname, _ := os.Hostname()
|
|
||||||
|
|
||||||
fqdn := fmt.Sprintf("%s.%s", hostname, s.GetDomain())
|
|
||||||
|
|
||||||
if currentHostname == hostname && s.currentFqdn == fqdn && s.currentHostname == hostname {
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
scopedLogger := s.l.With().Str("hostname", hostname).Str("fqdn", fqdn).Logger()
|
|
||||||
|
|
||||||
err := SetHostname(hostname, fqdn)
|
|
||||||
if err != nil {
|
|
||||||
scopedLogger.Error().Err(err).Msg("failed to set hostname")
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
s.currentHostname = hostname
|
|
||||||
s.currentFqdn = fqdn
|
|
||||||
|
|
||||||
scopedLogger.Info().Msg("hostname set")
|
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
@ -1,394 +0,0 @@
|
||||||
package network
|
|
||||||
|
|
||||||
import (
|
|
||||||
"fmt"
|
|
||||||
"net"
|
|
||||||
"sync"
|
|
||||||
|
|
||||||
"github.com/jetkvm/kvm/internal/confparser"
|
|
||||||
"github.com/jetkvm/kvm/internal/logging"
|
|
||||||
"github.com/jetkvm/kvm/internal/udhcpc"
|
|
||||||
"github.com/rs/zerolog"
|
|
||||||
|
|
||||||
"github.com/vishvananda/netlink"
|
|
||||||
)
|
|
||||||
|
|
||||||
type NetworkInterfaceState struct {
|
|
||||||
interfaceName string
|
|
||||||
interfaceUp bool
|
|
||||||
ipv4Addr *net.IP
|
|
||||||
ipv4Addresses []string
|
|
||||||
ipv6Addr *net.IP
|
|
||||||
ipv6Addresses []IPv6Address
|
|
||||||
ipv6LinkLocal *net.IP
|
|
||||||
ntpAddresses []*net.IP
|
|
||||||
macAddr *net.HardwareAddr
|
|
||||||
|
|
||||||
l *zerolog.Logger
|
|
||||||
stateLock sync.Mutex
|
|
||||||
|
|
||||||
config *NetworkConfig
|
|
||||||
dhcpClient *udhcpc.DHCPClient
|
|
||||||
|
|
||||||
defaultHostname string
|
|
||||||
currentHostname string
|
|
||||||
currentFqdn string
|
|
||||||
|
|
||||||
onStateChange func(state *NetworkInterfaceState)
|
|
||||||
onInitialCheck func(state *NetworkInterfaceState)
|
|
||||||
cbConfigChange func(config *NetworkConfig)
|
|
||||||
|
|
||||||
checked bool
|
|
||||||
}
|
|
||||||
|
|
||||||
type NetworkInterfaceOptions struct {
|
|
||||||
InterfaceName string
|
|
||||||
DhcpPidFile string
|
|
||||||
Logger *zerolog.Logger
|
|
||||||
DefaultHostname string
|
|
||||||
OnStateChange func(state *NetworkInterfaceState)
|
|
||||||
OnInitialCheck func(state *NetworkInterfaceState)
|
|
||||||
OnDhcpLeaseChange func(lease *udhcpc.Lease, state *NetworkInterfaceState)
|
|
||||||
OnConfigChange func(config *NetworkConfig)
|
|
||||||
NetworkConfig *NetworkConfig
|
|
||||||
}
|
|
||||||
|
|
||||||
func NewNetworkInterfaceState(opts *NetworkInterfaceOptions) (*NetworkInterfaceState, error) {
|
|
||||||
if opts.NetworkConfig == nil {
|
|
||||||
return nil, fmt.Errorf("NetworkConfig can not be nil")
|
|
||||||
}
|
|
||||||
|
|
||||||
if opts.DefaultHostname == "" {
|
|
||||||
opts.DefaultHostname = "jetkvm"
|
|
||||||
}
|
|
||||||
|
|
||||||
err := confparser.SetDefaultsAndValidate(opts.NetworkConfig)
|
|
||||||
if err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
|
|
||||||
l := opts.Logger
|
|
||||||
s := &NetworkInterfaceState{
|
|
||||||
interfaceName: opts.InterfaceName,
|
|
||||||
defaultHostname: opts.DefaultHostname,
|
|
||||||
stateLock: sync.Mutex{},
|
|
||||||
l: l,
|
|
||||||
onStateChange: opts.OnStateChange,
|
|
||||||
onInitialCheck: opts.OnInitialCheck,
|
|
||||||
cbConfigChange: opts.OnConfigChange,
|
|
||||||
config: opts.NetworkConfig,
|
|
||||||
ntpAddresses: make([]*net.IP, 0),
|
|
||||||
}
|
|
||||||
|
|
||||||
// create the dhcp client
|
|
||||||
dhcpClient := udhcpc.NewDHCPClient(&udhcpc.DHCPClientOptions{
|
|
||||||
InterfaceName: opts.InterfaceName,
|
|
||||||
PidFile: opts.DhcpPidFile,
|
|
||||||
Logger: l,
|
|
||||||
OnLeaseChange: func(lease *udhcpc.Lease) {
|
|
||||||
_, err := s.update()
|
|
||||||
if err != nil {
|
|
||||||
opts.Logger.Error().Err(err).Msg("failed to update network state")
|
|
||||||
return
|
|
||||||
}
|
|
||||||
_ = s.updateNtpServersFromLease(lease)
|
|
||||||
_ = s.setHostnameIfNotSame()
|
|
||||||
|
|
||||||
opts.OnDhcpLeaseChange(lease, s)
|
|
||||||
},
|
|
||||||
})
|
|
||||||
|
|
||||||
s.dhcpClient = dhcpClient
|
|
||||||
|
|
||||||
return s, nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func (s *NetworkInterfaceState) IsUp() bool {
|
|
||||||
return s.interfaceUp
|
|
||||||
}
|
|
||||||
|
|
||||||
func (s *NetworkInterfaceState) HasIPAssigned() bool {
|
|
||||||
return s.ipv4Addr != nil || s.ipv6Addr != nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func (s *NetworkInterfaceState) IsOnline() bool {
|
|
||||||
return s.IsUp() && s.HasIPAssigned()
|
|
||||||
}
|
|
||||||
|
|
||||||
func (s *NetworkInterfaceState) IPv4() *net.IP {
|
|
||||||
return s.ipv4Addr
|
|
||||||
}
|
|
||||||
|
|
||||||
func (s *NetworkInterfaceState) IPv4String() string {
|
|
||||||
if s.ipv4Addr == nil {
|
|
||||||
return "..."
|
|
||||||
}
|
|
||||||
return s.ipv4Addr.String()
|
|
||||||
}
|
|
||||||
|
|
||||||
func (s *NetworkInterfaceState) IPv6() *net.IP {
|
|
||||||
return s.ipv6Addr
|
|
||||||
}
|
|
||||||
|
|
||||||
func (s *NetworkInterfaceState) IPv6String() string {
|
|
||||||
if s.ipv6Addr == nil {
|
|
||||||
return "..."
|
|
||||||
}
|
|
||||||
return s.ipv6Addr.String()
|
|
||||||
}
|
|
||||||
|
|
||||||
func (s *NetworkInterfaceState) NtpAddresses() []*net.IP {
|
|
||||||
return s.ntpAddresses
|
|
||||||
}
|
|
||||||
|
|
||||||
func (s *NetworkInterfaceState) NtpAddressesString() []string {
|
|
||||||
ntpServers := []string{}
|
|
||||||
|
|
||||||
if s != nil {
|
|
||||||
s.l.Debug().Any("s", s).Msg("getting NTP address strings")
|
|
||||||
|
|
||||||
if len(s.ntpAddresses) > 0 {
|
|
||||||
for _, server := range s.ntpAddresses {
|
|
||||||
s.l.Debug().IPAddr("server", *server).Msg("converting NTP address")
|
|
||||||
ntpServers = append(ntpServers, server.String())
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return ntpServers
|
|
||||||
}
|
|
||||||
|
|
||||||
func (s *NetworkInterfaceState) MAC() *net.HardwareAddr {
|
|
||||||
return s.macAddr
|
|
||||||
}
|
|
||||||
|
|
||||||
func (s *NetworkInterfaceState) MACString() string {
|
|
||||||
if s.macAddr == nil {
|
|
||||||
return ""
|
|
||||||
}
|
|
||||||
return s.macAddr.String()
|
|
||||||
}
|
|
||||||
|
|
||||||
func (s *NetworkInterfaceState) update() (DhcpTargetState, error) {
|
|
||||||
s.stateLock.Lock()
|
|
||||||
defer s.stateLock.Unlock()
|
|
||||||
|
|
||||||
dhcpTargetState := DhcpTargetStateDoNothing
|
|
||||||
|
|
||||||
iface, err := netlink.LinkByName(s.interfaceName)
|
|
||||||
if err != nil {
|
|
||||||
s.l.Error().Err(err).Msg("failed to get interface")
|
|
||||||
return dhcpTargetState, err
|
|
||||||
}
|
|
||||||
|
|
||||||
// detect if the interface status changed
|
|
||||||
var changed bool
|
|
||||||
attrs := iface.Attrs()
|
|
||||||
state := attrs.OperState
|
|
||||||
newInterfaceUp := state == netlink.OperUp
|
|
||||||
|
|
||||||
// check if the interface is coming up
|
|
||||||
interfaceGoingUp := !s.interfaceUp && newInterfaceUp
|
|
||||||
interfaceGoingDown := s.interfaceUp && !newInterfaceUp
|
|
||||||
|
|
||||||
if s.interfaceUp != newInterfaceUp {
|
|
||||||
s.interfaceUp = newInterfaceUp
|
|
||||||
changed = true
|
|
||||||
}
|
|
||||||
|
|
||||||
if changed {
|
|
||||||
if interfaceGoingUp {
|
|
||||||
s.l.Info().Msg("interface state transitioned to up")
|
|
||||||
dhcpTargetState = DhcpTargetStateRenew
|
|
||||||
} else if interfaceGoingDown {
|
|
||||||
s.l.Info().Msg("interface state transitioned to down")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// set the mac address
|
|
||||||
s.macAddr = &attrs.HardwareAddr
|
|
||||||
|
|
||||||
// get the ip addresses
|
|
||||||
addrs, err := netlinkAddrs(iface)
|
|
||||||
if err != nil {
|
|
||||||
return dhcpTargetState, logging.ErrorfL(s.l, "failed to get ip addresses", err)
|
|
||||||
}
|
|
||||||
|
|
||||||
var (
|
|
||||||
ipv4Addresses = make([]net.IP, 0)
|
|
||||||
ipv4AddressesString = make([]string, 0)
|
|
||||||
ipv6Addresses = make([]IPv6Address, 0)
|
|
||||||
// ipv6AddressesString = make([]string, 0)
|
|
||||||
ipv6LinkLocal *net.IP
|
|
||||||
)
|
|
||||||
|
|
||||||
for _, addr := range addrs {
|
|
||||||
if addr.IP.To4() != nil {
|
|
||||||
scopedLogger := s.l.With().Str("ipv4", addr.IP.String()).Logger()
|
|
||||||
if interfaceGoingDown {
|
|
||||||
// remove all IPv4 addresses from the interface.
|
|
||||||
scopedLogger.Info().Msg("state transitioned to down, removing IPv4 address")
|
|
||||||
err := netlink.AddrDel(iface, &addr)
|
|
||||||
if err != nil {
|
|
||||||
scopedLogger.Warn().Err(err).Msg("failed to delete address")
|
|
||||||
}
|
|
||||||
// notify the DHCP client to release the lease
|
|
||||||
dhcpTargetState = DhcpTargetStateRelease
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
ipv4Addresses = append(ipv4Addresses, addr.IP)
|
|
||||||
ipv4AddressesString = append(ipv4AddressesString, addr.IPNet.String())
|
|
||||||
} else if addr.IP.To16() != nil {
|
|
||||||
if s.config.IPv6Mode.String == "disabled" {
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
|
|
||||||
scopedLogger := s.l.With().Str("ipv6", addr.IP.String()).Logger()
|
|
||||||
// check if it's a link local address
|
|
||||||
if addr.IP.IsLinkLocalUnicast() {
|
|
||||||
ipv6LinkLocal = &addr.IP
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
|
|
||||||
if !addr.IP.IsGlobalUnicast() {
|
|
||||||
scopedLogger.Trace().Msg("not a global unicast address, skipping")
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
|
|
||||||
if interfaceGoingDown {
|
|
||||||
scopedLogger.Info().Msg("state transitioned to down, removing IPv6 address")
|
|
||||||
err := netlink.AddrDel(iface, &addr)
|
|
||||||
if err != nil {
|
|
||||||
scopedLogger.Warn().Err(err).Msg("failed to delete address")
|
|
||||||
}
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
ipv6Addresses = append(ipv6Addresses, IPv6Address{
|
|
||||||
Address: addr.IP,
|
|
||||||
Prefix: *addr.IPNet,
|
|
||||||
ValidLifetime: lifetimeToTime(addr.ValidLft),
|
|
||||||
PreferredLifetime: lifetimeToTime(addr.PreferedLft),
|
|
||||||
Scope: addr.Scope,
|
|
||||||
})
|
|
||||||
// ipv6AddressesString = append(ipv6AddressesString, addr.IPNet.String())
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if len(ipv4Addresses) > 0 {
|
|
||||||
// compare the addresses to see if there's a change
|
|
||||||
if s.ipv4Addr == nil || s.ipv4Addr.String() != ipv4Addresses[0].String() {
|
|
||||||
scopedLogger := s.l.With().Str("ipv4", ipv4Addresses[0].String()).Logger()
|
|
||||||
if s.ipv4Addr != nil {
|
|
||||||
scopedLogger.Info().
|
|
||||||
Str("old_ipv4", s.ipv4Addr.String()).
|
|
||||||
Msg("IPv4 address changed")
|
|
||||||
} else {
|
|
||||||
scopedLogger.Info().Msg("IPv4 address found")
|
|
||||||
}
|
|
||||||
s.ipv4Addr = &ipv4Addresses[0]
|
|
||||||
changed = true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
s.ipv4Addresses = ipv4AddressesString
|
|
||||||
|
|
||||||
if s.config.IPv6Mode.String != "disabled" {
|
|
||||||
if ipv6LinkLocal != nil {
|
|
||||||
if s.ipv6LinkLocal == nil || s.ipv6LinkLocal.String() != ipv6LinkLocal.String() {
|
|
||||||
scopedLogger := s.l.With().Str("ipv6", ipv6LinkLocal.String()).Logger()
|
|
||||||
if s.ipv6LinkLocal != nil {
|
|
||||||
scopedLogger.Info().
|
|
||||||
Str("old_ipv6", s.ipv6LinkLocal.String()).
|
|
||||||
Msg("IPv6 link local address changed")
|
|
||||||
} else {
|
|
||||||
scopedLogger.Info().Msg("IPv6 link local address found")
|
|
||||||
}
|
|
||||||
s.ipv6LinkLocal = ipv6LinkLocal
|
|
||||||
changed = true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
s.ipv6Addresses = ipv6Addresses
|
|
||||||
|
|
||||||
if len(ipv6Addresses) > 0 {
|
|
||||||
// compare the addresses to see if there's a change
|
|
||||||
if s.ipv6Addr == nil || s.ipv6Addr.String() != ipv6Addresses[0].Address.String() {
|
|
||||||
scopedLogger := s.l.With().Str("ipv6", ipv6Addresses[0].Address.String()).Logger()
|
|
||||||
if s.ipv6Addr != nil {
|
|
||||||
scopedLogger.Info().
|
|
||||||
Str("old_ipv6", s.ipv6Addr.String()).
|
|
||||||
Msg("IPv6 address changed")
|
|
||||||
} else {
|
|
||||||
scopedLogger.Info().Msg("IPv6 address found")
|
|
||||||
}
|
|
||||||
s.ipv6Addr = &ipv6Addresses[0].Address
|
|
||||||
changed = true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// if it's the initial check, we'll set changed to false
|
|
||||||
initialCheck := !s.checked
|
|
||||||
if initialCheck {
|
|
||||||
s.checked = true
|
|
||||||
changed = false
|
|
||||||
if dhcpTargetState == DhcpTargetStateRenew {
|
|
||||||
// it's the initial check, we'll start the DHCP client
|
|
||||||
// dhcpTargetState = DhcpTargetStateStart
|
|
||||||
// TODO: manage DHCP client start/stop
|
|
||||||
dhcpTargetState = DhcpTargetStateDoNothing
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if initialCheck {
|
|
||||||
s.onInitialCheck(s)
|
|
||||||
} else if changed {
|
|
||||||
s.onStateChange(s)
|
|
||||||
}
|
|
||||||
|
|
||||||
return dhcpTargetState, nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func (s *NetworkInterfaceState) updateNtpServersFromLease(lease *udhcpc.Lease) error {
|
|
||||||
if lease != nil && len(lease.NTPServers) > 0 {
|
|
||||||
s.l.Info().Msg("lease found, updating DHCP NTP addresses")
|
|
||||||
s.ntpAddresses = make([]*net.IP, 0, len(lease.NTPServers))
|
|
||||||
|
|
||||||
for _, ntpServer := range lease.NTPServers {
|
|
||||||
if ntpServer != nil {
|
|
||||||
s.l.Info().IPAddr("ntp_server", ntpServer).Msg("NTP server found in lease")
|
|
||||||
s.ntpAddresses = append(s.ntpAddresses, &ntpServer)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
s.l.Info().Msg("no NTP servers found in lease")
|
|
||||||
s.ntpAddresses = make([]*net.IP, 0, len(s.config.TimeSyncNTPServers))
|
|
||||||
}
|
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func (s *NetworkInterfaceState) CheckAndUpdateDhcp() error {
|
|
||||||
dhcpTargetState, err := s.update()
|
|
||||||
if err != nil {
|
|
||||||
return logging.ErrorfL(s.l, "failed to update network state", err)
|
|
||||||
}
|
|
||||||
|
|
||||||
switch dhcpTargetState {
|
|
||||||
case DhcpTargetStateRenew:
|
|
||||||
s.l.Info().Msg("renewing DHCP lease")
|
|
||||||
_ = s.dhcpClient.Renew()
|
|
||||||
case DhcpTargetStateRelease:
|
|
||||||
s.l.Info().Msg("releasing DHCP lease")
|
|
||||||
_ = s.dhcpClient.Release()
|
|
||||||
case DhcpTargetStateStart:
|
|
||||||
s.l.Warn().Msg("dhcpTargetStateStart not implemented")
|
|
||||||
case DhcpTargetStateStop:
|
|
||||||
s.l.Warn().Msg("dhcpTargetStateStop not implemented")
|
|
||||||
}
|
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func (s *NetworkInterfaceState) onConfigChange(config *NetworkConfig) {
|
|
||||||
_ = s.setHostnameIfNotSame()
|
|
||||||
s.cbConfigChange(config)
|
|
||||||
}
|
|
||||||
|
|
@ -1,58 +0,0 @@
|
||||||
//go:build linux
|
|
||||||
|
|
||||||
package network
|
|
||||||
|
|
||||||
import (
|
|
||||||
"time"
|
|
||||||
|
|
||||||
"github.com/vishvananda/netlink"
|
|
||||||
"github.com/vishvananda/netlink/nl"
|
|
||||||
)
|
|
||||||
|
|
||||||
func (s *NetworkInterfaceState) HandleLinkUpdate(update netlink.LinkUpdate) {
|
|
||||||
if update.Link.Attrs().Name == s.interfaceName {
|
|
||||||
s.l.Info().Interface("update", update).Msg("interface link update received")
|
|
||||||
_ = s.CheckAndUpdateDhcp()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (s *NetworkInterfaceState) Run() error {
|
|
||||||
updates := make(chan netlink.LinkUpdate)
|
|
||||||
done := make(chan struct{})
|
|
||||||
|
|
||||||
if err := netlink.LinkSubscribe(updates, done); err != nil {
|
|
||||||
s.l.Warn().Err(err).Msg("failed to subscribe to link updates")
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
_ = s.setHostnameIfNotSame()
|
|
||||||
|
|
||||||
// run the dhcp client
|
|
||||||
go s.dhcpClient.Run() // nolint:errcheck
|
|
||||||
|
|
||||||
if err := s.CheckAndUpdateDhcp(); err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
go func() {
|
|
||||||
ticker := time.NewTicker(1 * time.Second)
|
|
||||||
defer ticker.Stop()
|
|
||||||
|
|
||||||
for {
|
|
||||||
select {
|
|
||||||
case update := <-updates:
|
|
||||||
s.HandleLinkUpdate(update)
|
|
||||||
case <-ticker.C:
|
|
||||||
_ = s.CheckAndUpdateDhcp()
|
|
||||||
case <-done:
|
|
||||||
return
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}()
|
|
||||||
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func netlinkAddrs(iface netlink.Link) ([]netlink.Addr, error) {
|
|
||||||
return netlink.AddrList(iface, nl.FAMILY_ALL)
|
|
||||||
}
|
|
||||||
|
|
@ -1,21 +0,0 @@
|
||||||
//go:build !linux
|
|
||||||
|
|
||||||
package network
|
|
||||||
|
|
||||||
import (
|
|
||||||
"fmt"
|
|
||||||
|
|
||||||
"github.com/vishvananda/netlink"
|
|
||||||
)
|
|
||||||
|
|
||||||
func (s *NetworkInterfaceState) HandleLinkUpdate() error {
|
|
||||||
return fmt.Errorf("not implemented")
|
|
||||||
}
|
|
||||||
|
|
||||||
func (s *NetworkInterfaceState) Run() error {
|
|
||||||
return fmt.Errorf("not implemented")
|
|
||||||
}
|
|
||||||
|
|
||||||
func netlinkAddrs(iface netlink.Link) ([]netlink.Addr, error) {
|
|
||||||
return nil, fmt.Errorf("not implemented")
|
|
||||||
}
|
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue